Lines Matching refs:path

25 static struct vfsmount *autofs_d_automount(struct path *);
26 static int autofs_d_manage(const struct path *, bool);
240 static int autofs_mount_wait(const struct path *path, bool rcu_walk)
242 struct autofs_sb_info *sbi = autofs_sbi(path->dentry->d_sb);
243 struct autofs_info *ino = autofs_dentry_ino(path->dentry);
249 pr_debug("waiting for mount name=%pd\n", path->dentry);
250 status = autofs_wait(sbi, path, NFY_MOUNT);
260 static int do_expire_wait(const struct path *path, bool rcu_walk)
262 struct dentry *dentry = path->dentry;
269 return autofs_expire_wait(path, rcu_walk);
271 const struct path this = { .mnt = path->mnt, .dentry = expiring };
284 static struct dentry *autofs_mountpoint_changed(struct path *path)
286 struct dentry *dentry = path->dentry;
303 dput(path->dentry);
304 path->dentry = new;
306 return path->dentry;
309 static struct vfsmount *autofs_d_automount(struct path *path)
311 struct dentry *dentry = path->dentry;
330 status = do_expire_wait(path, 0);
338 status = autofs_mount_wait(path, 0);
354 if (!path_is_mountpoint(path)) {
367 if (path_has_submounts(path)) {
379 status = autofs_mount_wait(path, 0);
390 dentry = autofs_mountpoint_changed(path);
397 static int autofs_d_manage(const struct path *path, bool rcu_walk)
399 struct dentry *dentry = path->dentry;
408 if (!path_is_mountpoint(path))
414 if (do_expire_wait(path, rcu_walk) == -ECHILD)
421 status = autofs_mount_wait(path, rcu_walk);
437 if (path_is_mountpoint(path))
459 * Any needed mounting has been completed and the path
464 if ((!path_is_mountpoint(path) && !simple_empty(dentry)) ||
543 /* autofs_oz_mode() needs to allow path walks when the
605 /* autofs_oz_mode() needs to allow path walks when the
639 * during path walks.
687 /* autofs_oz_mode() needs to allow path walks when the
729 /* autofs_oz_mode() needs to allow path walks when the