diff options
Diffstat (limited to 'fs/9p/vfs_file.c')
| -rw-r--r-- | fs/9p/vfs_file.c | 19 | 
1 files changed, 19 insertions, 0 deletions
diff --git a/fs/9p/vfs_file.c b/fs/9p/vfs_file.c index 3902bf43a08..74a0461a9ac 100644 --- a/fs/9p/vfs_file.c +++ b/fs/9p/vfs_file.c @@ -257,6 +257,23 @@ v9fs_file_write(struct file *filp, const char __user * data,  	return total;  } +static int v9fs_file_fsync(struct file *filp, struct dentry *dentry, +					int datasync) +{ +	struct p9_fid *fid; +	struct p9_wstat wstat; +	int retval; + +	P9_DPRINTK(P9_DEBUG_VFS, "filp %p dentry %p datasync %x\n", filp, +						dentry, datasync); + +	fid = filp->private_data; +	v9fs_blank_wstat(&wstat); + +	retval = p9_client_wstat(fid, &wstat); +	return retval; +} +  static const struct file_operations v9fs_cached_file_operations = {  	.llseek = generic_file_llseek,  	.read = do_sync_read, @@ -266,6 +283,7 @@ static const struct file_operations v9fs_cached_file_operations = {  	.release = v9fs_dir_release,  	.lock = v9fs_file_lock,  	.mmap = generic_file_readonly_mmap, +	.fsync = v9fs_file_fsync,  };  const struct file_operations v9fs_file_operations = { @@ -276,4 +294,5 @@ const struct file_operations v9fs_file_operations = {  	.release = v9fs_dir_release,  	.lock = v9fs_file_lock,  	.mmap = generic_file_readonly_mmap, +	.fsync = v9fs_file_fsync,  };  |