aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfsd
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2010-03-22 17:32:25 +0100
committerAl Viro <viro@zeniv.linux.org.uk>2010-05-21 18:31:21 -0400
commit8018ab057480974e7f26a387bf4ce040e9a5f6f1 (patch)
tree98298180bf60797a028eca4f24234dc67d38a9d4 /fs/nfsd
parentnfsd: open a file descriptor for fsync in nfs4 recovery (diff)
downloadlinux-dev-8018ab057480974e7f26a387bf4ce040e9a5f6f1.tar.xz
linux-dev-8018ab057480974e7f26a387bf4ce040e9a5f6f1.zip
sanitize vfs_fsync calling conventions
Now that the last user passing a NULL file pointer is gone we can remove the redundant dentry argument and associated hacks inside vfs_fsynmc_range. The next step will be removig the dentry argument from ->fsync, but given the luck with the last round of method prototype changes I'd rather defer this until after the main merge window. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/nfsd')
-rw-r--r--fs/nfsd/nfs4recover.c6
-rw-r--r--fs/nfsd/vfs.c5
2 files changed, 5 insertions, 6 deletions
diff --git a/fs/nfsd/nfs4recover.c b/fs/nfsd/nfs4recover.c
index dada03f2c13b..7e26caab2a26 100644
--- a/fs/nfsd/nfs4recover.c
+++ b/fs/nfsd/nfs4recover.c
@@ -158,7 +158,7 @@ out_unlock:
mutex_unlock(&dir->d_inode->i_mutex);
if (status == 0) {
clp->cl_firststate = 1;
- vfs_fsync(rec_file, rec_file->f_path.dentry, 0);
+ vfs_fsync(rec_file, 0);
}
nfs4_reset_creds(original_cred);
dprintk("NFSD: nfsd4_create_clid_dir returns %d\n", status);
@@ -288,7 +288,7 @@ nfsd4_remove_clid_dir(struct nfs4_client *clp)
status = nfsd4_unlink_clid_dir(clp->cl_recdir, HEXDIR_LEN-1);
nfs4_reset_creds(original_cred);
if (status == 0)
- vfs_fsync(rec_file, rec_file->f_path.dentry, 0);
+ vfs_fsync(rec_file, 0);
mnt_drop_write(rec_file->f_path.mnt);
out:
if (status)
@@ -325,7 +325,7 @@ nfsd4_recdir_purge_old(void) {
goto out;
status = nfsd4_list_rec_dir(rec_file->f_path.dentry, purge_old);
if (status == 0)
- vfs_fsync(rec_file, rec_file->f_path.dentry, 0);
+ vfs_fsync(rec_file, 0);
mnt_drop_write(rec_file->f_path.mnt);
out:
if (status)
diff --git a/fs/nfsd/vfs.c b/fs/nfsd/vfs.c
index 23c06f77f4ca..ebbf3b6b2457 100644
--- a/fs/nfsd/vfs.c
+++ b/fs/nfsd/vfs.c
@@ -999,7 +999,7 @@ static int wait_for_concurrent_writes(struct file *file)
if (inode->i_state & I_DIRTY) {
dprintk("nfsd: write sync %d\n", task_pid_nr(current));
- err = vfs_fsync(file, file->f_path.dentry, 0);
+ err = vfs_fsync(file, 0);
}
last_ino = inode->i_ino;
last_dev = inode->i_sb->s_dev;
@@ -1175,8 +1175,7 @@ nfsd_commit(struct svc_rqst *rqstp, struct svc_fh *fhp,
if (err)
goto out;
if (EX_ISSYNC(fhp->fh_export)) {
- int err2 = vfs_fsync_range(file, file->f_path.dentry,
- offset, end, 0);
+ int err2 = vfs_fsync_range(file, offset, end, 0);
if (err2 != -EINVAL)
err = nfserrno(err2);