094c3c56d10ed3a2845fabac61e0a70ba5a51766
[openwrt.git] / package / madwifi / patches / 105-ratectl_attach.patch
1 Index: madwifi-ng-r2756-20071018/net80211/ieee80211_rate.c
2 ===================================================================
3 --- madwifi-ng-r2756-20071018.orig/net80211/ieee80211_rate.c    2007-10-24 06:20:16.729642648 +0200
4 +++ madwifi-ng-r2756-20071018/net80211/ieee80211_rate.c 2007-10-24 06:20:17.797703513 +0200
5 @@ -100,8 +100,18 @@
6                 ieee80211_load_module(buf);
7  
8         if (!ratectls[id].attach) {
9 -               printk(KERN_ERR "Error loading module \"%s\"\n", buf);
10 -               return NULL;
11 +               /* pick the first available rate control module */
12 +               printk(KERN_INFO "Rate control module \"%s\" not available\n", buf);
13 +               for (id = 0; id < IEEE80211_RATE_MAX; id++) {
14 +                       if (ratectls[id].attach)
15 +                               break;
16 +               }
17 +               if (!ratectls[id].attach) {
18 +                       printk(KERN_ERR "No rate control module available");
19 +                       return NULL;
20 +               } else {
21 +                       printk(KERN_INFO "Using \"%s\" instead.\n", module_names[id]);
22 +               }
23         }
24  
25         ctl = ratectls[id].attach(sc);