From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alexander Viro Subject: Re: [PATCH] NFS: Stop sillyname renames and unmounts from racing Date: Tue, 6 Nov 2007 03:50:26 -0500 Message-ID: <20071106085026.GB5397@devserv.devel.redhat.com> References: <472C56E5.1040901@RedHat.com> <20071105210636.2fc72e14.akpm@linux-foundation.org> <473024D2.6080105@panasas.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Andrew Morton , Steve Dickson , Alexander Viro , Christoph Hellwig , linux-fsdevel@vger.kernel.org, linux-kernel , nfs@lists.sourceforge.net, "J. Bruce Fields" , Trond Myklebust To: Benny Halevy Return-path: Received: from mx1.redhat.com ([66.187.233.31]:47424 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754466AbXKFIvA (ORCPT ); Tue, 6 Nov 2007 03:51:00 -0500 Content-Disposition: inline In-Reply-To: <473024D2.6080105@panasas.com> Sender: linux-fsdevel-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org On Tue, Nov 06, 2007 at 10:24:50AM +0200, Benny Halevy wrote: > It'd be very nice if the silly renamed inodes (with silly_count > 1) were moved > to a different list in the first pass, under the inode_lock, and then waited on > until silly_count <= 1 in a second pass only on the filtered list. This will > provide you with O(1). It's absolutely pointless, starting with any kind of searching for inodes, etc. If you want fs shutdown _not_ to happen until async activity of that kind is over, don't reinvent the sodding wheels, just tell VFS that you are holding an active reference to superblock. End of story.