re(4) stalls, crashes(supposed patch exists?)

Sean Bruno sbruno at
Wed May 21 19:43:18 UTC 2014

The Bytemark Site of is experiencing periodic stalls and
crashes on the machines being used as routers.  I have heard of a
rumored patch that exists "somewhere" to resolve this, but when I asked
at BSDCan, I got no takers.  Any thoughts?

FreeBSD 11.0-CURRENT FreeBSD 11.0-CURRENT #0
r265337: Sun May  4 22:05:35 UTC 2014
peter at  amd64

re0 at pci0:3:0:0: class=0x020000 card=0x85051043 chip=0x816810ec rev=0x09
    vendor     = 'Realtek Semiconductor Co., Ltd.'
    device     = 'RTL8111/8168B PCI Express Gigabit Ethernet controller'
    class      = network
    subclass   = ethernet

re0: <RealTek 8168/8111 B/C/CP/D/DP/E/F/G PCIe Gigabit Ethernet> port
0xe800-0xe8ff mem 0xfdfff000-0xfdffffff,0xfdff8000-0xfdffbfff irq 18 at
device 0.0 on pci3
re0: Using 1 MSI-X message
re0: turning off MSI enable bit.
re0: Chip rev. 0x48000000
re0: MAC rev. 0x00000000
miibus0: <MII bus> on re0
rgephy0: <RTL8169S/8110S/8211 1000BASE-T media interface> PHY 1 on
rgephy0:  none, 10baseT, 10baseT-FDX, 10baseT-FDX-flow, 100baseTX,
100baseTX-FDX, 100baseTX-FDX-flow, 1000baseT-FDX, 1000baseT-FDX-master,
1000baseT-FDX-flow, 1000baseT-FDX-flow-master, auto, auto-flow
re0: Ethernet address: 08:60:6e:d7:31:d2

panic: _mtx_lock_sleep: recursed on non-recursive mutex pf_idhash
@ /usr/src/sys/netpfil/pf/pf.c:922

cpuid = 0
KDB: stack backtrace:
db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame
kdb_backtrace() at kdb_backtrace+0x39/frame 0xfffffe00003c5e20
vpanic() at vpanic+0x126/frame 0xfffffe00003c5e60
kassert_panic() at kassert_panic+0x136/frame 0xfffffe00003c5ed0
__mtx_lock_sleep() at __mtx_lock_sleep+0x369/frame 0xfffffe00003c5f50
__mtx_lock_flags() at __mtx_lock_flags+0xf5/frame 0xfffffe00003c5fa0
pf_state_insert() at pf_state_insert+0x37d/frame 0xfffffe00003c6040
pf_test_rule() at pf_test_rule+0x26ce/frame 0xfffffe00003c6520
pf_test6() at pf_test6+0x11ef/frame 0xfffffe00003c66c0
pf_check6_in() at pf_check6_in+0x36/frame 0xfffffe00003c66e0
pfil_run_hooks() at pfil_run_hooks+0x93/frame 0xfffffe00003c6770
ip6_input() at ip6_input+0x619/frame 0xfffffe00003c6950
netisr_dispatch_src() at netisr_dispatch_src+0x90/frame
ether_demux() at ether_demux+0x13c/frame 0xfffffe00003c69f0
ether_nh_input() at ether_nh_input+0x32a/frame 0xfffffe00003c6a20
netisr_dispatch_src() at netisr_dispatch_src+0x90/frame
re_rxeof() at re_rxeof+0x539/frame 0xfffffe00003c6af0
re_intr_msi() at re_intr_msi+0xcc/frame 0xfffffe00003c6b30
intr_event_execute_handlers() at intr_event_execute_handlers+0x93/frame
ithread_loop() at ithread_loop+0xa6/frame 0xfffffe00003c6bb0
fork_exit() at fork_exit+0x84/frame 0xfffffe00003c6bf0
fork_trampoline() at fork_trampoline+0xe/frame 0xfffffe00003c6bf0
--- trap 0, rip = 0, rsp = 0xfffffe00003c6cb0, rbp = 0 ---
KDB: enter: panic


Kernel page fault with the following non-sleepable locks held:
shared rw ipsec request (ipsec request) r = 0 (0xfffff80005dea160)
locked @ /usr/src/sys/netipsec/ipsec_output.c:802
KDB: stack backtrace:
db_trace_self_wrapper() at db_trace_self_wrapper+0x2a/frame
kdb_backtrace() at kdb_backtrace+0x37/frame 0xfffffe011ad61000
_witness_debugger() at _witness_debugger+0x2c/frame 0xfffffe011ad61020
witness_warn() at witness_warn+0x2d4/frame 0xfffffe011ad61160
trap_pfault() at trap_pfault+0x6a/frame 0xfffffe011ad611f0
trap() at trap+0x41a/frame 0xfffffe011ad613f0
calltrap() at calltrap+0x8/frame 0xfffffe011ad613f0
--- trap 0xc, rip = 0xffffffff806d5ada, rsp = 0xfffffe011ad614b0, rbp =
0xfffffe011ad61580 ---
ipsec6_output_tunnel() at ipsec6_output_tunnel+0xda/frame
ip6_forward() at ip6_forward+0x69a/frame 0xfffffe011ad61710
ip6_input() at ip6_input+0xd06/frame 0xfffffe011ad618a0
netisr_dispatch_src() at netisr_dispatch_src+0x15d/frame
ether_demux() at ether_demux+0x1a9/frame 0xfffffe011ad61940
ether_nh_input() at ether_nh_input+0x209/frame 0xfffffe011ad61980
netisr_dispatch_src() at netisr_dispatch_src+0x15d/frame
re_rxeof() at re_rxeof+0x4a9/frame 0xfffffe011ad61a60
re_int_task() at re_int_task+0x1ea/frame 0xfffffe011ad61aa0
taskqueue_run_locked() at taskqueue_run_locked+0x93/frame
taskqueue_run() at taskqueue_run+0x3d/frame 0xfffffe011ad61b20
intr_event_execute_handlers() at intr_event_execute_handlers+0x6a/frame
ithread_loop() at ithread_loop+0x9b/frame 0xfffffe011ad61ba0
fork_exit() at fork_exit+0x139/frame 0xfffffe011ad61bf0
fork_trampoline() at fork_trampoline+0xe/frame 0xfffffe011ad61bf0
--- trap 0, rip = 0, rsp = 0xfffffe011ad61cb0, rbp = 0 ---

More information about the freebsd-net mailing list