From: Feyd The attached patch loads rate_control module when initializing the rate control and no algorithm available. Signed-off-by: Jiri Benc diff -urNdp linux-2.6.15-4/net/ieee80211/ieee80211.c linux-2.6.15-4-rate_control/net/ieee80211/ieee80211.c --- linux-2.6.15-4/net/ieee80211/ieee80211.c 2006-01-13 12:44:42.000000000 +0100 +++ linux-2.6.15-4-rate_control/net/ieee80211/ieee80211.c 2006-01-13 12:40:23.000000000 +0100 @@ -4800,6 +4800,10 @@ void ieee80211_rate_control_unregister(s static int rate_control_initialize(struct ieee80211_local *local) { struct rate_control_algs *algs; + + if (!ieee80211_rate_ctrl_algs) + request_module("ieee80211_rate_control"); + for (algs = ieee80211_rate_ctrl_algs; algs; algs = algs->next) { local->rate_ctrl = algs->ops; local->rate_ctrl_priv = rate_control_alloc(local); diff -urNdp linux-2.6.15-4/net/ieee80211/rate_control.c linux-2.6.15-4-rate_control/net/ieee80211/rate_control.c --- linux-2.6.15-4/net/ieee80211/rate_control.c 2006-01-13 12:44:42.000000000 +0100 +++ linux-2.6.15-4-rate_control/net/ieee80211/rate_control.c 2006-01-13 12:39:31.000000000 +0100 @@ -30,6 +30,7 @@ #define RATE_CONTROL_INTERVAL (HZ / 20) #define RATE_CONTROL_MIN_TX 10 +MODULE_ALIAS("ieee80211_rate_control"); static void rate_control_rate_inc(struct ieee80211_local *local, struct sta_info *sta)