android_kernel_xiaomi_sm8350/core/dp/txrx
Zhu Jianmin 9952304979 qcacld-3.0: Fix peer use after free in ol_txrx_clear_peer
When DUT P2P Go/SAP deauth ref STA, in race condition, scheduler
thread may try to clear peer data and drop pending rx packets
after peer freed in peer unmap handler in soft irq context,
use after free issue will happen.

Error log:
BUG: spinlock bad magic on CPU#1, scheduler_threa/28550
Unable to handle kernel paging request at virtual address
6b6b6b6b6b715b

Stackframe:
do_raw_spin_lock+0x34/0x154
_raw_spin_lock_bh+0x24/0x30
ol_txrx_clear_peer_internal+0x68/0xb0 [wlan]
ol_txrx_clear_peer+0x78/0xa0 [wlan]
hdd_softap_deregister_sta+0xd0/0x200 [wlan]
hdd_hostapd_sap_event_cb+0xca8/0x20b8 [wlan]

Change-Id: Ib8d133528f5ff22125218861206d241f96eaf0da
CRs-Fixed: 2247334
2018-06-14 11:46:54 -07:00
..
ipv6_defs.h qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_cfg.c qcacld-3.0: Fix typo "diable" 2018-05-12 04:30:06 -07:00
ol_ctrl_txrx_api.h qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_osif_txrx_api.h qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_rx_defrag.c qcacld-3.0: Featurize packet log 2018-06-06 23:49:08 -07:00
ol_rx_defrag.h qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_rx_fwd.c qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_rx_fwd.h qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_rx_pn.c qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_rx_pn.h qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_rx_reorder_timeout.c qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_rx_reorder_timeout.h qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_rx_reorder.c qcacld-3.0: Cleanup the unreachable code in htt_t2h_lp_msg_handler 2018-06-06 05:49:08 -07:00
ol_rx_reorder.h qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_rx.c qcacld-3.0: Configure log buffer size from Kbuild 2018-06-08 19:00:00 -07:00
ol_rx.h qcacld-3.0: Featurize packet log 2018-06-06 23:49:08 -07:00
ol_tx_classify.c qcacld-3.0: dp: Fix misspellings 2018-05-16 18:01:38 -07:00
ol_tx_classify.h qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_tx_desc.c qcacld-3.0: Flow control Resize implementation 2018-05-18 12:14:33 -07:00
ol_tx_desc.h qcacld-3.0: Flow control Resize implementation 2018-05-18 12:14:33 -07:00
ol_tx_ll_fastpath.c qcacld-3.0: Featurize fastpath feature 2018-06-07 15:47:45 -07:00
ol_tx_ll_legacy.c qcacld-3.0: Featurize fastpath feature 2018-06-07 15:47:45 -07:00
ol_tx_queue.c qcacld-3.0: Featurize Tx throttle feature 2018-06-14 02:56:34 -07:00
ol_tx_queue.h qcacld-3.0: Featurize Tx throttle feature 2018-06-14 02:56:34 -07:00
ol_tx_sched.c qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_tx_sched.h qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_tx_send.c qcacld-3.0: Separate out different flow control implementation 2018-06-14 02:56:32 -07:00
ol_tx_send.h qcacld-3.0: Separate out different flow control implementation 2018-06-14 02:56:32 -07:00
ol_tx_throttle.c qcacld-3.0: Featurize Tx throttle feature 2018-06-14 02:56:34 -07:00
ol_tx.c qcacld-3.0: Separate out different flow control implementation 2018-06-14 02:56:32 -07:00
ol_tx.h qcacld-3.0: Featurize fastpath feature 2018-06-07 15:47:45 -07:00
ol_txrx_encap.c qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_txrx_encap.h qcacld-3.0: dp: Fix misspellings 2018-05-16 18:01:38 -07:00
ol_txrx_event.c qcacld-3.0: Featurize packet log 2018-06-06 23:49:08 -07:00
ol_txrx_flow_control.c qcacld-3.0: Separate out different flow control implementation 2018-06-14 02:56:32 -07:00
ol_txrx_internal.h qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
ol_txrx_ipa.c qcacld-3.0: Featurize fastpath feature 2018-06-07 15:47:45 -07:00
ol_txrx_ipa.h qcacld-3.0: Add frag_header to support pre-wdi2.0 platform 2018-04-18 22:03:28 -07:00
ol_txrx_legacy_flow_control.c qcacld-3.0: Separate out different flow control implementation 2018-06-14 02:56:32 -07:00
ol_txrx_peer_find.c qcacld-3.0: Fix NULL pointer dereferencing of vdev during peer deletion 2018-06-08 00:36:59 -07:00
ol_txrx_peer_find.h qcacld-3.0: Fix NULL pointer dereferencing of peer due to race condition 2018-06-08 00:36:55 -07:00
ol_txrx_types.h qcacld-3.0: Fix NULL pointer dereferencing of peer due to race condition 2018-06-08 00:36:55 -07:00
ol_txrx.c qcacld-3.0: Fix peer use after free in ol_txrx_clear_peer 2018-06-14 11:46:54 -07:00
ol_txrx.h qcacld-3.0: Separate out different flow control implementation 2018-06-14 02:56:32 -07:00
txrx.h qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00
wdi_event_api.h qcacld-3.0: Featurize packet log 2018-06-06 23:49:08 -07:00
wdi_event.h qcacld-3.0: dp: Remove legacy markings 2018-04-24 14:48:38 -07:00