jbd: don't write superblock when unmounting an ro filesystem
authorJan Kara <jack@suse.cz>
Wed, 15 Aug 2012 11:50:27 +0000 (13:50 +0200)
committerJan Kara <jack@suse.cz>
Wed, 15 Aug 2012 11:53:30 +0000 (13:53 +0200)
commit2e84f2641ea91a730642ead558a4ee3bd52310c9
tree5eece24a86e0648a3ec235694e7f0a50ffb3cbd8
parent48d1788493f874e5d32dccb2911a7bc91c248b4b
jbd: don't write superblock when unmounting an ro filesystem

This sequence:

results in an IO error when unmounting the RO filesystem. The bug was
introduced by:

commit 9754e39c7bc51328f145e933bfb0df47cd67b6e9
Author: Jan Kara <jack@suse.cz>
Date:   Sat Apr 7 12:33:03 2012 +0200

    jbd: Split updating of journal superblock and marking journal empty

which lost some of the magic in journal_update_superblock() which
used to test for a journal with no outstanding transactions.

This is a port of a jbd2 fix by Eric Sandeen.

CC: <stable@vger.kernel.org> # 3.4.x
Signed-off-by: Jan Kara <jack@suse.cz>
fs/jbd/journal.c