Re: bridge/igb panic: sleepq_add: td 0xfffffe01bbce5300 to sleep on wchan 0xffffffff8157d9a0 with sleeping prohibited

From: Gleb Smirnoff <glebius_at_freebsd.org>
Date: Fri, 11 Sep 2020 10:06:01 -0700
  Kristof,

can you please take a look? IMHO, the problem is that with r360345
the bridge_ioctl() is fully covered by epoch. IMHO, should be either
more fine grained covered, or use internal locking, because some of
the code downstream (driver ioctls) may sleep.

On Fri, Sep 11, 2020 at 10:47:41AM +0300, xtouqh_at_mm.st wrote:
x> Updating from latest CURRENT snapshot 
x> (FreeBSD-13.0-CURRENT-amd64-20200910-1544934ffb2) to r365620 broke the 
x> bridges with igb (I350-T2) for me.  Booting to kernel.old and/or 
x> commenting the entries in rc.conf helps.
x> 
x> rc.conf:
x> ----
x> cloned_interfaces="bridge0 bridge1 tap0 tap1 tap2 tap3"
x> ifconfig_em0="inet ..."
x> ifconfig_igb0="up"
x> ifconfig_igb1="up"
x> ifconfig_bridge0="addm igb0 addm tap0 addm tap1"
x> ifconfig_bridge1="addm igb1 addm tap2 addm tap3"
x> ----
x> 
x> NICs (em0 is on-board, igb0/igb1 is addon I350-T2 card):
x> ----
x> em0: <Intel(R) PRO/1000 Network Connection> mem 0x92d00000-0x92d1ffff at 
x> device 31.6 numa-domain 0 on pci0
x> em0: Using 1024 TX descriptors and 1024 RX descriptors
x> em0: Using an MSI interrupt
x> em0: Ethernet address: e0:d5:5e:6c:aa:36
x> em0: netmap queues/slots: TX 1/1024, RX 1/1024
x> igb0: <Intel(R) PRO/1000 PCI-Express Network Driver> mem 
x> 0xfbb00000-0xfbbfffff,0xfbc84000-0xfbc87fff at device 0.0 numa-domain 0 
x> on pci16
x> igb0: Using 1024 TX descriptors and 1024 RX descriptors
x> igb0: Using 8 RX queues 8 TX queues
x> igb0: Using MSI-X interrupts with 9 vectors
x> igb0: Ethernet address: a0:36:9f:0a:cf:42
x> igb0: netmap queues/slots: TX 8/1024, RX 8/1024
x> igb1: <Intel(R) PRO/1000 PCI-Express Network Driver> mem 
x> 0xfba00000-0xfbafffff,0xfbc80000-0xfbc83fff at device 0.1 numa-domain 0 
x> on pci16
x> igb1: Using 1024 TX descriptors and 1024 RX descriptors
x> igb1: Using 8 RX queues 8 TX queues
x> igb1: Using MSI-X interrupts with 9 vectors
x> igb1: Ethernet address: a0:36:9f:0a:cf:43
x> igb1: netmap queues/slots: TX 8/1024, RX 8/1024
x> ----
x> 
x> panic:
x> ----
x> panic: sleepq_add: td 0xfffffe01bbce5300 to sleep on wchan 
x> 0xffffffff8157d9a0 with sleeping prohibited
x> cpuid = 16
x> time = 1599808542
x> KDB: stack backtrace:
x> db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 
x> 0xfffffe01ba658c40
x> vpanic() at vpanic+0x182/frame 0xfffffe01ba658c90
x> panic() at panic+0x43/frame 0xfffffe01ba658cf0
x> sleepq_add() at sleepq_add+0x359/frame 0xfffffe01ba658d40
x> _sleep() at _sleep+0x20c/frame 0xfffffe01ba658df0
x> pause_sbt() at pause_sbt+0xfe/frame 0xfffffe01ba658e20
x> e1000_reset_hw_82580() at e1000_reset_hw_82580+0x1c8/frame 
x> 0xfffffe01ba658e60
x> em_if_stop() at em_if_stop+0x1b/frame 0xfffffe01ba658e80
x> iflib_stop() at iflib_stop+0xbd/frame 0xfffffe01ba658ed0
x> iflib_if_ioctl() at iflib_if_ioctl+0x397/frame 0xfffffe01ba658f40
x> bridge_mutecaps() at bridge_mutecaps+0x145/frame 0xfffffe01ba658fb0
x> bridge_ioctl_add() at bridge_ioctl_add+0x468/frame 0xfffffe01ba659000
x> bridge_ioctl() at bridge_ioctl+0x32b/frame 0xfffffe01ba6590d0
x> in_control() at in_control+0x322/frame 0xfffffe01ba659180
x> ifioctl() at ifioctl+0x3e8/frame 0xfffffe01ba659250
x> kern_ioctl() at kern_ioctl+0x28e/frame 0xfffffe01ba6592c0
x> sys_ioctl() at sys_ioctl+0x127/frame 0xfffffe01ba659390
x> amd64_syscall() at amd64_syscall+0x140/frame 0xfffffe01ba6594b0
x> fast_syscall_common() at fast_syscall_common+0xf8/frame 0xfffffe01ba6594b0
x> --- syscall (54, FreeBSD ELF64, sys_ioctl), rip = 0x8004b4aba, rsp = 
x> 0x7fffffffe2b8, rbp = 0x7fffffffe360 ---
x> Uptime: 14s
x> Dumping 3794 out of 97961 
x> MB:..1%..11%..21%..31%..41%..51%..61%..71%..81%..91%
x> ----
x> _______________________________________________
x> freebsd-current_at_freebsd.org mailing list
x> https://lists.freebsd.org/mailman/listinfo/freebsd-current
x> To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org"

-- 
Gleb Smirnoff
Received on Fri Sep 11 2020 - 17:25:06 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:25 UTC