mirror of
https://github.com/torvalds/linux.git
synced 2026-05-30 10:04:04 +02:00
NFS: remove nfs_free_delegation
Open code nfs_free_delegation in the callers, because having a "free" function that wraps a revoke and put operation is a bit confusing, especially when the __free version does the actual freeing triggered by the last put. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Anna Schumaker <anna.schumaker@oracle.com>
This commit is contained in:
parent
8cb32b9344
commit
20151c1136
|
|
@ -72,13 +72,6 @@ static void nfs_put_delegation(struct nfs_delegation *delegation)
|
|||
__nfs_free_delegation(delegation);
|
||||
}
|
||||
|
||||
static void nfs_free_delegation(struct nfs_server *server,
|
||||
struct nfs_delegation *delegation)
|
||||
{
|
||||
nfs_mark_delegation_revoked(server, delegation);
|
||||
nfs_put_delegation(delegation);
|
||||
}
|
||||
|
||||
/**
|
||||
* nfs_mark_delegation_referenced - set delegation's REFERENCED flag
|
||||
* @delegation: delegation to process
|
||||
|
|
@ -539,7 +532,8 @@ int nfs_inode_set_delegation(struct inode *inode, const struct cred *cred,
|
|||
__nfs_free_delegation(delegation);
|
||||
if (freeme != NULL) {
|
||||
nfs_do_return_delegation(inode, freeme, 0);
|
||||
nfs_free_delegation(server, freeme);
|
||||
nfs_mark_delegation_revoked(server, freeme);
|
||||
nfs_put_delegation(freeme);
|
||||
}
|
||||
return status;
|
||||
}
|
||||
|
|
@ -752,7 +746,8 @@ void nfs_inode_evict_delegation(struct inode *inode)
|
|||
|
||||
set_bit(NFS_DELEGATION_RETURNING, &delegation->flags);
|
||||
nfs_do_return_delegation(inode, delegation, 1);
|
||||
nfs_free_delegation(server, delegation);
|
||||
nfs_mark_delegation_revoked(server, delegation);
|
||||
nfs_put_delegation(delegation);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -1250,8 +1245,10 @@ static int nfs_server_reap_unclaimed_delegations(struct nfs_server *server,
|
|||
rcu_read_unlock();
|
||||
if (delegation != NULL) {
|
||||
if (nfs_detach_delegation(NFS_I(inode), delegation,
|
||||
server) != NULL)
|
||||
nfs_free_delegation(server, delegation);
|
||||
server) != NULL) {
|
||||
nfs_mark_delegation_revoked(server, delegation);
|
||||
nfs_put_delegation(delegation);
|
||||
}
|
||||
/* Match nfs_start_delegation_return */
|
||||
nfs_put_delegation(delegation);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user