Networking panic on 12 - found the cause
Kristof Provost
kp at freebsd.org
Tue Feb 12 20:13:40 UTC 2019
On 2019-02-12 13:54:21 (-0600), Eric van Gyzen <eric at vangyzen.net> 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
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=235699
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.
Regards,
Kristof
More information about the freebsd-current
mailing list