]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
NFSD: Replace READ* macros in nfsd4_decode_release_lockowner()
authorChuck Lever <chuck.lever@oracle.com>
Wed, 4 Nov 2020 18:42:25 +0000 (13:42 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 21 Jun 2024 12:52:40 +0000 (14:52 +0200)
[ Upstream commit a4a80c15ca4dd998ab5cbe87bd856c626a318a80 ]

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
fs/nfsd/nfs4xdr.c

index 26744b7f0e35c6783842ab39a1180e848dec5a1c..cc406b7a530b68fe74e15cb4199a79d231a03f46 100644 (file)
@@ -1418,20 +1418,20 @@ nfsd4_decode_write(struct nfsd4_compoundargs *argp, struct nfsd4_write *write)
 static __be32
 nfsd4_decode_release_lockowner(struct nfsd4_compoundargs *argp, struct nfsd4_release_lockowner *rlockowner)
 {
-       DECODE_HEAD;
+       __be32 status;
 
        if (argp->minorversion >= 1)
                return nfserr_notsupp;
 
-       READ_BUF(12);
-       COPYMEM(&rlockowner->rl_clientid, sizeof(clientid_t));
-       rlockowner->rl_owner.len = be32_to_cpup(p++);
-       READ_BUF(rlockowner->rl_owner.len);
-       READMEM(rlockowner->rl_owner.data, rlockowner->rl_owner.len);
+       status = nfsd4_decode_state_owner4(argp, &rlockowner->rl_clientid,
+                                          &rlockowner->rl_owner);
+       if (status)
+               return status;
 
        if (argp->minorversion && !zero_clientid(&rlockowner->rl_clientid))
                return nfserr_inval;
-       DECODE_TAIL;
+
+       return nfs_ok;
 }
 
 static __be32