35 lines
1.6 KiB
Diff
35 lines
1.6 KiB
Diff
|
|
||
|
Your current kernels configuration (.config and linux/autoconf.h)
|
||
|
are always respected when compiling external modules. Because
|
||
|
of this if you are using an old kernel which preferred the
|
||
|
PID rate control algorithm we cannot force it to use minstrel
|
||
|
instead. Minstrel is now the default rate control algorithm
|
||
|
and we want you to use it. To let you use it we redefine here
|
||
|
the CONFIG_MAC80211_RC_DEFAULT to CONFIG_COMPAT_MAC80211_RC_DEFAULT
|
||
|
and define CONFIG_COMPAT_MAC80211_RC_DEFAULT on config.mk.
|
||
|
Through the compat autoconf we then get it also defined there
|
||
|
at compilation time.
|
||
|
|
||
|
--- a/net/mac80211/rate.c
|
||
|
+++ b/net/mac80211/rate.c
|
||
|
@@ -24,7 +24,7 @@ struct rate_control_alg {
|
||
|
static LIST_HEAD(rate_ctrl_algs);
|
||
|
static DEFINE_MUTEX(rate_ctrl_mutex);
|
||
|
|
||
|
-static char *ieee80211_default_rc_algo = CONFIG_MAC80211_RC_DEFAULT;
|
||
|
+static char *ieee80211_default_rc_algo = CONFIG_COMPAT_MAC80211_RC_DEFAULT;
|
||
|
module_param(ieee80211_default_rc_algo, charp, 0644);
|
||
|
MODULE_PARM_DESC(ieee80211_default_rc_algo,
|
||
|
"Default rate control algorithm for mac80211 to use");
|
||
|
@@ -120,8 +120,8 @@ ieee80211_rate_control_ops_get(const cha
|
||
|
ops = ieee80211_try_rate_control_ops_get(ieee80211_default_rc_algo);
|
||
|
|
||
|
/* try built-in one if specific alg requested but not found */
|
||
|
- if (!ops && strlen(CONFIG_MAC80211_RC_DEFAULT))
|
||
|
- ops = ieee80211_try_rate_control_ops_get(CONFIG_MAC80211_RC_DEFAULT);
|
||
|
+ if (!ops && strlen(CONFIG_COMPAT_MAC80211_RC_DEFAULT))
|
||
|
+ ops = ieee80211_try_rate_control_ops_get(CONFIG_COMPAT_MAC80211_RC_DEFAULT);
|
||
|
kparam_unblock_sysfs_write(ieee80211_default_rc_algo);
|
||
|
|
||
|
return ops;
|