summary refs log tree commit diff
path: root/fs/reiserfs
diff options
context:
space:
mode:
authorFabian Frederick <fabf@skynet.be>2014-10-13 15:53:29 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2014-10-14 02:18:20 +0200
commit54cc6cea73bb5ddf0362a70ef58816898bfb7f87 (patch)
tree19245a625a45f333483ffe0a12e4c2071d3a9562 /fs/reiserfs
parent35c0b380d81bd566c37a252399f008928ef4b2cd (diff)
downloadlinux-54cc6cea73bb5ddf0362a70ef58816898bfb7f87.tar.gz
fs/reiserfs/journal.c: fix sparse context imbalance warning
Merge conditional unlock/lock in the same condition to avoid sparse
warning:

  fs/reiserfs/journal.c:703:36: warning: context imbalance in 'add_to_chunk' - unexpected unlock

Signed-off-by: Fabian Frederick <fabf@skynet.be>
Cc: Jeff Mahoney <jeffm@suse.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/reiserfs')
-rw-r--r--fs/reiserfs/journal.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/fs/reiserfs/journal.c b/fs/reiserfs/journal.c
index a88b1b3e7db3..d571e173a990 100644
--- a/fs/reiserfs/journal.c
+++ b/fs/reiserfs/journal.c
@@ -699,11 +699,13 @@ static int add_to_chunk(struct buffer_chunk *chunk, struct buffer_head *bh,
 	chunk->bh[chunk->nr++] = bh;
 	if (chunk->nr >= CHUNK_SIZE) {
 		ret = 1;
-		if (lock)
+		if (lock) {
 			spin_unlock(lock);
-		fn(chunk);
-		if (lock)
+			fn(chunk);
 			spin_lock(lock);
+		} else {
+			fn(chunk);
+		}
 	}
 	return ret;
 }