From: Theodore Ts'o Date: Wed, 4 Jun 2008 02:31:11 +0000 (-0400) Subject: jbd2: Fix barrier fallback code to re-lock the buffer head X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=034772b068be62a79470d6c1b81b01fbe27793ac;p=linux-2.6 jbd2: Fix barrier fallback code to re-lock the buffer head If the device doesn't support write barriers, the write is retried without ordered mode. But the buffer head needs to be re-locked or submit_bh will fail with on BUG(!buffer_locked(bh)). Signed-off-by: "Theodore Ts'o" --- diff --git a/fs/jbd2/commit.c b/fs/jbd2/commit.c index 4d99685fdc..a2ed72f7ce 100644 --- a/fs/jbd2/commit.c +++ b/fs/jbd2/commit.c @@ -168,6 +168,7 @@ static int journal_submit_commit_record(journal_t *journal, spin_unlock(&journal->j_state_lock); /* And try again, without the barrier */ + lock_buffer(bh); set_buffer_uptodate(bh); set_buffer_dirty(bh); ret = submit_bh(WRITE, bh);