tech-net archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kernel diagnostic assertion "llt != NULL" failed



On Wed, Feb 7, 2018 at 11:46 PM, Manuel Bouyer <bouyer%antioche.eu.org@localhost> wrote:
> Hello,
> on a netbsd-8 system, running with a netbsd-5 userland so the ipv4 stack
> was probably not fully initialised (some network-related commands fails
> with "Protocol not supported"), I got at shutdown:
> panic: kernel diagnostic assertion "llt != NULL" failed: file "/dsk/l1/misc/bouyer/netbsdtsar/netbsd-8/src/sys/net/if_llatbl.c", line 427 llt is NULL
>
> unfortunably I couldn't get a stack trace.
> Changing this KASSERT to
>        if (llt == NULL) {
>                printf("llt is NULL\n");
>                return;
>        }
>
> allows for a clean shutdown in my case.
> Is this correct ?

It also works but the following fix might be better.
Could you try the diff?

Thanks,
  ozaki-r


diff --git a/sys/netinet/in.c b/sys/netinet/in.c
index 09e091b6774..1ace5e88fb6 100644
--- a/sys/netinet/in.c
+++ b/sys/netinet/in.c
@@ -1539,7 +1539,9 @@ in_if_down(struct ifnet *ifp)
 {

        in_if_link_down(ifp);
+#if NARP > 0
        lltable_purge_entries(LLTABLE(ifp));
+#endif
 }

 void


Home | Main Index | Thread Index | Old Index