On Tue, Jun 03, 2014 at 11:33:54AM +0100, David Howells wrote: > Miklos Szeredi <miklos@xxxxxxxxxx> 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); -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html