Search Linux Wireless

Re: bug in compat-wireless 3.6, rt2x00 iftype is wrong

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This fixes my issue, but I don't know if it's the ideal patch.

On Fri, Nov 2, 2012 at 3:59 PM, George Nychis <gnychis@xxxxxxxxx> wrote:
> 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

Attachment: rt2x00_setchan_fix.patch
Description: Binary data


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux