summaryrefslogtreecommitdiffstats
path: root/fs/reiserfs/journal.c
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/journal.c
parent35c0b380d81bd566c37a252399f008928ef4b2cd (diff)
downloadlinux-54cc6cea73bb5ddf0362a70ef58816898bfb7f87.tar.gz
linux-54cc6cea73bb5ddf0362a70ef58816898bfb7f87.tar.bz2
linux-54cc6cea73bb5ddf0362a70ef58816898bfb7f87.zip
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/journal.c')
-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;
}