* [PATCH 1/2] mac80211: fix remain_off_channel regression
@ 2011-10-20 17:05 Eliad Peller
2011-10-20 17:05 ` [PATCH 2/2] mac80211: config hw when going back on-channel Eliad Peller
2011-10-24 11:27 ` [PATCH 1/2] mac80211: fix remain_off_channel regression Stanislaw Gruszka
0 siblings, 2 replies; 3+ messages in thread
From: Eliad Peller @ 2011-10-20 17:05 UTC (permalink / raw)
To: Johannes Berg; +Cc: linux-wireless
The offchannel code is currently broken - we should
remain_off_channel if the work was started, and
the work's channel and channel_type are the same
as local->tmp_channel and local->tmp_channel_type.
However, if wk->chan_type and local->tmp_channel_type
coexist (e.g. have the same channel type), we won't
remain_off_channel.
This behavior was introduced by commit da2fd1f
("mac80211: Allow work items to use existing
channel type.")
Tested-by: Ben Greear <greearb@candelatech.com>
Signed-off-by: Eliad Peller <eliad@wizery.com>
---
net/mac80211/work.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/net/mac80211/work.c b/net/mac80211/work.c
index af374fa..b4de5dc 100644
--- a/net/mac80211/work.c
+++ b/net/mac80211/work.c
@@ -1084,8 +1084,8 @@ static void ieee80211_work_work(struct work_struct *work)
continue;
if (wk->chan != local->tmp_channel)
continue;
- if (ieee80211_work_ct_coexists(wk->chan_type,
- local->tmp_channel_type))
+ if (!ieee80211_work_ct_coexists(wk->chan_type,
+ local->tmp_channel_type))
continue;
remain_off_channel = true;
}
--
1.7.6.401.g6a319
^ permalink raw reply related [flat|nested] 3+ messages in thread* [PATCH 2/2] mac80211: config hw when going back on-channel
2011-10-20 17:05 [PATCH 1/2] mac80211: fix remain_off_channel regression Eliad Peller
@ 2011-10-20 17:05 ` Eliad Peller
2011-10-24 11:27 ` [PATCH 1/2] mac80211: fix remain_off_channel regression Stanislaw Gruszka
1 sibling, 0 replies; 3+ messages in thread
From: Eliad Peller @ 2011-10-20 17:05 UTC (permalink / raw)
To: Johannes Berg; +Cc: linux-wireless
When going back on-channel, we should reconfigure
the hw iff the hardware is not already configured
to the operational channel.
Signed-off-by: Eliad Peller <eliad@wizery.com>
---
net/mac80211/work.c | 3 +--
1 files changed, 1 insertions(+), 2 deletions(-)
diff --git a/net/mac80211/work.c b/net/mac80211/work.c
index b4de5dc..92ad8d6 100644
--- a/net/mac80211/work.c
+++ b/net/mac80211/work.c
@@ -1091,7 +1091,6 @@ static void ieee80211_work_work(struct work_struct *work)
}
if (!remain_off_channel && local->tmp_channel) {
- bool on_oper_chan = ieee80211_cfg_on_oper_channel(local);
local->tmp_channel = NULL;
/* If tmp_channel wasn't operating channel, then
* we need to go back on-channel.
@@ -1101,7 +1100,7 @@ static void ieee80211_work_work(struct work_struct *work)
* we still need to do a hardware config. Currently,
* we cannot be here while scanning, however.
*/
- if (ieee80211_cfg_on_oper_channel(local) && !on_oper_chan)
+ if (!ieee80211_cfg_on_oper_channel(local))
ieee80211_hw_config(local, 0);
/* At the least, we need to disable offchannel_ps,
--
1.7.6.401.g6a319
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [PATCH 1/2] mac80211: fix remain_off_channel regression
2011-10-20 17:05 [PATCH 1/2] mac80211: fix remain_off_channel regression Eliad Peller
2011-10-20 17:05 ` [PATCH 2/2] mac80211: config hw when going back on-channel Eliad Peller
@ 2011-10-24 11:27 ` Stanislaw Gruszka
1 sibling, 0 replies; 3+ messages in thread
From: Stanislaw Gruszka @ 2011-10-24 11:27 UTC (permalink / raw)
To: Eliad Peller, John W. Linville; +Cc: Johannes Berg, linux-wireless
On Thu, Oct 20, 2011 at 07:05:49PM +0200, Eliad Peller wrote:
> The offchannel code is currently broken - we should
> remain_off_channel if the work was started, and
> the work's channel and channel_type are the same
> as local->tmp_channel and local->tmp_channel_type.
>
> However, if wk->chan_type and local->tmp_channel_type
> coexist (e.g. have the same channel type), we won't
> remain_off_channel.
>
> This behavior was introduced by commit da2fd1f
> ("mac80211: Allow work items to use existing
> channel type.")
>
> Tested-by: Ben Greear <greearb@candelatech.com>
> Signed-off-by: Eliad Peller <eliad@wizery.com>
Both patches fixes serious bugs, should be marked
Cc: stable@kernel.org # 2.6.39+
I believe there is no need to repost, once informed
John would take care of process patches properly.
Stanislaw
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2011-10-24 11:27 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-10-20 17:05 [PATCH 1/2] mac80211: fix remain_off_channel regression Eliad Peller
2011-10-20 17:05 ` [PATCH 2/2] mac80211: config hw when going back on-channel Eliad Peller
2011-10-24 11:27 ` [PATCH 1/2] mac80211: fix remain_off_channel regression Stanislaw Gruszka
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.