panic: negative refcount after dhclient during boot
Ermal Luçi
eri at freebsd.org
Wed Jul 8 15:09:14 UTC 2015
On Tue, Jul 7, 2015 at 6:11 PM, Rink Springer <rink at freebsd.org> wrote:
> Hi eri@,
>
> On Mon, Jul 06, 2015 at 09:21:54AM +0200, Rink Springer wrote:
> > On Sun, Jul 05, 2015 at 12:45:25PM -0700, Garrett Cooper wrote:
> > > On Jul 5, 2015, at 8:16, Rink Springer <rink at freebsd.org> wrote:
> > >
> > > > Hi all,
> > > >
> > > > On my FreeBSD/mips machine (it's a RouterStation Pro), I get the
> > > > following panic during boot:
> > >
> > > ?
> > >
> > > > This reproduces 100%. I'm at:
> > > >
> > > > FreeBSD 11.0-CURRENT #0 r285099: Sun Jul 5 12:31:47 CEST 2015
> > > >
> > > > Let me know what I can do to help track this down; I only started
> > > > getting the panic after 'gateway_enable=YES' in /etc/rc.conf
> > > >
> > > > The kernel has INVARIANTS but no WITNESS. Config available at
> > > > http://rink.nu/tmp/FRINGE - boot log at
> http://rink.nu/tmp/fringe.txt
> > >
> > > Please file a bug!
> >
> > Done, 201371.
>
> After a suggestion by adrian@, it seems reverting r285051 fixes the
> problem for me (i.e. the system boots now)
>
>
Can you please try with this patch and let me know if it fixes the issue.
Index: sys/netinet/ip_output.c
===================================================================
--- sys/netinet/ip_output.c (revision 285271)
+++ sys/netinet/ip_output.c (working copy)
@@ -660,6 +660,13 @@
done:
if (ro == &iproute)
RO_RTFREE(ro);
+ else if (rte == NULL)
+ /*
+ * If the caller supplied a route but somehow the reference
+ * to it has been released need to prevent the caller
+ * calling RTFREE on it again.
+ */
+ ro->ro_rt = NULL;
if (have_ia_ref)
ifa_free(&ia->ia_ifa);
return (error);
> Regards,
> Rink
>
--
Ermal
More information about the freebsd-current
mailing list