Search Linux Wireless

Re: [PATCH 06/12] Add support for monitor mode

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

 



On Sunday 09 March 2008 17:10:46 Kalle Valo wrote:
> Michael Buesch <mb@xxxxxxxxx> writes:
> 
> >> +#define AT76_SUPPORTED_FILTERS FIF_PROMISC_IN_BSS
> >
> > See my recent patch to zd1211rw:
> > [PATCH] zd1211rw: Fix beacon filter flags thinko
> > I think this thinko also applies here.
> >
> > A driver does not support a flag, if it can _not_ _provide_
> > a specific frame. (so in case it always filters it)
> > Not the other way around. So if it always
> > provides a specific type of frames, it _does_ support the filter flag.
> 
> Thanks for looking at this. 
> 
> I have to admit that I didn't undertstand the filter flags logic at
> that time, but I think I understand it now. I hope this is right:
> 
> 
> static void at76_op_configure_filter(struct ieee80211_hw *hw,
> 				  unsigned int changed_flags,
> 				  unsigned int *total_flags, int mc_count,
> 				  struct dev_addr_list *mc_list)
> {
> 	struct at76_priv *priv = hw->priv;
> 
> 	at76_dbg(DBG_MAC80211, "%s(): changed_flags=0x%08x "
> 		 "total_flags=0x%08x mc_count=%d",
> 		 __func__, changed_flags, *total_flags, mc_count);
> 
> 	*total_flags &= FIF_PROMISC_IN_BSS;

So your driver can not pass control frames and beacons in normal operation
to the stack?

> 
> 	if (changed_flags & FIF_PROMISC_IN_BSS) {
> 		/* FIXME: access to priv->promisc should be protected with
> 		 * priv->mtx, but it's impossible because this function
> 		 * needs to be atomic */
> 		priv->promisc = *total_flags & FIF_PROMISC_IN_BSS;
> 		queue_work(hw->workqueue, &priv->work_set_promisc);
> 	}
> 
> }
> 
> 



-- 
Greetings Michael.
--
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