diff options
author | Ian Kent <raven@themaw.net> | 2012-08-17 11:09:04 +0800 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-08-17 06:56:39 -0700 |
commit | d807ff838f48e7778996e577e2a57a5796c32e84 (patch) | |
tree | cb1ced2dff92e1b973ff171e120ebaa7493b924f /fs/ext4/super.c | |
parent | d9875690d9b89a866022ff49e3fcea892345ad92 (diff) | |
download | op-kernel-dev-d807ff838f48e7778996e577e2a57a5796c32e84.zip op-kernel-dev-d807ff838f48e7778996e577e2a57a5796c32e84.tar.gz |
autofs4 - fix expire check
In some cases when an autofs indirect mount is contained in a file
system that is marked as shared (such as when systemd does the
equivalent of "mount --make-rshared /" early in the boot), mounts
stop expiring.
When this happens the first expiry check on a mountpoint dentry in
autofs_expire_indirect() sees a mountpoint dentry with a higher
than minimal reference count. Consequently the dentry is condidered
busy and the actual expiry check is never done.
This particular check was originally meant as an optimisation to
detect a path walk in progress but with the addition of rcu-walk
it can be ineffective anyway.
Removing the test allows automounts to expire again since the
actual expire check doesn't rely on the dentry reference count.
Signed-off-by: Ian Kent <raven@themaw.net>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/ext4/super.c')
0 files changed, 0 insertions, 0 deletions