Commit 5c3485bb authored by Trond Myklebust's avatar Trond Myklebust

NFSv4.2/pnfs: Don't use READ_PLUS with pNFS yet

We have no way of tracking server READ_PLUS support in pNFS for now, so
just disable it.
Reported-by: default avatar"Mkrtchyan, Tigran" <tigran.mkrtchyan@desy.de>
Signed-off-by: default avatarTrond Myklebust <trond.myklebust@hammerspace.com>
parent 7aedc687
...@@ -5320,17 +5320,17 @@ static int nfs4_read_done(struct rpc_task *task, struct nfs_pgio_header *hdr) ...@@ -5320,17 +5320,17 @@ static int nfs4_read_done(struct rpc_task *task, struct nfs_pgio_header *hdr)
} }
#ifdef CONFIG_NFS_V4_2 #ifdef CONFIG_NFS_V4_2
static void nfs42_read_plus_support(struct nfs_server *server, struct rpc_message *msg) static void nfs42_read_plus_support(struct nfs_pgio_header *hdr,
struct rpc_message *msg)
{ {
if (server->caps & NFS_CAP_READ_PLUS) /* Note: We don't use READ_PLUS with pNFS yet */
if (nfs_server_capable(hdr->inode, NFS_CAP_READ_PLUS) && !hdr->ds_clp)
msg->rpc_proc = &nfs4_procedures[NFSPROC4_CLNT_READ_PLUS]; msg->rpc_proc = &nfs4_procedures[NFSPROC4_CLNT_READ_PLUS];
else
msg->rpc_proc = &nfs4_procedures[NFSPROC4_CLNT_READ];
} }
#else #else
static void nfs42_read_plus_support(struct nfs_server *server, struct rpc_message *msg) static void nfs42_read_plus_support(struct nfs_pgio_header *hdr,
struct rpc_message *msg)
{ {
msg->rpc_proc = &nfs4_procedures[NFSPROC4_CLNT_READ];
} }
#endif /* CONFIG_NFS_V4_2 */ #endif /* CONFIG_NFS_V4_2 */
...@@ -5340,7 +5340,8 @@ static void nfs4_proc_read_setup(struct nfs_pgio_header *hdr, ...@@ -5340,7 +5340,8 @@ static void nfs4_proc_read_setup(struct nfs_pgio_header *hdr,
hdr->timestamp = jiffies; hdr->timestamp = jiffies;
if (!hdr->pgio_done_cb) if (!hdr->pgio_done_cb)
hdr->pgio_done_cb = nfs4_read_done_cb; hdr->pgio_done_cb = nfs4_read_done_cb;
nfs42_read_plus_support(NFS_SERVER(hdr->inode), msg); msg->rpc_proc = &nfs4_procedures[NFSPROC4_CLNT_READ];
nfs42_read_plus_support(hdr, msg);
nfs4_init_sequence(&hdr->args.seq_args, &hdr->res.seq_res, 0, 0); nfs4_init_sequence(&hdr->args.seq_args, &hdr->res.seq_res, 0, 0);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment