diff options
Diffstat (limited to 'fs/nfs/nfs4proc.c')
-rw-r--r-- | fs/nfs/nfs4proc.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c index bcc29bdc9bee..5d61cccc8d4d 100644 --- a/fs/nfs/nfs4proc.c +++ b/fs/nfs/nfs4proc.c | |||
@@ -3217,8 +3217,12 @@ static int nfs4_commit_done(struct rpc_task *task, struct nfs_write_data *data) | |||
3217 | static void nfs4_proc_commit_setup(struct nfs_write_data *data, struct rpc_message *msg) | 3217 | static void nfs4_proc_commit_setup(struct nfs_write_data *data, struct rpc_message *msg) |
3218 | { | 3218 | { |
3219 | struct nfs_server *server = NFS_SERVER(data->inode); | 3219 | struct nfs_server *server = NFS_SERVER(data->inode); |
3220 | 3220 | ||
3221 | data->args.bitmask = server->cache_consistency_bitmask; | 3221 | if (data->lseg) { |
3222 | data->args.bitmask = NULL; | ||
3223 | data->res.fattr = NULL; | ||
3224 | } else | ||
3225 | data->args.bitmask = server->cache_consistency_bitmask; | ||
3222 | if (!data->write_done_cb) | 3226 | if (!data->write_done_cb) |
3223 | data->write_done_cb = nfs4_commit_done_cb; | 3227 | data->write_done_cb = nfs4_commit_done_cb; |
3224 | data->res.server = server; | 3228 | data->res.server = server; |