]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
more graceful recovery in umount_collect()
authorAl Viro <viro@zeniv.linux.org.uk>
Sat, 3 May 2014 00:36:10 +0000 (20:36 -0400)
committerJiri Slaby <jslaby@suse.cz>
Thu, 30 Oct 2014 21:17:37 +0000 (22:17 +0100)
commit2c52637bf31e69e2025cd6ad088b7cb1b726ad7b
treedd9bcd165f9de356c2df6d16ac745c8b96c1eb2e
parent8cb08644a8e14875d08c757fe111e15f20f6ecc0
more graceful recovery in umount_collect()

commit 9c8c10e262e0f62cb2530f1b076de979123183dd upstream.

Start with shrink_dcache_parent(), then scan what remains.

First of all, BUG() is very much an overkill here; we are holding
->s_umount, and hitting BUG() means that a lot of interesting stuff
will be hanging after that point (sync(2), for example).  Moreover,
in cases when there had been more than one leak, we'll be better
off reporting all of them.  And more than just the last component
of pathname - %pd is there for just such uses...

That was the last user of dentry_lru_del(), so kill it off...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
fs/dcache.c