[kernel] r9480 - dists/trunk/linux-2.6/debian/patches/features/all

Maximilian Attems maks at alioth.debian.org
Sun Sep 9 17:13:58 UTC 2007


Author: maks
Date: Sun Sep  9 17:13:58 2007
New Revision: 9480

Log:
add the patch iwlwifi patch itself


Added:
   dists/trunk/linux-2.6/debian/patches/features/all/iwlwifi-rmmod-fix.patch

Added: dists/trunk/linux-2.6/debian/patches/features/all/iwlwifi-rmmod-fix.patch
==============================================================================
--- (empty file)
+++ dists/trunk/linux-2.6/debian/patches/features/all/iwlwifi-rmmod-fix.patch	Sun Sep  9 17:13:58 2007
@@ -0,0 +1,72 @@
+From: Tomas Winkler <tomas.winkler at intel.com>
+Date: Tue, 4 Sep 2007 18:20:30 +0000 (+0300)
+Subject: iwlwifi: fix rate scale unloading
+X-Git-Url: http://intellinuxwireless.org/repos/?p=iwlwifi.git;a=commitdiff;h=0c4826cdf9adbda1af908aa5fec22ac2277f2e53
+
+iwlwifi: fix rate scale unloading
+
+This patch fixes unloading of iwl-*-rs rate scaling algorithms.
+Current rate_scal requires to be all functions to be implemented
+in other words it doesn't check if ops->X is not null.
+Since we are implementing dummy alloc we should also implement free and
+clear function.
+
+Signed-off-by: Tomas Winkler <tomas.winkler at intel.com>
+Signed-off-by: Zhu Yi <yi.zhu at intel.com>
+---
+
+--- a/origin/iwl-3945-rs.c
++++ b/origin/iwl-3945-rs.c
+@@ -359,6 +359,17 @@ static void *rs_alloc(struct ieee80211_l
+ 	return local->hw.priv;
+ }
+ 
++/* rate scale requires free function to be implmented */
++static void rs_free(void *priv)
++{
++	return;
++}
++static void rs_clear(void *priv)
++{
++	return;
++}
++
++
+ static void *rs_alloc_sta(void *priv, gfp_t gfp)
+ {
+ 	struct iwl_rate_scale_priv *rs_priv;
+@@ -804,9 +815,9 @@ static struct rate_control_ops rs_ops = 
+ 	.tx_status = rs_tx_status,
+ 	.get_rate = rs_get_rate,
+ 	.rate_init = rs_rate_init,
+-	.clear = NULL,
++	.clear = rs_clear,
+ 	.alloc = rs_alloc,
+-	.free = NULL,
++	.free = rs_free,
+ 	.alloc_sta = rs_alloc_sta,
+ 	.free_sta = rs_free_sta,
+ };
+--- a/origin/iwl-4965-rs.c
++++ b/origin/iwl-4965-rs.c
+@@ -1967,6 +1967,11 @@ static void *rs_alloc(struct ieee80211_l
+ {
+ 	return local->hw.priv;
+ }
++/* rate scale requires free function to be implemented */
++static void rs_free(void *priv_rate)
++{
++	return;
++}
+ 
+ static void rs_clear(void *priv_rate)
+ {
+@@ -2003,7 +2008,7 @@ static struct rate_control_ops rs_ops = 
+ 	.rate_init = rs_rate_init,
+ 	.clear = rs_clear,
+ 	.alloc = rs_alloc,
+-	.free = NULL,
++	.free = rs_free,
+ 	.alloc_sta = rs_alloc_sta,
+ 	.free_sta = rs_free_sta,
+ };



More information about the Kernel-svn-changes mailing list