[Bug 238870] sys.netpfil.pf.names.names and sys.netpfil.pf.synproxy.synproxy cause panic

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Thu Aug 22 12:01:39 UTC 2019


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

--- Comment #14 from Kristof Provost <kp at freebsd.org> ---
(In reply to Hans Petter Selasky from comment #13)
Good point, but it's also not trivial to add this, because if_detach_internal()
does an epoch_wait_preempt() on the net epoch.

Simply adding NET_EPOCH_ENTER/EXIT around the loop produces this panic:

panic: epoch_wait_preempt() called in the middle of an epoch section of the
same epoch
cpuid = 5
time = 1566475161
KDB: stack backtrace:
db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe0091dc65a0
vpanic() at vpanic+0x19d/frame 0xfffffe0091dc65f0
panic() at panic+0x43/frame 0xfffffe0091dc6650
epoch_wait_preempt() at epoch_wait_preempt+0x29c/frame 0xfffffe0091dc66b0
if_detach_internal() at if_detach_internal+0x1a6/frame 0xfffffe0091dc6730
if_vmove() at if_vmove+0x4b/frame 0xfffffe0091dc6780
vnet_if_return() at vnet_if_return+0x58/frame 0xfffffe0091dc67c0
vnet_destroy() at vnet_destroy+0x124/frame 0xfffffe0091dc67f0
prison_deref() at prison_deref+0x29d/frame 0xfffffe0091dc6830
sys_jail_remove() at sys_jail_remove+0x28f/frame 0xfffffe0091dc6880
amd64_syscall() at amd64_syscall+0x2bb/frame 0xfffffe0091dc69b0
fast_syscall_common() at fast_syscall_common+0x101/frame 0xfffffe0091dc69b0
--- syscall (508, FreeBSD ELF64, sys_jail_remove), rip = 0x80031712a, rsp =
0x7fffffffe848, rbp = 0x7fffffffe8d0 ---
KDB: enter: panic
[ thread pid 1174 tid 100507 ]
Stopped at      kdb_enter+0x3b: movq    $0,kdb_why
db>

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


More information about the freebsd-testing mailing list