diff options
-rw-r--r-- | fs/autofs4/root.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/fs/autofs4/root.c b/fs/autofs4/root.c index e137acf0543d..2a771ec66956 100644 --- a/fs/autofs4/root.c +++ b/fs/autofs4/root.c @@ -306,7 +306,14 @@ static int try_to_fill_dentry(struct dentry *dentry, DPRINTK("expire done status=%d", status); - return 0; + /* + * If the directory still exists the mount request must + * continue otherwise it can't be followed at the right + * time during the walk. + */ + status = d_invalidate(dentry); + if (status != -EBUSY) + return 0; } DPRINTK("dentry=%p %.*s ino=%p", |