mac80211: Fix race in checking AP status by sending null frame
authorSoumik Das <soumik.das@stericsson.com>
Sun, 20 May 2012 10:01:13 +0000 (15:31 +0530)
committerJohn W. Linville <linville@tuxdriver.com>
Fri, 25 May 2012 15:16:16 +0000 (11:16 -0400)
commit992e68bf2eb9f3319f098560b8d4a03aa52fd7b8
tree4def5ed9c6845d2a9f48f7f99a429fc89be79b9b
parentedb9bc9a1e08f54adfdb4f4d31bca5a15aeb8ef0
mac80211: Fix race in checking AP status by sending null frame

mac80211 tries to verify the existence of the current AP by
probing or sending a NULL frame in function
ieee80211_mgd_probe_ap_send. It 1st sends a null frame to the AP,
increments probe_send_count and waits for the ACK to the NULL
frame for a finite duration of time. At times, it happens that by
the time mac80211 gets to increment probe_send_count, the ACK for
the NULL frame transmitted has already been processed. This leads
to a race condition where mac80211 times out waiting for the ACK
for the NULL frame causing unnecessary disconnection with the AP.

Signed-off-by: Soumik Das <soumik.das@stericsson.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
net/mac80211/mlme.c