kern/110284: [if_ethersubr] Invalid Assumption in SIOCSIFADDR
in ether_ioctl()
John Baldwin
jhb at freebsd.org
Fri May 18 14:27:52 UTC 2012
On Wednesday, May 16, 2012 10:37:36 pm Devon H. O'Dell wrote:
> 2012/5/16 Devon H. O'Dell <devon.odell at gmail.com>:
> > Hi Gavin, freebsd-net,
> >
> > --- if_ethersubr.c 2011-09-22 20:51:37.000000000 -0400
> > +++ /home/dho/if_ethersubr.c 2012-05-16 22:27:17.000000000 -0400
> > @@ -1146,7 +1146,9 @@
> > switch (ifa->ifa_addr->sa_family) {
> > #ifdef INET
> > case AF_INET:
> > - ifp->if_init(ifp->if_softc); /* before
arpwhohas */
> > + if (ifp->if_flags & IFF_RUNNING == 0) {
>
> That's probably ((ifp->if_flags & IFF_RUNNING) == 0). Also, I'm not on
> freebsd-net or cc'ed on the PR afaik, so please cc me explicitly on
> followups if more information is needed.
You mean if_drv_flags and IF_DRV_RUNNING.
It's a bit fugly, yes, and the new check would be racey.
--
John Baldwin
More information about the freebsd-net
mailing list