mirror of
https://github.com/torvalds/linux.git
synced 2026-05-30 10:04:04 +02:00
NFS: open code nfs_delegation_need_return
There is only a single caller, and the function can be condensed into a single if statement, making it more clear what is being tested there. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Anna Schumaker <anna.schumaker@oracle.com>
This commit is contained in:
parent
86ac1b7b61
commit
8cb32b9344
|
|
@ -591,22 +591,6 @@ static int nfs_end_delegation_return(struct inode *inode, struct nfs_delegation
|
|||
return err;
|
||||
}
|
||||
|
||||
static bool nfs_delegation_need_return(struct nfs_delegation *delegation)
|
||||
{
|
||||
bool ret = false;
|
||||
|
||||
trace_nfs_delegation_need_return(delegation);
|
||||
|
||||
if (test_and_clear_bit(NFS_DELEGATION_RETURN, &delegation->flags))
|
||||
ret = true;
|
||||
if (test_bit(NFS_DELEGATION_RETURNING, &delegation->flags) ||
|
||||
test_bit(NFS_DELEGATION_RETURN_DELAYED, &delegation->flags) ||
|
||||
test_bit(NFS_DELEGATION_REVOKED, &delegation->flags))
|
||||
ret = false;
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int nfs_server_return_marked_delegations(struct nfs_server *server,
|
||||
void __always_unused *data)
|
||||
{
|
||||
|
|
@ -641,11 +625,17 @@ static int nfs_server_return_marked_delegations(struct nfs_server *server,
|
|||
list_for_each_entry_from_rcu(delegation, &server->delegations, super_list) {
|
||||
struct inode *to_put = NULL;
|
||||
|
||||
if (!nfs_delegation_need_return(delegation)) {
|
||||
trace_nfs_delegation_need_return(delegation);
|
||||
|
||||
if (!test_and_clear_bit(NFS_DELEGATION_RETURN, &delegation->flags) ||
|
||||
test_bit(NFS_DELEGATION_RETURNING, &delegation->flags) ||
|
||||
test_bit(NFS_DELEGATION_RETURN_DELAYED, &delegation->flags) ||
|
||||
test_bit(NFS_DELEGATION_REVOKED, &delegation->flags)) {
|
||||
if (nfs4_is_valid_delegation(delegation, 0))
|
||||
prev = delegation;
|
||||
continue;
|
||||
}
|
||||
|
||||
inode = nfs_delegation_grab_inode(delegation);
|
||||
if (inode == NULL)
|
||||
continue;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user