Modify the NFSv4.1/pNFS client to ask for a maximum length of layout.
The code specified the length of a layout as INT64_MAX instead of UINT64_MAX. This could result in getting a layout for less than the full file for extremely large files. Although having little practical effect, this patch corrects this in the code. Detected during recent testing of the pNFS server. MFC after: 2 weeks
This commit is contained in:
parent
9940acb652
commit
8d88056d06
@ -5238,7 +5238,7 @@ nfsrpc_getlayout(struct nfsmount *nmp, vnode_t vp, struct nfsfh *nfhp,
|
||||
stateid.other[1] = stateidp->other[1];
|
||||
stateid.other[2] = stateidp->other[2];
|
||||
error = nfsrpc_layoutget(nmp, nfhp->nfh_fh,
|
||||
nfhp->nfh_len, iomode, (uint64_t)0, INT64_MAX,
|
||||
nfhp->nfh_len, iomode, (uint64_t)0, UINT64_MAX,
|
||||
(uint64_t)0, layoutlen, &stateid, &retonclose,
|
||||
&flh, cred, p, NULL);
|
||||
} else {
|
||||
@ -5248,7 +5248,7 @@ nfsrpc_getlayout(struct nfsmount *nmp, vnode_t vp, struct nfsfh *nfhp,
|
||||
stateid.other[1] = lyp->nfsly_stateid.other[1];
|
||||
stateid.other[2] = lyp->nfsly_stateid.other[2];
|
||||
error = nfsrpc_layoutget(nmp, nfhp->nfh_fh,
|
||||
nfhp->nfh_len, iomode, off, INT64_MAX,
|
||||
nfhp->nfh_len, iomode, off, UINT64_MAX,
|
||||
(uint64_t)0, layoutlen, &stateid, &retonclose,
|
||||
&flh, cred, p, NULL);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user