From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754212AbaFCNWY (ORCPT ); Tue, 3 Jun 2014 09:22:24 -0400 Received: from mail-wi0-f182.google.com ([209.85.212.182]:61278 "EHLO mail-wi0-f182.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753456AbaFCNWW (ORCPT ); Tue, 3 Jun 2014 09:22:22 -0400 Date: Tue, 3 Jun 2014 15:21:53 +0200 From: Miklos Szeredi To: David Howells Cc: Sedat Dilek , "J. R. Okajima" , Al Viro , Linus Torvalds , linux-fsdevel , LKML , Christoph Hellwig , Andrew Morton , Robo Bot , Felix Fietkau , Neil Brown , Jordi Pujol , ezk@fsl.cs.sunysb.edu, "mszeredi@suse.cz" Subject: Re: Unionmount and overlayfs testsuite Message-ID: <20140603132153.GA26512@tucsk.piliscsaba.szeredi.hu> References: <1400838223-30844-1-git-send-email-miklos@szeredi.hu> <28592.1401382081@warthog.procyon.org.uk> <11446.1401420931@jrobl> <7184.1401439773@warthog.procyon.org.uk> <15839.1401786056@warthog.procyon.org.uk> <10013.1401791634@warthog.procyon.org.uk> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <10013.1401791634@warthog.procyon.org.uk> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Jun 03, 2014 at 11:33:54AM +0100, David Howells wrote: > Miklos Szeredi wrote: > > > Fix now pushed to overlayfs.v22/overlayfs.current. > > I ran my testscript, which leaves a clean set up and mounted overlay fs > behind. I then ran: > > for ((i=100; i<=129; i++)); do mv /mnt/a/foo$i /mnt/a/bar$i; done > for ((i=100; i<=129; i++)); do mv /mnt/a/dir$i /mnt/a/dir2$i; done > > leading to: > > ============================================= > [ INFO: possible recursive locking detected ] > 3.15.0-rc6-fsdevel+ #382 Tainted: G W > --------------------------------------------- > mv/27935 is trying to acquire lock: > (&sb->s_type->i_mutex_key#9){+.+.+.}, at: [] vfs_rmdir+0x59/0xe8 > > but task is already holding lock: > (&sb->s_type->i_mutex_key#9){+.+.+.}, at: [] ovl_clear_empty+0x175/0x1eb And this one is a missing annotation in overlayfs. Tested patch pushed to the usual branches. Thanks, Miklos --- fs/overlayfs/dir.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/fs/overlayfs/dir.c +++ b/fs/overlayfs/dir.c @@ -253,7 +253,7 @@ static struct dentry *ovl_clear_empty(st unlock_rename(workdir, upperdir); ovl_cleanup_whiteouts(upper, list); - mutex_lock(&wdir->i_mutex); + mutex_lock_nested(&wdir->i_mutex, I_MUTEX_PARENT); ovl_cleanup(wdir, upper); mutex_unlock(&wdir->i_mutex);