[PATCH stable] Separate multicast configuration for mesh and wlan interfaces.
David Woodhouse
dwmw2 at infradead.org
Tue May 13 10:38:32 EDT 2008
On Tue, 2008-05-13 at 13:47 +0100, David Woodhouse wrote:
> On Fri, 2008-05-09 at 21:00 -0700, javier at cozybit.com wrote:
> > Each device maintains its own list of bound multicast addresses. Those lists
> > are merged and purged from duplicate addresses before being sent to firmware.
> > The maximum number of multicast addresses per virtual device has been cut in
> > half to ensure that the merged list can be accommodated by the hardware.
> >
> > Also, configuration flags are ORed before being sent to firmware, which
> > appears to be the least conflicting way of combining two virtual operating
> > modes into one for a single physical device.
> >
> > Based on patches from Ashish Shukla and David Woodhouse.
> >
> > Signed-off-by: Javier Cardona <javier at cozybit.com>
> > Tested by: Ricardo Carrano <carrano at ricardocarrano.com>
>
> Looks good, but please don't introduce any more of the 'u8' and 'u32'
> nonsense. If types are user-visible, we have to use the '__u32' form. If
> not, we might as well use the types that the C language provides. I've
> been slowly fixing that throughout the libertas driver as I've been
> rewriting it (which task is a bit on hold right now, I know...)
>
> On an SMP host, are you sure we can't end up setting the multicast list
> simultaneously on the two logical devices?
(A: No.)
And even without that, it doesn't seem to do the right thing. Set
IFF_PROMISC mode on one interface, then on the other, then clear it on
the first.... it should remain set in hardware. And AFAICT it doesn't.
I'll see if I can make it work....
--
dwmw2
More information about the libertas-dev
mailing list