On Wed, 2008-11-05 at 08:09 +0800, Zhu Yi wrote: > On Thu, Oct 30, 2008 at 05:18:03PM +0800, Johannes Berg wrote: > > Reinette Chatre wrote: > > > From: Zhu, Yi <yi.zhu@xxxxxxxxx> > > > > > > mac80211 supports multiple virtual interfaces for a single device. For > > > example, a managed interface (wlan0) and a monitor interface (mon0) can > > > exist at the same time. Thus priv->iw_mode is not sufficient to track > > > the wireless mode any more. > > > > This example is not correct, mac80211 will only support multiple virtual > > interfaces when the driver allows this via add_interface (which I don't > > think yours does) and it will *never* tell you about monitor interfaces at > > all except by way of configuring the filter differently. > > We do support add_interface in iwlagn. But it works correctly only if > the second one is a monitor interface. But like I said, add_interface is _never_ called with _MONITOR. > > Therefore, all the "is monitor" checks in iwlwifi are pretty pointless > > unless you really want to have differing behaviour between "monitor + > > something" and "just monitor"? > > In case of BSS + monitor, we need to tell firmware about the > association status. This differs with pure montior mode. You can only distinguish those by the filter flags, and should probably base the firmware knowledge on that. We want to be able to pull up "plain" monitor interfaces w/o any special flags that show things exactly as they'd go to mac80211 if the monitor interface was not present. I suspect you should look at the FIF_OTHER_BSS flag? johannes
Attachment:
signature.asc
Description: This is a digitally signed message part