Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 22 Mar 2013 12:53:28 -0700
From:      Navdeep Parhar <np@FreeBSD.org>
To:        Garrett Cooper <yaneurabeya@gmail.com>
Cc:        hhash@isilon.com, freebsd-net@FreeBSD.org
Subject:   Re: panic: 'Sleeping on "t4slptst" with the following non-sleepable locks held' when using cxgbe+lagg
Message-ID:  <514CB6B8.3050207@FreeBSD.org>
In-Reply-To: <CAGHfRMBXaqHpoQ5QMs6XNb1dJx5OHoO8LhdJpud_hSTWGn1Q4g@mail.gmail.com>
References:  <CAGHfRMBXaqHpoQ5QMs6XNb1dJx5OHoO8LhdJpud_hSTWGn1Q4g@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Thanks for the bug report.  I added this "t4 sleep test" sleep exactly
for this purpose -- to catch cases where cxgbe(4) thinks it can sleep
but it really can't.

There is no need for a core, the stack has all the info I need.

Regards,
Navdeep

On 03/22/13 12:43, Garrett Cooper wrote:
>     Unfortunately I don't have swap setup on this machine (not sure
> why... I'll remedy that soon). Basically I was tcpdump'ing the
> interface that was doing intense NFS I/O at the same time, and I ran
> into this crash with cxgbe+lagg. Sources are a bit stale (~1.5 months
> old).
> Thanks,
> -Garrett
> 
> PS Please CC me as I don't receive emails from -net@.
> 
> db> x/s version
> version:        FreeBSD 10.0-CURRENT #2 r+0db561c: Wed Feb  6 22:21:51
> PST 2013\012
> root@wf158.west.isilon.com:/usr/obj/usr/src/sys/ISI-GENERIC\012
> db> show msgbuf
> msgbufp = 0xfffffe01bfffffb8
> magic = 63062, size = 98232, r= 290850, w = 293687, ptr =
> 0xfffffe01bffe8000, cksum= 8071666
> Sleeping on "t4slptst" with the following non-sleepable locks held:
> exclusive rw if_lagg rwlock (if_lagg rwlock) r = 0
> (0xfffffe01a66b3608) locked @
> /usr/src/sys/modules/if_lagg/../../net/if_lagg.c:1065
> KDB: stack backtrace:
> db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xffffff8498e26490
> kdb_backtrace() at kdb_backtrace+0x39/frame 0xffffff8498e26540
> witness_warn() at witness_warn+0x4a8/frame 0xffffff8498e26600
> _sleep() at _sleep+0x6c/frame 0xffffff8498e26690
> begin_synchronized_op() at begin_synchronized_op+0x38/frame 0xffffff8498e266f0
> cxgbe_ioctl() at cxgbe_ioctl+0x77/frame 0xffffff8498e26740
> if_setflag() at if_setflag+0xe1/frame 0xffffff8498e267b0
> ifpromisc() at ifpromisc+0x2c/frame 0xffffff8498e267e0
> lagg_setflags() at lagg_setflags+0x65/frame 0xffffff8498e26820
> lagg_ioctl() at lagg_ioctl+0x3d0/frame 0xffffff8498e268c0
> if_setflag() at if_setflag+0xe1/frame 0xffffff8498e26930
> ifpromisc() at ifpromisc+0x2c/frame 0xffffff8498e26960
> bpfioctl() at bpfioctl+0x84c/frame 0xffffff8498e269e0
> devfs_ioctl_f() at devfs_ioctl_f+0xf0/frame 0xffffff8498e26a40
> kern_ioctl() at kern_ioctl+0x1ce/frame 0xffffff8498e26a90
> sys_ioctl() at sys_ioctl+0x11f/frame 0xffffff8498e26ae0
> amd64_syscall() at amd64_syscall+0x265/frame 0xffffff8498e26bf0
> Xfast_syscall() at Xfast_syscall+0xfb/frame 0xffffff8498e26bf0
> --- syscall (54, FreeBSD ELF64, sys_ioctl), rip = 0x800fffeca, rsp =
> 0x7fffffffd3a8, rbp = 0x7fffffffd980 ---
> Sleeping thread (tid 100775, pid 64749) owns a non-sleepable lock
> KDB: stack backtrace of thread 100775:
> sched_switch() at sched_switch+0x481/frame 0xffffff8498e26550
> mi_switch() at mi_switch+0x179/frame 0xffffff8498e26590
> sleepq_switch() at sleepq_switch+0x18a/frame 0xffffff8498e265d0
> sleepq_timedwait() at sleepq_timedwait+0x43/frame 0xffffff8498e26600
> _sleep() at _sleep+0x32c/frame 0xffffff8498e26690
> begin_synchronized_op() at begin_synchronized_op+0x38/frame 0xffffff8498e266f0
> cxgbe_ioctl() at cxgbe_ioctl+0x77/frame 0xffffff8498e26740
> if_setflag() at if_setflag+0xe1/frame 0xffffff8498e267b0
> ifpromisc() at ifpromisc+0x2c/frame 0xffffff8498e267e0
> lagg_setflags() at lagg_setflags+0x65/frame 0xffffff8498e26820
> lagg_ioctl() at lagg_ioctl+0x3d0/frame 0xffffff8498e268c0
> if_setflag() at if_setflag+0xe1/frame 0xffffff8498e26930
> ifpromisc() at ifpromisc+0x2c/frame 0xffffff8498e26960
> bpfioctl() at bpfioctl+0x84c/frame 0xffffff8498e269e0
> devfs_ioctl_f() at devfs_ioctl_f+0xf0/frame 0xffffff8498e26a40
> kern_ioctl() at kern_ioctl+0x1ce/frame 0xffffff8498e26a90
> sys_ioctl() at sys_ioctl+0x11f/frame 0xffffff8498e26ae0
> amd64_syscall() at amd64_syscall+0x265/frame 0xffffff8498e26bf0
> Xfast_syscall() at Xfast_syscall+0xfb/frame 0xffffff8498e26bf0
> --- syscall (54, FreeBSD ELF64, sys_ioctl), rip = 0x800fffeca, rsp =
> 0x7fffffffd3a8, rbp = 0x7fffffffd980 ---
> panic: sleeping thread
> cpuid = 2
> 




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?514CB6B8.3050207>