Re: The mac80211 softmac driver subsystem and handling of monitor interfaces

2 messages, 2 authors, 2016-03-16 · open the first message on its own page

Re: The mac80211 softmac driver subsystem and handling of monitor interfaces

From: Roger James <hidden>
Date: 2016-03-16 09:53:19

On 15 Mar 2016 13:08, Johannes Berg [off-list ref] wrote:
 >
 > On Tue, 2016-03-15 at 13:01 +0000, Roger James wrote:
 > >
 > > roger@dragon:~/linux-mainline$ find . -name "*.[ch]" -exec grep -n
 > > IEEE80211_HW_WANT_MONITOR_VIF {} \; -print
 > > 1851: * @IEEE80211_HW_WANT_MONITOR_VIF: The driver would like to be
 > > informed of
 > > 1928:    IEEE80211_HW_WANT_MONITOR_VIF,
 > > ./include/net/mac80211.h
 > >
 > > Is that what you meant. Nobody seems to be using it. Even mac80211
 > > itself. Or am I being stupid again :-)
 > >
 >
 > There are macros generating the checks and setting it, so you want to
 > grep without the IEEE80211_HW_ prefix
 >
 > johannes
 > --


Thanks guys I have got it now.

However that only accounts for the ath10k, iwldvm, and iwlmvm drivers. I 
realise that there is a lot of history here, but is what the remaining 
drivers doing in any way deprecated? Also can anyone give me a heads up 
on what the architectural difference is between hooking the monitor 
config change and and setting the want monitor flag. Is one way 
preferable to the other? Both seem to inform the driver that there is a 
transition between having no monitor virtual interfaces and having one 
or more.

Cheers,

Roger

Re: The mac80211 softmac driver subsystem and handling of monitor interfaces

From: Johannes Berg <johannes@sipsolutions.net>
Date: 2016-03-16 09:57:01

On Wed, 2016-03-16 at 09:53 +0000, Roger James wrote:
However that only accounts for the ath10k, iwldvm, and iwlmvm
drivers. I realise that there is a lot of history here, but is what
the remaining drivers doing in any way deprecated? Also can anyone
give me a heads up on what the architectural difference is between
hooking the monitor config change and and setting the want monitor
flag. Is one way preferable to the other? Both seem to inform the
driver that there is a transition between having no monitor virtual
interfaces and having one or more.
Not quite. CONF_MONITOR says "you have >0" monitor interfaces.
drv_add_interface(type=monitor) says "you have >0 monitor interfaces
and 0 others", so there's a difference.

Checking type==monitor in add_interface() *without*
setting WANT_MONITOR_VIF will never be true, since that cannot happen.
Not sure which drivers are doing that, and why they'd try to.

johannes
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help