From 727e1d084f62f77380c2cbbbb7ce68c4b1671b7c Mon Sep 17 00:00:00 2001 From: Dmitry Monakhov Date: Tue, 25 Sep 2012 23:19:25 -0400 Subject: [PATCH] --- yaml --- r: 331595 b: refs/heads/master c: 7f1468d1d50d368097ab13596dc08eaba7eace7f h: refs/heads/master i: 331593: 094b96558749be4a82f61aa2b38daca1fe7c631e 331591: f2f6a285778afcb968d05f0e3e40b152a9f6b585 v: v3 --- [refs] | 2 +- trunk/fs/ext4/resize.c | 15 +++++---------- 2 files changed, 6 insertions(+), 11 deletions(-) diff --git a/[refs] b/[refs] index a3108c390bdf..7eaa8d02425f 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: f2a09af645b762f8230e7eba7fee3b6f7e6e96e7 +refs/heads/master: 7f1468d1d50d368097ab13596dc08eaba7eace7f diff --git a/trunk/fs/ext4/resize.c b/trunk/fs/ext4/resize.c index 9f821ce39800..f21fdbf5c75d 100644 --- a/trunk/fs/ext4/resize.c +++ b/trunk/fs/ext4/resize.c @@ -1181,17 +1181,12 @@ static struct buffer_head *ext4_get_bitmap(struct super_block *sb, __u64 block) struct buffer_head *bh = sb_getblk(sb, block); if (!bh) return NULL; - - if (bitmap_uptodate(bh)) - return bh; - - lock_buffer(bh); - if (bh_submit_read(bh) < 0) { - unlock_buffer(bh); - brelse(bh); - return NULL; + if (!bh_uptodate_or_lock(bh)) { + if (bh_submit_read(bh) < 0) { + brelse(bh); + return NULL; + } } - unlock_buffer(bh); return bh; }