rpms/kernel/devel git-wireless-dev-rt2x00-locking-fix.patch, NONE, 1.1 git-iwlwifi.patch, 1.7, 1.8 git-wireless-dev.patch, 1.9, 1.10 kernel-2.6.spec, 1.3131, 1.3132

John W. Linville (linville) fedora-extras-commits at redhat.com
Fri May 4 01:35:14 UTC 2007


Author: linville

Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv18044

Modified Files:
	git-iwlwifi.patch git-wireless-dev.patch kernel-2.6.spec 
Added Files:
	git-wireless-dev-rt2x00-locking-fix.patch 
Log Message:
locking fix to benefit rt2x00

git-wireless-dev-rt2x00-locking-fix.patch:

--- NEW FILE git-wireless-dev-rt2x00-locking-fix.patch ---
diff --git a/net/mac80211/ieee80211.c b/net/mac80211/ieee80211.c
index 5ac7af8..18e5491 100644
--- a/net/mac80211/ieee80211.c
+++ b/net/mac80211/ieee80211.c
@@ -1814,12 +1814,19 @@ struct sk_buff * ieee80211_beacon_get(struct ieee80211_hw *hw, int if_id,
 	u8 *b_head, *b_tail;
 	int bh_len, bt_len;
 
-	bdev = dev_get_by_index(if_id);
+	/* rt2x00 calls us from hardirq context, so
+	 * open code an _irq version of dev_get_by_index
+	 * until we can find them another alternative...
+	 */
+	read_lock_irq(&dev_base_lock);
+	bdev = __dev_get_by_index(if_id);
 	if (bdev) {
+		dev_hold(bdev);
 		sdata = IEEE80211_DEV_TO_SUB_IF(bdev);
 		ap = &sdata->u.ap;
 		dev_put(bdev);
 	}
+	read_unlock_irq(&dev_base_lock);
 
 	if (!ap || sdata->type != IEEE80211_IF_TYPE_AP ||
 	    !ap->beacon_head) {

git-iwlwifi.patch:

Index: git-iwlwifi.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/git-iwlwifi.patch,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- git-iwlwifi.patch	4 May 2007 00:06:43 -0000	1.7
+++ git-iwlwifi.patch	4 May 2007 01:34:39 -0000	1.8
@@ -1,3 +1,7 @@
+rsync://www.intellinuxwireless.org/repos/iwlwifi.git
+
+commit 25af3bfe1eceacadf811b09c9db7155f7b88be85
+
 --- /dev/null	2007-04-17 21:17:54.747954992 -0400
 +++ linux-2.6.21.noarch/drivers/net/wireless/mac80211/iwlwifi/base.c	2007-05-03 16:58:50.000000000 -0400
 @@ -0,0 +1,12282 @@

git-wireless-dev.patch:

Index: git-wireless-dev.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/git-wireless-dev.patch,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- git-wireless-dev.patch	4 May 2007 00:06:43 -0000	1.9
+++ git-wireless-dev.patch	4 May 2007 01:34:39 -0000	1.10
@@ -1,3 +1,7 @@
+git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-dev.git/
+
+commit 580a2521f318461a9bf07004e77c34d750cb3285
+
 --- /dev/null	2007-04-17 21:17:54.747954992 -0400
 +++ linux-2.6.21.noarch/include/net/mac80211.h	2007-05-03 16:26:43.000000000 -0400
 @@ -0,0 +1,1060 @@


Index: kernel-2.6.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel-2.6.spec,v
retrieving revision 1.3131
retrieving revision 1.3132
diff -u -r1.3131 -r1.3132
--- kernel-2.6.spec	4 May 2007 00:06:43 -0000	1.3131
+++ kernel-2.6.spec	4 May 2007 01:34:39 -0000	1.3132
@@ -599,7 +599,8 @@
 # Wireless bits
 Patch2300: linux-2.6-wireless.patch
 Patch2301: git-wireless-dev.patch
-Patch2302: git-iwlwifi.patch
+Patch2302: git-wireless-dev-rt2x00-locking-fix.patch
+Patch2303: git-iwlwifi.patch
 
 # Assorted dyntick/clock/timer fixes.
 Patch2400: linux-2.6-highres-dyntick-avoid-xtime-lock-contention.patch
@@ -1350,8 +1351,10 @@
 %patch2300 -p1
 # Add the new wireless stack and drivers from wireless-dev
 %patch2301 -p1
-# ...and the iwlwifi driver from Intel
+# ...and a locking fix to benefit rt2x00
 %patch2302 -p1
+# ...and the iwlwifi driver from Intel
+%patch2303 -p1
 
 # Assorted dyntick/clock/timer fixes.
 %patch2400 -p1
@@ -2334,6 +2337,9 @@
 
 %changelog
 * Thu May 03 2007 John W. Linville <linville at redhat.com>
+- Add a locking fix to benefit rt2x00
+
+* Thu May 03 2007 John W. Linville <linville at redhat.com>
 - Update git-wireless-dev.patch (fix lockdep spew, zd1211rw-mac80211 fixes)
 - Remove linux-2.6-zd1211rw-mac80211-queue-limit.patch (obsolete)
 - Update git-iwlwifi.patch (signal level fixes, iwlwifi -> iwl3945 name change)




More information about the fedora-extras-commits mailing list