ath9k: Fix race in reset-work usage
authorRajkumar Manoharan <rmanohar@qca.qualcomm.com>
Tue, 17 Jul 2012 11:46:42 +0000 (17:16 +0530)
committerJohn W. Linville <linville@tuxdriver.com>
Tue, 17 Jul 2012 19:11:40 +0000 (15:11 -0400)
commit124b979baeb2d7a0593be8d392f43725578478c1
tree3b6f3d1d1915f3dba8f2405a8e79f1bf7958b22e
parent6dcc344469d60a1f0d72cc638967e8c83c6e166e
ath9k: Fix race in reset-work usage

Using work_pending() to defer certain operations when
a HW-reset work has been queued is racy since the check
would return false when the work item is actually in
execution. Use SC_OP_HW_RESET instead to fix this race.
Also, unify the reset debug statistics maintenance.

Signed-off-by: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
Signed-off-by: Sujith Manoharan <c_manoha@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/ath/ath9k/ath9k.h
drivers/net/wireless/ath/ath9k/beacon.c
drivers/net/wireless/ath/ath9k/debug.h
drivers/net/wireless/ath/ath9k/link.c
drivers/net/wireless/ath/ath9k/main.c
drivers/net/wireless/ath/ath9k/mci.c
drivers/net/wireless/ath/ath9k/xmit.c