diff options
Diffstat (limited to 'fs/autofs4/root.c')
-rw-r--r-- | fs/autofs4/root.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/fs/autofs4/root.c b/fs/autofs4/root.c index 651e4ef563b1..20225636a4e9 100644 --- a/fs/autofs4/root.c +++ b/fs/autofs4/root.c | |||
@@ -234,7 +234,7 @@ static void *autofs4_follow_link(struct dentry *dentry, struct nameidata *nd) | |||
234 | nd->flags); | 234 | nd->flags); |
235 | /* | 235 | /* |
236 | * For an expire of a covered direct or offset mount we need | 236 | * For an expire of a covered direct or offset mount we need |
237 | * to break out of follow_down() at the autofs mount trigger | 237 | * to break out of follow_down_one() at the autofs mount trigger |
238 | * (d_mounted--), so we can see the expiring flag, and manage | 238 | * (d_mounted--), so we can see the expiring flag, and manage |
239 | * the blocking and following here until the expire is completed. | 239 | * the blocking and following here until the expire is completed. |
240 | */ | 240 | */ |
@@ -243,7 +243,7 @@ static void *autofs4_follow_link(struct dentry *dentry, struct nameidata *nd) | |||
243 | if (ino->flags & AUTOFS_INF_EXPIRING) { | 243 | if (ino->flags & AUTOFS_INF_EXPIRING) { |
244 | spin_unlock(&sbi->fs_lock); | 244 | spin_unlock(&sbi->fs_lock); |
245 | /* Follow down to our covering mount. */ | 245 | /* Follow down to our covering mount. */ |
246 | if (!follow_down(&nd->path)) | 246 | if (!follow_down_one(&nd->path)) |
247 | goto done; | 247 | goto done; |
248 | goto follow; | 248 | goto follow; |
249 | } | 249 | } |
@@ -292,11 +292,10 @@ follow: | |||
292 | * multi-mount with no root offset so we don't need | 292 | * multi-mount with no root offset so we don't need |
293 | * to follow it. | 293 | * to follow it. |
294 | */ | 294 | */ |
295 | if (d_mountpoint(dentry)) { | 295 | if (d_managed(dentry)) { |
296 | if (!autofs4_follow_mount(&nd->path)) { | 296 | status = follow_down(&nd->path, false); |
297 | status = -ENOENT; | 297 | if (status < 0) |
298 | goto out_error; | 298 | goto out_error; |
299 | } | ||
300 | } | 299 | } |
301 | 300 | ||
302 | done: | 301 | done: |