Search Linux Wireless

Re: p54spi - mesh mode summary

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> That's odd.
>
> P54_FILTER_TYPE_TRANSPARENT should be already set for mesh mode.
>
> The reason is that mesh mode will automatically set the FIF_OTHER_BSS flag,
> (file:net/mac80211/iface.c func:ieee80211_open lines:251 f)
>
> which in turn ORs the P54_FILTER_TYPE_TRANSPARENT flag to the mode...
> (file:drivers/net/wireless/p54/p54common.c func: p54_setup_mac lines: 1691
> f)
>
> So, there's no need to OR a flag that gets ORed anyway?

Found the problem, that's my fault at merge of omap and wireless-testing 
trees:
p54_configure_filter that I tested with has the following code:

        *total_flags &= FIF_PROMISC_IN_BSS |
                        FIF_OTHER_BSS |
                        (*total_flags & FIF_PROMISC_IN_BSS) ?
                                FIF_FCSFAIL : 0;

which does not what it is intended to. '|' operator has higher precedence 
than '? :'
thus it is equivalent to *total_flags &= FIF_FCSFAIL; which never yields 
neither
FIF_PROMISC_IN_BSS nor FIF_OTHER_BSS.

Current wireless-testing head has 

        *total_flags &= FIF_PROMISC_IN_BSS |
                        FIF_OTHER_BSS;

at this place, which work fine.

-- 
Thanks.
-- Max
--
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

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux