linux-kernel-test/net/mac80211
Johannes Berg 025e6be220 mac80211: fix deadlock with multiple interfaces
The locking around ieee80211_recalc_smps is
buggy -- it cannot acquire another interface's
mutex while the iflist mutex is held because
another code path could be holding the iface
mutex and trying to acquire the iflist mutex.

But the locking is also unnecessary, we only
check "ifmgd->associated" as a bool, and don't
use the pointer (in check_mgd_smps).

Reported-by: Ben Greear <greearb@candelatech.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-10-05 13:37:51 -04:00
..
aes_ccm.c mac80211: Don't squash error codes in key setup functions 2010-08-16 15:26:38 -04:00
aes_ccm.h
aes_cmac.c mac80211: Don't squash error codes in key setup functions 2010-08-16 15:26:38 -04:00
aes_cmac.h
agg-rx.c mac80211: AMPDU rx reorder timeout timer 2010-08-16 15:26:39 -04:00
agg-tx.c mac80211: update aggregation documentation 2010-06-14 15:39:28 -04:00
cfg.c mac80211: fix deadlock with multiple interfaces 2010-10-05 13:37:51 -04:00
cfg.h
chan.c cfg80211/mac80211: use lockdep_assert_held 2010-09-16 15:46:00 -04:00
debugfs_key.c mac80211: use cipher suite selectors 2010-08-16 16:45:11 -04:00
debugfs_key.h mac80211: 802.11w - Use BIP (AES-128-CMAC) 2009-01-29 16:00:03 -05:00
debugfs_netdev.c mac80211: Support multiple VIFS per AP in debugfs. 2010-09-27 15:57:43 -04:00
debugfs_netdev.h mac80211: reduce reliance on netdev 2009-12-21 18:38:52 -05:00
debugfs_sta.c mac80211: Support multiple VIFS per AP in debugfs. 2010-09-27 15:57:43 -04:00
debugfs_sta.h
debugfs.c mac80211: Support multiple VIFS per AP in debugfs. 2010-09-27 15:57:43 -04:00
debugfs.h net: Remove unnecessary returns from void function()s 2010-05-17 23:23:14 -07:00
driver-ops.h mac80211: add p2p device type support 2010-09-16 15:46:07 -04:00
driver-trace.c mac80211: fix sparse warnings/errors 2009-08-04 16:43:25 -04:00
driver-trace.h mac80211: add p2p device type support 2010-09-16 15:46:07 -04:00
event.c cfg80211: use proper allocation flags 2009-07-10 15:01:49 -04:00
ht.c mac80211: allow drivers to request SM PS mode change 2010-08-16 15:26:40 -04:00
ibss.c mac80211: Add WME information element for IBSS 2010-10-05 13:35:29 -04:00
ieee80211_i.h mac80211: fix deadlock with multiple interfaces 2010-10-05 13:37:51 -04:00
iface.c mac80211: fix for WDS interfaces 2010-10-05 13:35:25 -04:00
Kconfig mac82011: Allow selection of minstrel_ht as default rc algorithm 2010-06-30 15:00:53 -04:00
key.c cfg80211/mac80211: use lockdep_assert_held 2010-09-16 15:46:00 -04:00
key.h mac80211: allow vendor specific cipher suites 2010-08-27 13:27:07 -04:00
led.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
led.h
main.c mac80211: fix deadlock with multiple interfaces 2010-10-05 13:37:51 -04:00
Makefile mac80211: add the minstrel_ht rate control algorithm 2010-06-02 16:12:59 -04:00
mesh_hwmp.c mac80211: use common work struct 2010-06-14 15:38:17 -04:00
mesh_pathtbl.c mac80211: use common work struct 2010-06-14 15:38:17 -04:00
mesh_plink.c mac80211: avoid scheduling while atomic in mesh_rx_plink_frame 2010-06-24 15:42:30 -04:00
mesh.c mac80211: pull mgmt frame rx into rx handler 2010-06-14 15:39:26 -04:00
mesh.h mac80211: pull mgmt frame rx into rx handler 2010-06-14 15:39:26 -04:00
michael.c
michael.h
mlme.c mac80211: fix deadlock with multiple interfaces 2010-10-05 13:37:51 -04:00
offchannel.c mac80211: disable beacon monitor while going offchannel 2010-09-16 15:46:17 -04:00
pm.c mac80211: only cancel software-based scans on suspend 2010-09-01 16:12:28 -04:00
rate.c net/mac80211: Use wiphy_<level> 2010-08-25 14:33:17 -04:00
rate.h mac80211: add the minstrel_ht rate control algorithm 2010-06-02 16:12:59 -04:00
rc80211_minstrel_debugfs.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2010-04-11 14:53:53 -07:00
rc80211_minstrel_ht_debugfs.c minstrel_ht: move minstrel_mcs_groups declaration to header file 2010-06-24 15:42:18 -04:00
rc80211_minstrel_ht.c mac80211: freeing the wrong variable 2010-07-26 15:32:41 -04:00
rc80211_minstrel_ht.h minstrel_ht: move minstrel_mcs_groups declaration to header file 2010-06-24 15:42:18 -04:00
rc80211_minstrel.c minstrel: don't complain about feedback for unrequested rates 2010-07-26 15:09:04 -04:00
rc80211_minstrel.h minstrel: make the rate control ops reusable from another rc implementation 2010-03-10 17:44:23 -05:00
rc80211_pid_algo.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
rc80211_pid_debugfs.c net: mac80211: Fix a typo. 2010-08-16 15:26:40 -04:00
rc80211_pid.h
rx.c mac80211: fix for WDS interfaces 2010-10-05 13:35:25 -04:00
scan.c mac80211: Add DS Parameter Set into Probe Request on 2.4 GHz 2010-09-24 15:54:28 -04:00
spectmgmt.c mac80211: reduce reliance on netdev 2009-12-21 18:38:52 -05:00
sta_info.c mac80211/ath9k: Support AMPDU with multiple VIFs. 2010-09-27 15:57:45 -04:00
sta_info.h mac80211: AMPDU rx reorder timeout timer 2010-08-16 15:26:39 -04:00
status.c mac80211: distinct between max rates and the number of rates the hw can report 2010-10-05 13:35:28 -04:00
tkip.c mac80211: remove wep dependency 2010-07-08 16:35:50 -04:00
tkip.h mac80211: remove wep dependency 2010-07-08 16:35:50 -04:00
tx.c mac80211: fix for WDS interfaces 2010-10-05 13:35:25 -04:00
util.c mac80211: fix deadlock with multiple interfaces 2010-10-05 13:37:51 -04:00
wep.c mac80211: use cipher suite selectors 2010-08-16 16:45:11 -04:00
wep.h mac80211: remove wep dependency 2010-07-08 16:35:50 -04:00
wme.c mac80211: fix-up build breakage in 2.6.33 2010-01-06 15:35:49 -05:00
wme.h mac80211: fix skb buffering issue 2010-01-05 16:21:40 -05:00
work.c mac80211: per interface idle notification 2010-08-16 15:26:40 -04:00
wpa.c mac80211: move packet flags into packet 2010-09-27 15:57:54 -04:00
wpa.h