diff options
Diffstat (limited to 'fs/nfs/read.c')
-rw-r--r-- | fs/nfs/read.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/fs/nfs/read.c b/fs/nfs/read.c index 70a26c651f09..31db5c366b81 100644 --- a/fs/nfs/read.c +++ b/fs/nfs/read.c | |||
@@ -513,9 +513,10 @@ static void nfs_readpage_release_common(void *calldata) | |||
513 | void nfs_read_prepare(struct rpc_task *task, void *calldata) | 513 | void nfs_read_prepare(struct rpc_task *task, void *calldata) |
514 | { | 514 | { |
515 | struct nfs_read_data *data = calldata; | 515 | struct nfs_read_data *data = calldata; |
516 | NFS_PROTO(data->header->inode)->read_rpc_prepare(task, data); | 516 | int err; |
517 | if (unlikely(test_bit(NFS_CONTEXT_BAD, &data->args.context->flags))) | 517 | err = NFS_PROTO(data->header->inode)->read_rpc_prepare(task, data); |
518 | rpc_exit(task, -EIO); | 518 | if (err) |
519 | rpc_exit(task, err); | ||
519 | } | 520 | } |
520 | 521 | ||
521 | static const struct rpc_call_ops nfs_read_common_ops = { | 522 | static const struct rpc_call_ops nfs_read_common_ops = { |