All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jules Irenge <jbi.octave@gmail.com>
To: linux-kernel@vger.kernel.org
Cc: boqun.feng@gmail.com, Alasdair Kergon <agk@redhat.com>,
	Mike Snitzer <snitzer@redhat.com>,
	"maintainer:DEVICE-MAPPER LVM" <dm-devel@redhat.com>
Subject: [PATCH 1/9] dm snapshot: Add missing annotation for dm_exception_table_lock() and dm_exception_table_unlock()
Date: Sat, 11 Apr 2020 01:19:25 +0100	[thread overview]
Message-ID: <20200411001933.10072-2-jbi.octave@gmail.com> (raw)
In-Reply-To: <20200411001933.10072-1-jbi.octave@gmail.com>

Sparse reports warnings at dm_exception_table_lock()
and dm_exception_table_unlock()

warning: context imbalance in dm_exception_table_lock()
	- wrong count at exit
warning: context imbalance in dm_exception_table_unlock()
	- unexpected unlock

The root cause is the missing annotation at dm_exception_table_lock()
and dm_exception_table_unlock()

Add the missing __acquires(lock->complete_slot) annotation
Add the missing __acquires(lock->pending_slot) annotation
Add the missing __releases(lock->pending_slot) annotation
Add the missing __releases(lock->complete_slot) annotation

Signed-off-by: Jules Irenge <jbi.octave@gmail.com>
---
 drivers/md/dm-snap.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/md/dm-snap.c b/drivers/md/dm-snap.c
index 6b11a266299f..1831dd28de5c 100644
--- a/drivers/md/dm-snap.c
+++ b/drivers/md/dm-snap.c
@@ -640,12 +640,16 @@ static void dm_exception_table_lock_init(struct dm_snapshot *s, chunk_t chunk,
 }
 
 static void dm_exception_table_lock(struct dm_exception_table_lock *lock)
+	__acquires(lock->complete_slot)
+	__acquires(lock->pending_slot)
 {
 	hlist_bl_lock(lock->complete_slot);
 	hlist_bl_lock(lock->pending_slot);
 }
 
 static void dm_exception_table_unlock(struct dm_exception_table_lock *lock)
+	__releases(lock->pending_slot)
+	__releases(lock->complete_slot)
 {
 	hlist_bl_unlock(lock->pending_slot);
 	hlist_bl_unlock(lock->complete_slot);
-- 
2.24.1

WARNING: multiple messages have this Message-ID (diff)
From: Jules Irenge <jbi.octave@gmail.com>
To: linux-kernel@vger.kernel.org
Cc: boqun.feng@gmail.com, Alasdair Kergon <agk@redhat.com>,
	Mike Snitzer <snitzer@redhat.com>,
	dm-devel@redhat.com (maintainer:DEVICE-MAPPER (LVM))
Subject: [PATCH 1/9] dm snapshot: Add missing annotation for dm_exception_table_lock() and dm_exception_table_unlock()
Date: Sat, 11 Apr 2020 01:19:25 +0100	[thread overview]
Message-ID: <20200411001933.10072-2-jbi.octave@gmail.com> (raw)
In-Reply-To: <20200411001933.10072-1-jbi.octave@gmail.com>

Sparse reports warnings at dm_exception_table_lock()
and dm_exception_table_unlock()

warning: context imbalance in dm_exception_table_lock()
	- wrong count at exit
warning: context imbalance in dm_exception_table_unlock()
	- unexpected unlock

The root cause is the missing annotation at dm_exception_table_lock()
and dm_exception_table_unlock()

Add the missing __acquires(lock->complete_slot) annotation
Add the missing __acquires(lock->pending_slot) annotation
Add the missing __releases(lock->pending_slot) annotation
Add the missing __releases(lock->complete_slot) annotation

Signed-off-by: Jules Irenge <jbi.octave@gmail.com>
---
 drivers/md/dm-snap.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/md/dm-snap.c b/drivers/md/dm-snap.c
index 6b11a266299f..1831dd28de5c 100644
--- a/drivers/md/dm-snap.c
+++ b/drivers/md/dm-snap.c
@@ -640,12 +640,16 @@ static void dm_exception_table_lock_init(struct dm_snapshot *s, chunk_t chunk,
 }
 
 static void dm_exception_table_lock(struct dm_exception_table_lock *lock)
+	__acquires(lock->complete_slot)
+	__acquires(lock->pending_slot)
 {
 	hlist_bl_lock(lock->complete_slot);
 	hlist_bl_lock(lock->pending_slot);
 }
 
 static void dm_exception_table_unlock(struct dm_exception_table_lock *lock)
+	__releases(lock->pending_slot)
+	__releases(lock->complete_slot)
 {
 	hlist_bl_unlock(lock->pending_slot);
 	hlist_bl_unlock(lock->complete_slot);
-- 
2.24.1


  reply	other threads:[~2020-04-11  0:19 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <0/9>
2020-04-11  0:19 ` [PATCH 0/9] Lock warning cleanups Jules Irenge
2020-04-11  0:19   ` Jules Irenge
2020-04-11  0:19   ` Jules Irenge
2020-04-11  0:19   ` Jules Irenge [this message]
2020-04-11  0:19     ` [PATCH 1/9] dm snapshot: Add missing annotation for dm_exception_table_lock() and dm_exception_table_unlock() Jules Irenge
2020-04-11  0:19   ` [PATCH 2/9] mt76: remove unnecessary annotations Jules Irenge
2020-04-11  0:19     ` Jules Irenge
2020-04-11  0:19     ` Jules Irenge
2020-04-11  0:19   ` [PATCH 3/9] hostap: Add missing annotations for prism2_bss_list_proc_start() and prism2_bss_list_proc_stop Jules Irenge
2020-04-15  8:42     ` Kalle Valo
2020-04-11  0:19   ` [PATCH 4/9] mac80211: Add missing annotation for brcms_rfkill_set_hw_state() Jules Irenge
2020-04-15  8:44     ` [PATCH 4/9] brcmsmac: " Kalle Valo
2020-04-11  0:19   ` [PATCH 5/9] mac80211: Add missing annotation for brcms_down() Jules Irenge
2020-04-15  8:45     ` [PATCH 5/9] brcmsmac: " Kalle Valo
2020-04-11  0:19   ` [PATCH 6/9] scsi: libsas: Add missing annotation for sas_ata_qc_issue() Jules Irenge
2020-04-14  7:35     ` John Garry
2020-04-15  1:44     ` Martin K. Petersen
2020-04-11  0:19   ` [PATCH 7/9] scsi: bnx2fc: Add missing annotation for bnx2fc_abts_cleanup() Jules Irenge
2020-04-24 16:56     ` Martin K. Petersen
2020-04-11  0:19   ` [PATCH 8/9] power: wakeup: Add missing annotation for wakeup_sources_stats_seq_start() and wakeup_sources_stats_seq_stop() Jules Irenge
2020-04-11  0:19   ` [PATCH 9/9] power: wakeup: Add missing annotation for wakeup_sources_read_lock() and wakeup_sources_read_unlock() Jules Irenge

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200411001933.10072-2-jbi.octave@gmail.com \
    --to=jbi.octave@gmail.com \
    --cc=agk@redhat.com \
    --cc=boqun.feng@gmail.com \
    --cc=dm-devel@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=snitzer@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.