2012-05-22 10:28:59

by Stanislav Kinsbursky

[permalink] [raw]
Subject: [PATCH] NFSd: simplify locking in nfsd_recall_delegations()

Holding of client_mutex looks redundant here - holding of recall_lock looks
enough.

Signed-off-by: Stanislav Kinsbursky <[email protected]>
---
fs/nfsd/nfs4state.c | 2 --
1 files changed, 0 insertions(+), 2 deletions(-)

diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
index f004e61..fdef9fc 100644
--- a/fs/nfsd/nfs4state.c
+++ b/fs/nfsd/nfs4state.c
@@ -4744,11 +4744,9 @@ void nfsd_recall_delegations(u64 num)
{
unsigned int count;

- nfs4_lock_state();
spin_lock(&recall_lock);
count = nfsd_process_n_delegations(num, nfsd_break_one_deleg, NULL);
spin_unlock(&recall_lock);
- nfs4_unlock_state();

printk(KERN_INFO "NFSD: Recalled %d delegations", count);
}



2012-05-24 12:30:56

by Benny Halevy

[permalink] [raw]
Subject: Re: [PATCH] NFSd: simplify locking in nfsd_recall_delegations()

On 2012-05-22 13:28, Stanislav Kinsbursky wrote:
> Holding of client_mutex looks redundant here - holding of recall_lock looks
> enough.

Looking at the code, agreed.

Benny

>
> Signed-off-by: Stanislav Kinsbursky <[email protected]>
> ---
> fs/nfsd/nfs4state.c | 2 --
> 1 files changed, 0 insertions(+), 2 deletions(-)
>
> diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
> index f004e61..fdef9fc 100644
> --- a/fs/nfsd/nfs4state.c
> +++ b/fs/nfsd/nfs4state.c
> @@ -4744,11 +4744,9 @@ void nfsd_recall_delegations(u64 num)
> {
> unsigned int count;
>
> - nfs4_lock_state();
> spin_lock(&recall_lock);
> count = nfsd_process_n_delegations(num, nfsd_break_one_deleg, NULL);
> spin_unlock(&recall_lock);
> - nfs4_unlock_state();
>
> printk(KERN_INFO "NFSD: Recalled %d delegations", count);
> }
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html