From 405e0cccce9bdbec885a265d18595f4482de76b1 Mon Sep 17 00:00:00 2001 From: Ian Kent Date: Tue, 21 Jun 2005 17:16:41 -0700 Subject: [PATCH] --- yaml --- r: 2543 b: refs/heads/master c: 1684b2bba6972749bc9acee57585acd6c78050b2 h: refs/heads/master i: 2541: 224778125b9aedafd5775b936064c4a3cef82009 2539: 3f3b56b2c7a8fb3f11d4d7ce01d81c556b6424c6 2535: 31f095175c9dfb7582b73186fef3b11fcffe95a6 2527: b573f6978dc2f6a539108307fd3585020c638d95 v: v3 --- [refs] | 2 +- trunk/fs/autofs4/root.c | 9 ++++++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 246c657083a3..fc81c0ffe19c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: cc9acc885819696c0ed00f4f0f0cda0c7583f116 +refs/heads/master: 1684b2bba6972749bc9acee57585acd6c78050b2 diff --git a/trunk/fs/autofs4/root.c b/trunk/fs/autofs4/root.c index e137acf0543d..2a771ec66956 100644 --- a/trunk/fs/autofs4/root.c +++ b/trunk/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",