wil6210: fix subtle race in wil_tx_vring
authorVladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
Thu, 11 Jul 2013 15:03:41 +0000 (18:03 +0300)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 22 Jul 2013 20:54:38 +0000 (16:54 -0400)
commit6cdadd4dc7621e47739a84548e70713e157fa850
tree87a61bc13d0ccaad77fe2a21d6a25fbfe142de59
parentf88f113a54f02df62608ec263e8a3ff7e81cfce2
wil6210: fix subtle race in wil_tx_vring

Finish all SW context modifications prior to notifying hardware

It used to be race condition: if HW finish Tx and issue Tx completion IRQ very fast,
prior to SW context update in wil_tx_vring, Tx completion will mis-handle descriptor, as
SW part will have no skb pointer stored.

Signed-off-by: Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/ath/wil6210/txrx.c