vfs: Remove d_drop calls from d_revalidate implementations
Now that d_invalidate always succeeds it is not longer necessary or desirable to hard code d_drop calls into filesystem specific d_revalidate implementations. Remove the unnecessary d_drop calls and rely on d_invalidate to drop the dentries. Using d_invalidate ensures that paths to mount points will not be dropped. Reviewed-by: Miklos Szeredi <miklos@szeredi.hu> Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
5542aa2fa7
commit
c143c2333c
|
@ -1069,7 +1069,6 @@ static int ceph_d_revalidate(struct dentry *dentry, unsigned int flags)
|
|||
ceph_dentry_lru_touch(dentry);
|
||||
} else {
|
||||
ceph_dir_clear_complete(dir);
|
||||
d_drop(dentry);
|
||||
}
|
||||
iput(dir);
|
||||
return valid;
|
||||
|
|
|
@ -1590,7 +1590,6 @@ int pid_revalidate(struct dentry *dentry, unsigned int flags)
|
|||
put_task_struct(task);
|
||||
return 1;
|
||||
}
|
||||
d_drop(dentry);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -1727,9 +1726,6 @@ out:
|
|||
put_task_struct(task);
|
||||
|
||||
out_notask:
|
||||
if (status <= 0)
|
||||
d_drop(dentry);
|
||||
|
||||
return status;
|
||||
}
|
||||
|
||||
|
|
|
@ -129,8 +129,6 @@ static int tid_fd_revalidate(struct dentry *dentry, unsigned int flags)
|
|||
}
|
||||
put_task_struct(task);
|
||||
}
|
||||
|
||||
d_drop(dentry);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue