Re: [PATCH] Busy inodes after unmount, be more verbose in generic_shutdown_super

From: Jan Blunck
Date: Thu Jan 19 2006 - 05:03:11 EST


On Thu, Jan 19, Kirill Korotaev wrote:

> This patch has nothing to do with vfsmount references and doesn't hide
> anything. It just adds syncronization barrier between do_umount() and
> shrink_dcache() since the latter can work with dentries/inodes without
> holding locks.
>
> So if you think there is something wrong with it, please, be more specific.
>

You can only unmount a file system if there are no references to the vfsmount
object anymore. Since shrink_dcache*() is called after checking the refcount of
vfsmount while unmounting the file system, it isn't possible to hold a
reference to a dentry (and therefore call dput()) after this point in
time. Therefore your reference counting on the vfsmount is wrong which is the
root case for your problem of busy inodes.

Regards,
Jan

--
Jan Blunck jblunck@xxxxxxx
SuSE LINUX AG - A Novell company
Maxfeldstr. 5 +49-911-74053-608
D-90409 Nürnberg http://www.suse.de
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/