Jules Irenge
2020-Apr-03 16:05 UTC
[Ocfs2-devel] [PATCH 3/5] ocfs2: Add missing annotation for dlm_empty_lockres()
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) Signed-off-by: Jules Irenge <jbi.octave at gmail.com> --- 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; -- 2.24.1
Joseph Qi
2020-Apr-03 23:45 UTC
[Ocfs2-devel] [PATCH 3/5] ocfs2: Add missing annotation for dlm_empty_lockres()
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 at gmail.com> > --- > 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; >