Re: [PATCH] cfg80211: fix regression on beacon world roaming feature

Johannes Berg
2009-07-31T16:11:57Z

[-- Attachment #1: Type: text/plain, Size: 1405 bytes --]

On Fri, 2009-07-31 at 09:03 -0700, Luis R. Rodriguez wrote:

> > I did mean those devices. Adding a reg notifier hook for iwlwifi seems a
> > little odd, given that cfg80211 is supposed to always honour the flags
> > (which it copies to orig_flags for that purpose).
> >
> > But I don't see why ath couldn't do this:
> >
> > * do _not_ set the passive/no-ibss flags in flags (orig_flags)
>
> That's up to cfg80211 through the custom regdomain, so yes, and in
> fact we can WARN if these are set.

Ah, that seems a little heavy-handed :)

> > * in the reg notifier, always set the passive/no-ibss flag into 'flags'
> > unless a beacon was noticed on that channel.
>
> That's fine too, we still need a fix for 2.6.31. Do you have any
> thoughts on that?

Not really, tbh. Seems like all you'd have to do is remove the
IEEE80211_CHAN_PASSIVE_SCAN/IEEE80211_CHAN_NO_IBSS flags from your
channel registration, and set them in ath_reg_apply_beaconing_flags and
ath_reg_apply_active_scan_flags, changing the polarity?

I mean, right now you tell cfg80211 you don't support it, and then try
to support it anyhow. Instead, you could tell cfg80211 you _do_ support
it, and then not support them depending on the notifier? It seems like
that should work and not break cfg80211's assumption that you can never
ever support _more_ than registration flags (orig_flags).

johannes

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 801 bytes --]