in the compat-wireless-3.6.-rc7-1 source code, I'm talking about line 88 in net/wireless/chan.c which returns -EBUSY. Note that I have a single interface which is in station mode, not monitoring mode. There is no interface in true monitoring mode. On Fri, Nov 2, 2012 at 3:57 PM, George Nychis <gnychis@xxxxxxxxx> wrote: > The issue seems to be that in all of these drivers, wdev is NULL when > you hit set_channel() in the older and newer driver. In the old > driver, cfg8011_set_freq() is called with wdev has NULL and it still > calls rdev->ops->set_channel(....) which succeeds. > > However, in the new driver cfg80211_set_monitor_channel() is called > since wdev was NULL, but now instead of still calling > rdev->ops->set_channel() or rdev->ops->set_monitor_channel() it > returns -EBUSY because if(!cfg80211_has_monitors_only(rdev)) returns > true. Is this really the expected behavior, or is meant to only > return -EBUSY if there are only monitors, rather? (i.e., > if(cfg80211_has_monitors_only(rdev)) ) > > > On Fri, Nov 2, 2012 at 2:46 PM, George Nychis <gnychis@xxxxxxxxx> wrote: >> I'm still trying to track down the cause for this, but starting in >> compat-wireless-3.6 (including early RCs and the most recent 3.6.2), >> rt2x00 devices register with the wrong iftype. They register as >> NL80211_IFTYPE_MONITOR instead of NL80211_IFTYPE_STATION, for example. >> I checked cw-3.5, 3.4, 3.2, and 3.1 and none of these versions have >> this bug. >> >> This breaks the ability to set channels, etc. Hoping to track down >> the bug, but wanted to report it in the meantime and see if anyone >> else has run in to it. >> >> - George -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html