No description
  • C 98.2%
  • Assembly 1%
  • Makefile 0.3%
  • Shell 0.2%
  • Python 0.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Mohit Khanna 0696eef313 qcacld-3.0: Fix RX data, peer unmap race condition
During peer unmap handler, while the peer is being deleted, there is a
possible race condition if the OL Rx thread is processing RX packets
and accesses the peer structure after its contents have been nulled.

Remove race condition by -
* Flush all RX packets in ol_txrx_peer_detach function which happens
  before peer unmap event is received from firmware
* Avoid use of peer data structures (for example peer->local_id)
  outside of peer->info_lock in ol_rx_data_cb function. Use cached
  local copies of peer data structures instead

Crash signature due to the race condition:

wlan: [0:E :CDF] TXRX: Deleting peer ffffffc012fd13c0
(02:a0:c6:81:f8:c0)
Unable to handle kernel paging request at virtual address 400000001
pgd = ffffffc0018b4000
[400000001] *pgd=0000000000000000, *pud=0000000000000000
Internal error: Oops: 96000005 [#1] PREEMPT SMP
Modules linked in: wlan(O) [last unloaded: wlan]
CPU: 1 PID: 29506 Comm: cds_ol_rx_threa Tainted: G        W  O
3.18.20-g5222edf-13780-g2219ed2 #1
Hardware name: Qualcomm Technologies, Inc. MSM 8996 v3 + PMI8996 CD (DT)
task: ffffffc09350d400 ti: ffffffc0556a4000 task.ti: ffffffc0556a4000
PC is at hdd_rx_packet_cbk+0x84/0x224 [wlan]
LR is at hdd_rx_packet_cbk+0x48/0x224 [wlan]
pc : [<ffffffbffdd55b5c>] lr : [<ffffffbffdd55b20>] pstate: 80000145

Change-Id: I4b32313024ec214f33dcdcfc401aadfa8af9d692
CRs-Fixed: 1002081
2016-04-21 20:23:50 -07:00
config qcacld-3.0: Revert "qcacld-3.0: Enable LRO" 2016-04-20 22:24:48 -07:00
core qcacld-3.0: Fix RX data, peer unmap race condition 2016-04-21 20:23:50 -07:00
target/inc qcacld-3.0: CL 1483121 - update fw common interface files 2016-04-20 22:22:20 -07:00
uapi/linux qcacld-3.0: Cleanup fastpath changes 2016-04-17 18:16:51 -07:00
Android.mk qcacld-3.0: Correct common project header files path 2016-04-21 11:08:11 -07:00
Kbuild qcacld-3.0: Enable MSM_PLATFORM for Kernel 4.4 2016-04-20 22:24:22 -07:00
Kconfig qcacld-3.0: Enable compile time enable/disable for roaming 2016-04-17 18:10:33 -07:00
Makefile qcacld-3.0: Initial snapshot of ihelium wlan driver 2015-11-17 17:52:53 -08:00
README.txt Initial readme for WLAN Host Driver for iHelium 2015-04-06 11:45:23 -07:00

This is CNSS WLAN Host Driver for products starting from iHelium