NFSD: Fix nfsd_breaker_owns_lease() return values

[ Upstream commit 50719bf344 ]

These have been incorrect since the function was introduced.

A proper kerneldoc comment is added since this function, though
static, is part of an external interface.

Reported-by: Dai Ngo <dai.ngo@oracle.com>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
Chuck Lever 2022-02-14 15:30:13 -05:00 committed by Greg Kroah-Hartman
parent f68caedf26
commit 7260793c13

View file

@ -4693,6 +4693,14 @@ nfsd_break_deleg_cb(struct file_lock *fl)
return ret;
}
/**
* nfsd_breaker_owns_lease - Check if lease conflict was resolved
* @fl: Lock state to check
*
* Return values:
* %true: Lease conflict was resolved
* %false: Lease conflict was not resolved.
*/
static bool nfsd_breaker_owns_lease(struct file_lock *fl)
{
struct nfs4_delegation *dl = fl->fl_owner;
@ -4700,11 +4708,11 @@ static bool nfsd_breaker_owns_lease(struct file_lock *fl)
struct nfs4_client *clp;
if (!i_am_nfsd())
return NULL;
return false;
rqst = kthread_data(current);
/* Note rq_prog == NFS_ACL_PROGRAM is also possible: */
if (rqst->rq_prog != NFS_PROGRAM || rqst->rq_vers < 4)
return NULL;
return false;
clp = *(rqst->rq_lease_breaker);
return dl->dl_stid.sc_client == clp;
}