2010-01-13 17:56:51

by Abhijeet Kolekar

[permalink] [raw]
Subject: [PATCH v2] cfg80211: fix channel setting for wext

Patch fixes the bug at
http://bugzilla.intellinuxwireless.org/show_bug.cgi?id=2139

Currently we cannot set the channel using wext extension
if we have already associated and disconnected. As
cfg80211_mgd_wext_siwfreq will not switch the channel if ssid is set.
This fixes it by clearing the ssid.
Following is the sequence which it tries to fix.
modprobe iwlagn
iwconfig wlan0 essid ""
ifconfig wlan0 down
iwconfig wlan0 chan X

wext is marked as deprecate.If we use nl80211 we can easily play with
setting the channel.

Signed-off-by: Abhijeet Kolekar <[email protected]>
Acked-by: Samuel Ortiz <[email protected]>
---
v2: Changed mac80211 to cfg80211

net/wireless/sme.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/net/wireless/sme.c b/net/wireless/sme.c
index 2333d78..dc0fc49 100644
--- a/net/wireless/sme.c
+++ b/net/wireless/sme.c
@@ -655,6 +655,7 @@ void __cfg80211_disconnected(struct net_device *dev, const u8 *ie,
memset(&wrqu, 0, sizeof(wrqu));
wrqu.ap_addr.sa_family = ARPHRD_ETHER;
wireless_send_event(dev, SIOCGIWAP, &wrqu, NULL);
+ wdev->wext.connect.ssid_len = 0;
#endif
}

--
1.6.3.3



2010-01-13 18:48:07

by Abhijeet Kolekar

[permalink] [raw]
Subject: Re: [PATCH v2] cfg80211: fix channel setting for wext

On Wed, 2010-01-13 at 10:04 -0800, Luis R. Rodriguez wrote:
> On Wed, Jan 13, 2010 at 10:04 AM, Abhijeet Kolekar
> <[email protected]> wrote:
> > Patch fixes the bug at
> > http://bugzilla.intellinuxwireless.org/show_bug.cgi?id=2139
> >
> > Currently we cannot set the channel using wext extension
> > if we have already associated and disconnected. As
> > cfg80211_mgd_wext_siwfreq will not switch the channel if ssid is set.
> > This fixes it by clearing the ssid.
> > Following is the sequence which it tries to fix.
> > modprobe iwlagn
> > iwconfig wlan0 essid ""
> > ifconfig wlan0 down
> > iwconfig wlan0 chan X
> >
> > wext is marked as deprecate.If we use nl80211 we can easily play with
> > setting the channel.
> >
> > Signed-off-by: Abhijeet Kolekar <[email protected]>
> > Acked-by: Samuel Ortiz <[email protected]>
>
> Is this a stable fix as well?
>
Yes it can be a candidate for stable. I will resubmit.

Thanks
Abhijeet
> Luis



2010-01-13 18:11:18

by Luis R. Rodriguez

[permalink] [raw]
Subject: Re: [PATCH v2] cfg80211: fix channel setting for wext

On Wed, Jan 13, 2010 at 10:04 AM, Abhijeet Kolekar
<[email protected]> wrote:
> Patch fixes the bug at
> http://bugzilla.intellinuxwireless.org/show_bug.cgi?id=2139
>
> Currently we cannot set the channel using wext extension
> if we have already associated and disconnected. As
> cfg80211_mgd_wext_siwfreq will not switch the channel if ssid is set.
> This fixes it by clearing the ssid.
> Following is the sequence which it tries to fix.
> modprobe iwlagn
> iwconfig wlan0 essid ""
> ifconfig wlan0 down
> iwconfig wlan0 chan X
>
> wext is marked as deprecate.If we use nl80211 we can easily play with
> setting the channel.
>
> Signed-off-by: Abhijeet Kolekar <[email protected]>
> Acked-by: Samuel Ortiz <[email protected]>

Is this a stable fix as well?

Luis