]> git.baikalelectronics.ru Git - kernel.git/commit
wil6210: prevent access to vring_tx_data lock during its init
authorMaya Erez <qca_merez@qca.qualcomm.com>
Thu, 28 Jan 2016 17:24:02 +0000 (19:24 +0200)
committerKalle Valo <kvalo@qca.qualcomm.com>
Tue, 2 Feb 2016 12:05:56 +0000 (14:05 +0200)
commite6efef4bb480e832d348ad5dc9902b14ee8c0f94
tree43b7a57a8847b70b2d3703dcacb74befccc6d72b
parent90637f40667c6fddd3391be762fb0ce5c09eaf82
wil6210: prevent access to vring_tx_data lock during its init

wil_tx_vring locks the vring_tx_data lock before accessing the TX
vring to check if it is enabled and valid for use.
In case of quick disconnect / connect events for the same station,
spin_lock(&txdata->lock) can be called during the lock initialization
in the vring init function.
To prevent such a race, the TX vrings spin lock should be initialized
once during wil6210 driver initialization.

Signed-off-by: Maya Erez <qca_merez@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
drivers/net/wireless/ath/wil6210/main.c
drivers/net/wireless/ath/wil6210/txrx.c