[Bug 230498] Fatal trap 12: page fault while in kernel mode in sysctl_dumpentry from sysctl NET_RT_DUMP

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Wed Nov 28 09:10:47 UTC 2018


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=230498

--- Comment #21 from Andrey V. Elsukov <ae at FreeBSD.org> ---
(In reply to Franck Rousseau from comment #20)
> (In reply to commit-hook from comment #19)
> 
> As mentioned in comment #9 above, this patch breaks ppp, I get this when
> trying to re-open a second connection, this is the stage at which the crash
> occured before:
>     PPp ON localhost> Warning: iface add: ioctl(SIOCAIFADDR, 192.168.0.2 ->
> 192.168.0.1): File exists
>     Error: ipcp_InterfaceUp: unable to set ip address
> 
> Also, the patch in attachment #199450 [details] does not fix this specific
> problem, we still crash the kernel with the procedure described earlier in
> comment #12. As I said, I could narrow down the cause and find a fix for our
> use case, by using two different IPv4 addresses for Ethernet and PPP tun
> interfaces the kernel does not crash anymore.
> 
> About the fix, I suspect that internal structures are corrupted, so any kind
> of fix at this point will fail, for example with this patch on 11.2-p4 it
> looks like I keep getting these values after the crash:
> 
> (kgdb) print rt->rt_ifp->if_flags
> $3 = 3
> (kgdb) print rt->rt_ifp->if_index
> $4 = 63488
> 
> I will try to setup on-line debugging to watch internal structures and see
> if I can get an idea of what is breaking things up.

According to if_flags this patch doesn't affect your case, since if_flags =
(IFF_UP | IFF_BROADCAST). There is no IFF_DYING flag. Also, rtsock has several
places where it can panic due to the similar issue, but with different stack
trace (for example  https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=205678).
Are you sure that your panic is the same? Also if_index has unusual very large
value. Pleas, show your backtrace and show in context of noted frame the output
of "p *rt->rt_ifp" command.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-net mailing list