Networking panic on 12 - found the cause

Kristof Provost kp at
Tue Feb 12 20:13:40 UTC 2019

On 2019-02-12 13:54:21 (-0600), Eric van Gyzen <eric at> wrote:
> I see the same behavior on head (and stable/12).
> (kgdb) f
> #16 0xffffffff80ce5331 in ether_output_frame (ifp=0xfffff80003672800,
>     m=0xfffff8000c88b100) at /usr/src/sys/net/if_ethersubr.c:468
> 468			switch (pfil_run_hooks(V_link_pfil_head, &m, ifp, PFIL_OUT,
>    0xffffffff80ce5321 <+81>:	mov    %gs:0x0,%rax
>    0xffffffff80ce532a <+90>:	mov    0x500(%rax),%rax
> => 0xffffffff80ce5331 <+97>:	mov    0x28(%rax),%rax
> I think this is part of the V_link_pfil_head.  I'm not very familiar
> with vnet.  Does this need a CURVNET_SET(), maybe in garp_rexmit()?
Yes. I posted a proposed patch in

Basically we get called through a timer, so there's no vnet context. It
needs to be set, and then we can safely use any V_ variables.


More information about the freebsd-stable mailing list