From: Dai Ngo <dai.ngo@oracle.com>
Date: Sat, 17 Feb 2024 18:00:22 +0000 (-0800)
Subject: NFSD: OP_CB_RECALL_ANY should recall both read and write delegations
X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=5826e09bf3dd;p=users%2Fjedix%2Flinux-maple.git

NFSD: OP_CB_RECALL_ANY should recall both read and write delegations

Add RCA4_TYPE_MASK_WDATA_DLG to ra_bmval bitmask of OP_CB_RECALL_ANY

Signed-off-by: Dai Ngo <dai.ngo@oracle.com>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
---

diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
index a22016d0106f..7476726634f5 100644
--- a/fs/nfsd/nfs4state.c
+++ b/fs/nfsd/nfs4state.c
@@ -6611,6 +6611,8 @@ deleg_reaper(struct nfsd_net *nn)
 		list_del_init(&clp->cl_ra_cblist);
 		clp->cl_ra->ra_keep = 0;
 		clp->cl_ra->ra_bmval[0] = BIT(RCA4_TYPE_MASK_RDATA_DLG);
+		clp->cl_ra->ra_bmval[0] = BIT(RCA4_TYPE_MASK_RDATA_DLG) |
+						BIT(RCA4_TYPE_MASK_WDATA_DLG);
 		trace_nfsd_cb_recall_any(clp->cl_ra);
 		nfsd4_run_cb(&clp->cl_ra->ra_cb);
 	}