diff mbox series

[1/1] NFSD: add encoding of op_recall flag for write delegation

Message ID 1686094862-13108-1-git-send-email-dai.ngo@oracle.com (mailing list archive)
State New, archived
Headers show
Series [1/1] NFSD: add encoding of op_recall flag for write delegation | expand

Commit Message

Dai Ngo June 6, 2023, 11:41 p.m. UTC
Modified nfsd4_encode_open to encode the op_recall flag properly
for OPEN result with write delegation granted.

Signed-off-by: Dai Ngo <dai.ngo@oracle.com>
---
 fs/nfsd/nfs4xdr.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Chuck Lever June 7, 2023, 2:03 p.m. UTC | #1
> On Jun 6, 2023, at 7:41 PM, Dai Ngo <dai.ngo@oracle.com> wrote:
> 
> Modified nfsd4_encode_open to encode the op_recall flag properly
> for OPEN result with write delegation granted.

This appears to have been broken for forever. I can't really nail
down a Fixes: commit, so I will add a Cc: stable.


> Signed-off-by: Dai Ngo <dai.ngo@oracle.com>
> ---
> fs/nfsd/nfs4xdr.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/fs/nfsd/nfs4xdr.c b/fs/nfsd/nfs4xdr.c
> index 4590b893dbc8..d7e46b940cce 100644
> --- a/fs/nfsd/nfs4xdr.c
> +++ b/fs/nfsd/nfs4xdr.c
> @@ -3975,7 +3975,7 @@ nfsd4_encode_open(struct nfsd4_compoundres *resp, __be32 nfserr,
> p = xdr_reserve_space(xdr, 32);
> if (!p)
> return nfserr_resource;
> - *p++ = cpu_to_be32(0);
> + *p++ = cpu_to_be32(open->op_recall);
> 
> /*
> * TODO: space_limit's in delegations
> -- 
> 2.9.5
> 

--
Chuck Lever
Jeff Layton June 7, 2023, 6:04 p.m. UTC | #2
On Tue, 2023-06-06 at 16:41 -0700, Dai Ngo wrote:
> Modified nfsd4_encode_open to encode the op_recall flag properly
> for OPEN result with write delegation granted.
> 
> Signed-off-by: Dai Ngo <dai.ngo@oracle.com>
> ---
>  fs/nfsd/nfs4xdr.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/fs/nfsd/nfs4xdr.c b/fs/nfsd/nfs4xdr.c
> index 4590b893dbc8..d7e46b940cce 100644
> --- a/fs/nfsd/nfs4xdr.c
> +++ b/fs/nfsd/nfs4xdr.c
> @@ -3975,7 +3975,7 @@ nfsd4_encode_open(struct nfsd4_compoundres *resp, __be32 nfserr,
>  		p = xdr_reserve_space(xdr, 32);
>  		if (!p)
>  			return nfserr_resource;
> -		*p++ = cpu_to_be32(0);
> +		*p++ = cpu_to_be32(open->op_recall);
>  
>  		/*
>  		 * TODO: space_limit's in delegations

Nice catch!

Reviewed-by: Jeff Layton <jlayton@kernel.org>
diff mbox series

Patch

diff --git a/fs/nfsd/nfs4xdr.c b/fs/nfsd/nfs4xdr.c
index 4590b893dbc8..d7e46b940cce 100644
--- a/fs/nfsd/nfs4xdr.c
+++ b/fs/nfsd/nfs4xdr.c
@@ -3975,7 +3975,7 @@  nfsd4_encode_open(struct nfsd4_compoundres *resp, __be32 nfserr,
 		p = xdr_reserve_space(xdr, 32);
 		if (!p)
 			return nfserr_resource;
-		*p++ = cpu_to_be32(0);
+		*p++ = cpu_to_be32(open->op_recall);
 
 		/*
 		 * TODO: space_limit's in delegations