On 22/09/16(Thu) 10:17, David Hill wrote: > On Thu, Sep 22, 2016 at 04:09:37PM +0200, Sebastien Marie wrote: > > Hi, > > > > After rebuilding kernel under i386, I experimented splassert. > > > > Here is a shorten backtrace handwritten: > > > > splassert: sorwakeup: want 64 have 0 > > Starting stack trace... > > splassertfail(...) > > splassertfail(...) > > splassertcheck(...) > > sorwakeup(...) > > route_input(...) > > rt_ifmsg(...) > > ifioctl(...) > > sys_ioctl(...) > > syscall(...) > > --- syscall (number 959474688) --- > > > > (I could rewrite the complete version on request as I shoted pictures > > and it is reproductible easily). > > > > It occurs at boottime during network starting. > > > > My configuration is simple: > > $ cat /etc/hostname.bce0 > > dhcp > > rtsol > > > > The splassert is trigged during `rtsol' processing, as removing it makes > > the laptop to boot. > > > > Below the dmesg (while running without ipv6). > > -- > > Sebastien Marie > > I hit this too. Is this the proper fix?
It is, I just committed it, thanks! > Index: if.c > =================================================================== > RCS file: /cvs/src/sys/net/if.c,v > retrieving revision 1.449 > diff -u -p -r1.449 if.c > --- if.c 20 Sep 2016 16:14:43 -0000 1.449 > +++ if.c 21 Sep 2016 16:51:39 -0000 > @@ -1898,7 +1898,9 @@ ifioctl(struct socket *so, u_long cmd, c > > ifp->if_xflags = (ifp->if_xflags & IFXF_CANTCHANGE) | > (ifr->ifr_flags & ~IFXF_CANTCHANGE); > + s = splsoftnet(); > rt_ifmsg(ifp); > + splx(s); > break; > > case SIOCSIFMETRIC: >
