From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: with ECARTIS (v1.0.0; list xfs); Wed, 22 Oct 2008 03:12:10 -0700 (PDT) Received: from cuda.sgi.com (cuda3.sgi.com [192.48.176.15]) by oss.sgi.com (8.12.11.20060308/8.12.11/SuSE Linux 0.7) with ESMTP id m9MAC6Dv022698 for ; Wed, 22 Oct 2008 03:12:07 -0700 Date: Wed, 22 Oct 2008 06:13:51 -0400 From: Christoph Hellwig Subject: Re: BUG: sleeping function called from invalid context at kernel/rwsem.c:131 XFS? (was: Re: linux-next: Tree for October 17) Message-ID: <20081022101351.GB11313@infradead.org> References: <20081017203710.GA27187@infradead.org> <20081017135510.7127c4e7@infradead.org> <20081020163327.GA15651@infradead.org> <20081020223549.GA21152@disturbed> <20081022075838.GK18495@disturbed> <20081022082550.GM18495@disturbed> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20081022082550.GM18495@disturbed> Sender: xfs-bounce@oss.sgi.com Errors-to: xfs-bounce@oss.sgi.com List-Id: xfs To: Alexander Beregalov , lachlan@sgi.com, Christoph Hellwig , Arjan van de Ven , xfs@oss.sgi.com, linux-next@vger.kernel.org, LKML On Wed, Oct 22, 2008 at 07:25:50PM +1100, Dave Chinner wrote: > > Basically the above commit moved xfs_ilock() inside > > radix_tree_preload()/radix_tree_preload_end(), which means we are > > taking a rwsem() while we have an elevated preempt count. I'll > > get a patch out to fix it. This really needs a warning. Then again I don't really understand this as the point of radix_tree_preload was that we can do the actual radix-tree under a lock, or not? Anyway, the patch looks correct to me, including the slightly unrelated hunk to fix the missing unlock and preload leak.