Commit ca857cc1 authored by Trond Myklebust's avatar Trond Myklebust

NFS/pnfs: Do not clobber existing pgio_done_cb in nfs4_proc_read_setup

If a pNFS client sets hdr->pgio_done_cb, then we should not overwrite that
in nfs4_proc_read_setup()

Fixes: 75bf47eb ("pNFS/flexfile: Fix erroneous fall back to...")
Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
parent 5c6e5b60
...@@ -4392,7 +4392,8 @@ static void nfs4_proc_read_setup(struct nfs_pgio_header *hdr, ...@@ -4392,7 +4392,8 @@ static void nfs4_proc_read_setup(struct nfs_pgio_header *hdr,
struct rpc_message *msg) struct rpc_message *msg)
{ {
hdr->timestamp = jiffies; hdr->timestamp = jiffies;
hdr->pgio_done_cb = nfs4_read_done_cb; if (!hdr->pgio_done_cb)
hdr->pgio_done_cb = nfs4_read_done_cb;
msg->rpc_proc = &nfs4_procedures[NFSPROC4_CLNT_READ]; msg->rpc_proc = &nfs4_procedures[NFSPROC4_CLNT_READ];
nfs4_init_sequence(&hdr->args.seq_args, &hdr->res.seq_res, 0); nfs4_init_sequence(&hdr->args.seq_args, &hdr->res.seq_res, 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