diff options
author | Olga Kornievskaia <kolga@netapp.com> | 2021-03-30 21:03:59 +0200 |
---|---|---|
committer | Chuck Lever <chuck.lever@oracle.com> | 2021-04-01 15:36:31 +0200 |
commit | e739b12042b6b079a397a3c234f96c09d1de0b40 (patch) | |
tree | b8885ec9c361ec8e3e19adabe41bd02afe11e188 /fs/nfsd | |
parent | UAPI: nfsfh.h: Replace one-element array with flexible-array member (diff) | |
download | linux-e739b12042b6b079a397a3c234f96c09d1de0b40.tar.xz linux-e739b12042b6b079a397a3c234f96c09d1de0b40.zip |
NFSv4.2: fix copy stateid copying for the async copy
This patch fixes Dan Carpenter's report that the static checker
found a problem where memcpy() was copying into too small of a buffer.
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Fixes: e0639dc5805a ("NFSD introduce async copy feature")
Signed-off-by: Olga Kornievskaia <kolga@netapp.com>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Reviewed-by: Dai Ngo <dai.ngo@oracle.com>
Diffstat (limited to 'fs/nfsd')
-rw-r--r-- | fs/nfsd/nfs4proc.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/nfsd/nfs4proc.c b/fs/nfsd/nfs4proc.c index edcb380fbf12..daf43b980d4b 100644 --- a/fs/nfsd/nfs4proc.c +++ b/fs/nfsd/nfs4proc.c @@ -1541,8 +1541,8 @@ nfsd4_copy(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate, if (!nfs4_init_copy_state(nn, copy)) goto out_err; refcount_set(&async_copy->refcount, 1); - memcpy(©->cp_res.cb_stateid, ©->cp_stateid, - sizeof(copy->cp_stateid)); + memcpy(©->cp_res.cb_stateid, ©->cp_stateid.stid, + sizeof(copy->cp_res.cb_stateid)); dup_copy_fields(copy, async_copy); async_copy->copy_task = kthread_create(nfsd4_do_async_copy, async_copy, "%s", "copy thread"); |