1
0
Fork 0
alistair23-linux/net/wireless
Johannes Berg dee8a9732e cfg80211: don't request disconnect if not connected
Neil Brown reports that with libertas, my recent cfg80211
SME changes in commit ceca7b7121
("cfg80211: separate internal SME implementation") broke
libertas suspend because it we now asked it to disconnect
while already disconnected.

The problematic change is in cfg80211_disconnect() as it
previously checked the SME state and now calls the driver
disconnect operation unconditionally.

Fix this by checking if there's a current_bss indicating
a connection, and do nothing if not.

Reported-and-tested-by: Neil Brown <neilb@suse.de>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2013-08-14 14:00:19 +02:00
..
.gitignore wireless: support internal statically compiled regulatory database 2009-12-21 18:56:10 -05:00
Kconfig lib80211: hide Kconfig symbol 2012-11-16 14:29:09 -05:00
Makefile cfg80211: add tracing to rdev-ops 2012-10-18 10:53:37 +02:00
ap.c cfg80211: move exported event functions into nl80211 2013-03-06 16:35:46 +01:00
chan.c nl80211/cfg80211: add 5 and 10 MHz defines and wiphy flag 2013-06-18 16:06:50 +02:00
core.c cfg80211: fix P2P GO interface teardown 2013-07-31 21:18:17 +02:00
core.h cfg80211: separate internal SME implementation 2013-06-04 13:03:11 +02:00
db.txt wireless: support internal statically compiled regulatory database 2009-12-21 18:56:10 -05:00
debugfs.c cfg80211: vastly simplify locking 2013-05-25 00:02:15 +02:00
debugfs.h cfg80211/mac80211: use debugfs_remove_recursive 2009-10-30 16:49:18 -04:00
ethtool.c ethtool: fix drvinfo strings set in drivers 2013-01-06 21:06:31 -08:00
ethtool.h net/wireless/ethtool.h: drop unnecessary include of linux/ethtool.h 2009-10-07 16:39:49 -04:00
genregdb.awk cfg80211: relicense reg.c reg.h and genregdb.awk to ISC 2012-01-04 14:30:41 -05:00
ibss.c cfg80211: separate internal SME implementation 2013-06-04 13:03:11 +02:00
lib80211.c lib80211: remove exports for functions not called by other modules 2011-08-09 15:42:36 -04:00
lib80211_crypt_ccmp.c hostap: Don't use create_proc_read_entry() 2013-04-29 15:41:56 -04:00
lib80211_crypt_tkip.c hostap: Don't use create_proc_read_entry() 2013-04-29 15:41:56 -04:00
lib80211_crypt_wep.c hostap: Don't use create_proc_read_entry() 2013-04-29 15:41:56 -04:00
mesh.c {nl,mac,cfg}80211: Allow user to configure basic rates for mesh 2013-06-11 14:24:36 +02:00
mlme.c cfg80211: hold BSS over association process 2013-06-19 18:55:39 +02:00
nl80211.c nl80211: nl80211hdr_put() doesn't return an ERR_PTR 2013-08-14 14:00:12 +02:00
nl80211.h cfg80211: move exported event functions into nl80211 2013-03-06 16:35:46 +01:00
radiotap.c wireless: add radiotap A-MPDU status field 2012-08-20 13:53:09 +02:00
rdev-ops.h cfg80211: introduce critical protocol indication from user-space 2013-04-22 15:48:00 +02:00
reg.c regulatory: use correct regulatory initiator on wiphy register 2013-07-25 09:52:46 +02:00
reg.h regulatory: use RCU to protect global and wiphy regdomains 2013-01-03 13:01:29 +01:00
regdb.h cfg80211: relicense reg.c reg.h and genregdb.awk to ISC 2012-01-04 14:30:41 -05:00
scan.c wireless: add comments about bss refcounting 2013-06-24 15:54:45 +02:00
sme.c cfg80211: don't request disconnect if not connected 2013-08-14 14:00:19 +02:00
sysfs.c cfg80211: fix compilation warning for cfg80211_leave_all() 2013-06-24 15:57:32 +02:00
sysfs.h
trace.c cfg80211: add tracing to rdev-ops 2012-10-18 10:53:37 +02:00
trace.h cfg80211/mac80211: clean up cfg80211 SME APIs 2013-06-04 13:03:10 +02:00
util.c cfg80211: remove some locked wrappers from sme API 2013-05-25 00:02:22 +02:00
wext-compat.c cfg80211: vastly simplify locking 2013-05-25 00:02:15 +02:00
wext-compat.h cfg80211: remove unused wext handler exports 2011-08-08 14:26:29 -04:00
wext-core.c wext: include wireless event id when it has a size problem 2012-09-05 16:12:44 +02:00
wext-priv.c wext: fix potential private ioctl memory content leak 2010-09-20 13:41:40 -04:00
wext-proc.c net: proc: change proc_net_remove to remove_proc_entry 2013-02-18 14:53:08 -05:00
wext-sme.c cfg80211: separate internal SME implementation 2013-06-04 13:03:11 +02:00
wext-spy.c wireless: Convert compare_ether_addr to ether_addr_equal 2012-05-09 20:49:19 -04:00