Re: [PATCH 3/5] ocfs2: Add missing annotation for dlm_empty_lockres()

From: Joseph Qi
Date: Fri Apr 03 2020 - 19:47:35 EST




On 2020/4/4 00:05, Jules Irenge wrote:
> Sparse reports a warning at dlm_empty_lockres()
>
> warning: context imbalance in dlm_purge_lockres() - unexpected unlock
>
> The root cause is the missing annotation at dlm_purge_lockres()
>
> Add the missing __must_hold(&dlm->spinlock)
>
Seems this is duplicate with assert_spin_locked()?

Thanks,
Joseph

> Signed-off-by: Jules Irenge <jbi.octave@xxxxxxxxx>
> ---
> fs/ocfs2/dlm/dlmmaster.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/fs/ocfs2/dlm/dlmmaster.c b/fs/ocfs2/dlm/dlmmaster.c
> index 900f7e466d11..8cbd46b3509a 100644
> --- a/fs/ocfs2/dlm/dlmmaster.c
> +++ b/fs/ocfs2/dlm/dlmmaster.c
> @@ -2762,6 +2762,7 @@ static int dlm_migrate_lockres(struct dlm_ctxt *dlm,
> * Returns: 1 if dlm->spinlock was dropped/retaken, 0 if never dropped
> */
> int dlm_empty_lockres(struct dlm_ctxt *dlm, struct dlm_lock_resource *res)
> + __must_hold(&dlm->spinlock)
> {
> int ret;
> int lock_dropped = 0;
>