mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-07 20:58:14 -04:00
NFS: cleanup nfs_inode_reclaim_delegation
Reduce a level of indentation for most of the code in this function. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Jeff Layton <jlayton@kernel.org> Link: https://lore.kernel.org/r/20250718081509.2607553-3-hch@lst.de Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
This commit is contained in:
committed by
Trond Myklebust
parent
67173860a7
commit
7375bbad46
@@ -237,34 +237,34 @@ void nfs_inode_reclaim_delegation(struct inode *inode, const struct cred *cred,
|
||||
|
||||
rcu_read_lock();
|
||||
delegation = rcu_dereference(NFS_I(inode)->delegation);
|
||||
if (delegation != NULL) {
|
||||
spin_lock(&delegation->lock);
|
||||
nfs4_stateid_copy(&delegation->stateid, stateid);
|
||||
delegation->type = type;
|
||||
delegation->pagemod_limit = pagemod_limit;
|
||||
oldcred = delegation->cred;
|
||||
delegation->cred = get_cred(cred);
|
||||
switch (deleg_type) {
|
||||
case NFS4_OPEN_DELEGATE_READ_ATTRS_DELEG:
|
||||
case NFS4_OPEN_DELEGATE_WRITE_ATTRS_DELEG:
|
||||
set_bit(NFS_DELEGATION_DELEGTIME, &delegation->flags);
|
||||
break;
|
||||
default:
|
||||
clear_bit(NFS_DELEGATION_DELEGTIME, &delegation->flags);
|
||||
}
|
||||
clear_bit(NFS_DELEGATION_NEED_RECLAIM, &delegation->flags);
|
||||
if (test_and_clear_bit(NFS_DELEGATION_REVOKED,
|
||||
&delegation->flags))
|
||||
atomic_long_inc(&nfs_active_delegations);
|
||||
spin_unlock(&delegation->lock);
|
||||
rcu_read_unlock();
|
||||
put_cred(oldcred);
|
||||
trace_nfs4_reclaim_delegation(inode, type);
|
||||
} else {
|
||||
if (!delegation) {
|
||||
rcu_read_unlock();
|
||||
nfs_inode_set_delegation(inode, cred, type, stateid,
|
||||
pagemod_limit, deleg_type);
|
||||
return;
|
||||
}
|
||||
|
||||
spin_lock(&delegation->lock);
|
||||
nfs4_stateid_copy(&delegation->stateid, stateid);
|
||||
delegation->type = type;
|
||||
delegation->pagemod_limit = pagemod_limit;
|
||||
oldcred = delegation->cred;
|
||||
delegation->cred = get_cred(cred);
|
||||
switch (deleg_type) {
|
||||
case NFS4_OPEN_DELEGATE_READ_ATTRS_DELEG:
|
||||
case NFS4_OPEN_DELEGATE_WRITE_ATTRS_DELEG:
|
||||
set_bit(NFS_DELEGATION_DELEGTIME, &delegation->flags);
|
||||
break;
|
||||
default:
|
||||
clear_bit(NFS_DELEGATION_DELEGTIME, &delegation->flags);
|
||||
}
|
||||
clear_bit(NFS_DELEGATION_NEED_RECLAIM, &delegation->flags);
|
||||
if (test_and_clear_bit(NFS_DELEGATION_REVOKED, &delegation->flags))
|
||||
atomic_long_inc(&nfs_active_delegations);
|
||||
spin_unlock(&delegation->lock);
|
||||
rcu_read_unlock();
|
||||
put_cred(oldcred);
|
||||
trace_nfs4_reclaim_delegation(inode, type);
|
||||
}
|
||||
|
||||
static int nfs_do_return_delegation(struct inode *inode,
|
||||
|
||||
Reference in New Issue
Block a user