[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CA+icZUWAi=_bgPQN_=aZ03xGQiViMgMK4cH+oUi5qPop81wDMA@mail.gmail.com>
Date: Tue, 3 Jun 2014 16:26:00 +0200
From: Sedat Dilek <sedat.dilek@...il.com>
To: Miklos Szeredi <miklos@...redi.hu>
Cc: David Howells <dhowells@...hat.com>,
"J. R. Okajima" <hooanon05g@...il.com>,
Al Viro <viro@...iv.linux.org.uk>,
Linus Torvalds <torvalds@...ux-foundation.org>,
linux-fsdevel <linux-fsdevel@...r.kernel.org>,
LKML <linux-kernel@...r.kernel.org>,
Christoph Hellwig <hch@...radead.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Robo Bot <apw@...onical.com>, Felix Fietkau <nbd@...nwrt.org>,
Neil Brown <neilb@...e.de>,
Jordi Pujol <jordipujolp@...il.com>, ezk@....cs.sunysb.edu,
"mszeredi@...e.cz" <mszeredi@...e.cz>
Subject: Re: Unionmount and overlayfs testsuite
On Tue, Jun 3, 2014 at 3:21 PM, Miklos Szeredi <miklos@...redi.hu> wrote:
> On Tue, Jun 03, 2014 at 11:33:54AM +0100, David Howells wrote:
>> Miklos Szeredi <miklos@...redi.hu> 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: [<ffffffff8111e555>] vfs_rmdir+0x59/0xe8
>>
>> but task is already holding lock:
>> (&sb->s_type->i_mutex_key#9){+.+.+.}, at: [<ffffffff811e12a9>] 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);
>
I have tested the latest overlayfs.current up to...
commit 17eb601eb5dbc8a2e200872380c03400813d4f1a
"overlayfs: annotate mutex in ovl_clear_empty()".
It looks good here.
- Sedat -
View attachment "runltp-log_ipc-pipes-syscalls_3.15.0-rc8-3-iniza-lockdep.txt" of type "text/plain" (37144 bytes)
View attachment "run-sh-log_TEST_OVERLAYFS-1_TERMSLASH-1_3.15.0-rc8-3-iniza-lockdep.txt" of type "text/plain" (43507 bytes)
Download attachment "config-3.15.0-rc8-3-iniza-lockdep" of type "application/octet-stream" (119079 bytes)
Powered by blists - more mailing lists