cvs commit: src/sys/compat/ndis ndis_var.h subr_ndis.c
src/sys/dev/if_ndis if_ndis.c if_ndisvar.h
Bill Paul
wpaul at FreeBSD.ORG
Wed Jul 7 13:25:24 PDT 2004
> This "new behaviour" is many many months old (assuming it's what I think it
> is). The if_init routine is only called by the 802.11 ioctl routine when you
> mark the interface up to avoid forcing a device initialization (and run of
> the 802.11 state machine) on every ioctl that's done before marking the if
> up. This is done based on the setting of the IFF_UP flag. In general IFF_UP
> means the interface is "ready for traffic to flow". A device should be
> capable of editing it's multicast state as soon as it marks itself
> IFF_RUNNING.
>
> Sam
Yeah, but the device can't mark itself IFF_RUNNING until you call
ifp->if_init(), and we don't call ifp->if_init() until the SIOCSIFFLAGS
ioctl, which happens _after_ the SIOCADDMULTI ioctl(s).
-Bill
More information about the cvs-all
mailing list