/* * Attempt to automount the referral */ struct vfsmount *cifs_dfs_d_automount(struct path *path) { struct vfsmount *newmnt; cifs_dbg(FYI, "in %s\n", __func__); newmnt = cifs_dfs_do_automount(path->dentry); if (IS_ERR(newmnt)) { cifs_dbg(FYI, "leaving %s [automount failed]\n" , __func__); return newmnt; } mntget(newmnt); /* prevent immediate expiration */ mnt_set_expiry(newmnt, &cifs_dfs_automount_list); schedule_delayed_work(&cifs_dfs_automount_task, cifs_dfs_mountpoint_expiry_timeout); cifs_dbg(FYI, "leaving %s [ok]\n" , __func__); return newmnt; }
struct vfsmount *cifs_dfs_d_automount(struct path *path) { struct vfsmount *newmnt; cFYI(1, "in %s", __func__); newmnt = cifs_dfs_do_automount(path->dentry); if (IS_ERR(newmnt)) { cFYI(1, "leaving %s [automount failed]" , __func__); return newmnt; } mntget(newmnt); mnt_set_expiry(newmnt, &cifs_dfs_automount_list); schedule_delayed_work(&cifs_dfs_automount_task, cifs_dfs_mountpoint_expiry_timeout); cFYI(1, "leaving %s [ok]" , __func__); return newmnt; }