From owner-freebsd-stable@FreeBSD.ORG Mon Oct 1 22:19:00 2012 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 98C621065672; Mon, 1 Oct 2012 22:19:00 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) Received: from esa-jnhn.mail.uoguelph.ca (esa-jnhn.mail.uoguelph.ca [131.104.91.44]) by mx1.freebsd.org (Postfix) with ESMTP id 334248FC0A; Mon, 1 Oct 2012 22:18:59 +0000 (UTC) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Ap8EABQWalCDaFvO/2dsb2JhbABFhgu5RIIgAQEBAwEBAQEgKyALGw4KAgINEgcCKQEJJgYIBwQBHASHXgYLpi+TGoEhiX4UBoUfgRIDkzyCLYEViCeGb4MDgT4JNA X-IronPort-AV: E=Sophos;i="4.80,519,1344225600"; d="scan'208";a="181446855" Received: from erie.cs.uoguelph.ca (HELO zcs3.mail.uoguelph.ca) ([131.104.91.206]) by esa-jnhn-pri.mail.uoguelph.ca with ESMTP; 01 Oct 2012 18:18:58 -0400 Received: from zcs3.mail.uoguelph.ca (localhost.localdomain [127.0.0.1]) by zcs3.mail.uoguelph.ca (Postfix) with ESMTP id DCD7DB4054; Mon, 1 Oct 2012 18:18:58 -0400 (EDT) Date: Mon, 1 Oct 2012 18:18:58 -0400 (EDT) From: Rick Macklem To: John Baldwin Message-ID: <1990296074.1528480.1349129938870.JavaMail.root@erie.cs.uoguelph.ca> In-Reply-To: <201210010851.50914.jhb@freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [172.17.91.201] X-Mailer: Zimbra 6.0.10_GA_2692 (ZimbraWebClient - FF3.0 (Win)/6.0.10_GA_2692) Cc: Norbert Aschendorff , freebsd-stable@freebsd.org 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 22:19:00 -0000 John Baldwin wrote: > 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. > Norbert, would you be able to build a kernel with WITNESS and then reproduce it? > > 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. > Ok, thanks. (At least a know a little more about gdb and kernel dumps now;-) rick > -- > John Baldwin > _______________________________________________ > freebsd-stable@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-stable > To unsubscribe, send any mail to > "freebsd-stable-unsubscribe@freebsd.org"