On Wed, 2010-09-15 at 17:26 +0530, Rajkumar Manoharan wrote: > ath9k is not receiving frames in monitor mode after the commit 34d4bc. > The problem is mac80211 sets IEEE80211_CONF_IDLE in __ieee80211_recalc_idle > at ieee80211_do_open. Due to this, ath9k disables the radio. > > The above said commit sets SDATA_STATE_RUNNING after __ieee80211_recalc_idle. > IMHO avoiding __ieee80211_recalc_idle in monitor mode looks better > than moving SDATA_STATE_RUNNING set before __ieee80211_recalc_idle. > > Signed-off-by: Rajkumar Manoharan <rmanoharan@xxxxxxxxxxx> > Signed-off-by: Vasanthakumar Thiagarajan <vasanth@xxxxxxxxxxx> > --- > net/mac80211/iface.c | 8 +++++--- > 1 files changed, 5 insertions(+), 3 deletions(-) > > diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c > index c1cc200..2bec319 100644 > --- a/net/mac80211/iface.c > +++ b/net/mac80211/iface.c > @@ -310,9 +310,11 @@ static int ieee80211_do_open(struct net_device *dev, bool coming_up) > if (sdata->flags & IEEE80211_SDATA_PROMISC) > atomic_inc(&local->iff_promiscs); > > - mutex_lock(&local->mtx); > - hw_reconf_flags |= __ieee80211_recalc_idle(local); > - mutex_unlock(&local->mtx); > + if (sdata->vif.type != NL80211_IFTYPE_MONITOR) { > + mutex_lock(&local->mtx); > + hw_reconf_flags |= __ieee80211_recalc_idle(local); > + mutex_unlock(&local->mtx); > + } Hmm, that doesn't seem right, wouldn't it be idle to start with? johannes -- 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