From owner-freebsd-stable@FreeBSD.ORG Mon Oct 1 12:58:24 2012 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6DC4110656FD for ; Mon, 1 Oct 2012 12:58:23 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from bigwig.baldwin.cx (bigknife-pt.tunnel.tserv9.chi1.ipv6.he.net [IPv6:2001:470:1f10:75::2]) by mx1.freebsd.org (Postfix) with ESMTP id 31B368FC08 for ; Mon, 1 Oct 2012 12:58:23 +0000 (UTC) Received: from jhbbsd.localnet (unknown [209.249.190.124]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id 62994B949; Mon, 1 Oct 2012 08:58:22 -0400 (EDT) From: John Baldwin To: freebsd-stable@freebsd.org Date: Mon, 1 Oct 2012 08:51:50 -0400 User-Agent: KMail/1.13.5 (FreeBSD/8.2-CBSD-20110714-p20; KDE/4.5.5; amd64; ; ) References: <509617515.1463700.1349093264849.JavaMail.root@erie.cs.uoguelph.ca> In-Reply-To: <509617515.1463700.1349093264849.JavaMail.root@erie.cs.uoguelph.ca> MIME-Version: 1.0 Content-Type: Text/Plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <201210010851.50914.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.7 (bigwig.baldwin.cx); Mon, 01 Oct 2012 08:58:22 -0400 (EDT) Cc: Norbert Aschendorff , Rick Macklem Subject: Re: panic "Sleeping thread owns a non-sleepable lock" via cv_timedwait_signal, was "rsync over NFS" X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 Oct 2012 12:58:24 -0000 On Monday, October 01, 2012 8:07:44 am Rick Macklem wrote: > Norbert Aschendorff wrote: > > Hi, > > > > my FreeBSD-9/stable machine (FreeBSD freebsd-tower.goebo.site > > 9.1-PRERELEASE FreeBSD 9.1-PRERELEASE #2 r241044M: Sat Sep 29 12:52:01 > > CEST 2012 lbo@freebsd-tower.goebo.site:/usr/obj/usr/src/sys/GENERIC > > i386) crashes reproducibly when rsync-ing files to an NFSv4 share on > > the FreeBSD machine. The crash makes the system reboot. The crash > > creates files in /var/crash which may be obtained here: [1]. > > > > This problem is not limited to the self-compiled kernel/world > > (stable/9) > > but appears also on pre-compiled 9.1-PRERELEASE. I did not test > > 9.0-RELEASE. > > > > If I do not use rsync on this NFS share, everything works completely > > fine. > > > > Workaround: Use rsync over SSH. > > > > --Norbert > > > > [1] http://lbo.spheniscida.de/Files/nfs-rsync-crash.tgz (25K), vmcore > > of > > around 300M (90M gzipped, 64M LZMA'd) not included > > > >From a quick look, the panic is: > Sleeping thread (tid 100099, pid 1599) owns a non-sleepable lock > called from the server side krpc via cv_timedwait_sig(). > > I assume this means that another mutex or similar is held as well as > the one passed in as an argument to cv_timedwait_sig()? Yes. > (I'll keep looking, but I can't spot where another one might be held > by the NFS or krpc code.) If this is reproducible, then adding WITNESS to the kernel will add additional info in the panic message to tell you what other locks are held and which file:line they were acquired at. > I'm not knowledgible when it comes to gdb and crash dumps. Is there an > easy command Norbert can type to see all the locks held by > tid 100099, pid 1599? No. :( Only WITNESS keeps track of that sort of state. -- John Baldwin