Răsfoiți Sursa

[PATCH] mac80211: fix set_channel regression

Adam Baker reported that the prism2 ioctl removal changed behaviour
in that now the selection order was the other way around as before.
New API is planned but not done yet, so for now just use the first
matching channel in any mode as was previous behaviour with an unset
next_mode.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Acked-by: Michael Wu <flamingice@sourmilk.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Johannes Berg 18 ani în urmă
părinte
comite
58a9ac17ed
1 a modificat fișierele cu 4 adăugiri și 1 ștergeri
  1. 4 1
      net/mac80211/ieee80211_ioctl.c

+ 4 - 1
net/mac80211/ieee80211_ioctl.c

@@ -306,9 +306,12 @@ int ieee80211_set_channel(struct ieee80211_local *local, int channel, int freq)
 			    ((chan->chan == channel) || (chan->freq == freq))) {
 				local->oper_channel = chan;
 				local->oper_hw_mode = mode;
-				set++;
+				set = 1;
+				break;
 			}
 		}
+		if (set)
+			break;
 	}
 
 	if (set) {