From owner-freebsd-current@FreeBSD.ORG Sat Apr 28 12:52:34 2007 Return-Path: X-Original-To: freebsd-current@freebsd.org Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 8534C16A400 for ; Sat, 28 Apr 2007 12:52:34 +0000 (UTC) (envelope-from shoesoft@gmx.net) Received: from mail.gmx.net (mail.gmx.net [213.165.64.20]) by mx1.freebsd.org (Postfix) with SMTP id D005713C44C for ; Sat, 28 Apr 2007 12:52:33 +0000 (UTC) (envelope-from shoesoft@gmx.net) Received: (qmail invoked by alias); 28 Apr 2007 12:52:32 -0000 Received: from h081217094222.dyn.cm.kabsi.at (EHLO taxman.pepperland) [81.217.94.222] by mail.gmx.net (mp026) with SMTP; 28 Apr 2007 14:52:32 +0200 X-Authenticated: #16703784 X-Provags-ID: V01U2FsdGVkX18wnJo8r6ww7J7AgAZhcYMhReom5s/37mmTzmgRUH /kZIqxKCjf215r From: Stefan Ehmann To: Kostik Belousov Date: Sat, 28 Apr 2007 14:52:31 +0200 User-Agent: KMail/1.9.6 References: <200704281128.44077.shoesoft@gmx.net> <20070428115503.GM2441@deviant.kiev.zoral.com.ua> In-Reply-To: <20070428115503.GM2441@deviant.kiev.zoral.com.ua> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200704281452.32256.shoesoft@gmx.net> X-Y-GMX-Trusted: 0 Cc: freebsd-current@freebsd.org, des@freebsd.org Subject: Re: strace causes panic: sleeping thread X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Apr 2007 12:52:34 -0000 On Saturday 28 April 2007 13:55:03 Kostik Belousov wrote: > On Sat, Apr 28, 2007 at 11:28:43AM +0200, Stefan Ehmann wrote: > > I see this on freshly build CURRENT (i386): > > > > Using strace causes an immediate panic, e.g. strace echo foo: > > ... > This is because you do not have INVARIANTS in kernel. Then you would obtain > the "recursed on non-recursive mutex" panic. > > The pfs_ioctl locks the process (pfs_ioctl()->pfs_visible()->pfind()) that > is the target of the ioctl, and then the pseudofs_ioctl() do PROC_LOCK() > again. > > This is changed by rev. 1.62 of the fs/pseudofs/pseudofs_vnops.c, before it > process was held during pn_ioctl() call instead of being locked. Also, this > change seems to also take place for getextattr(). > > With the following patch, I was able to successfully strace ls. As a side > note, it seems that procfs ABI changed, strace built on RELENG_6 cannot run > on CURRENT. Yes, INVARIANTS is disabled here. The patch also works for me, thanks.