jbd2: Add barrier not supported test to journal_wait_on_commit_record
authorTheodore Ts'o <tytso@mit.edu>
Tue, 6 Jan 2009 02:34:13 +0000 (21:34 -0500)
committerTheodore Ts'o <tytso@mit.edu>
Tue, 6 Jan 2009 02:34:13 +0000 (21:34 -0500)
commitfd98496f467b3d26d05ab1498f41718b5ef13de5
tree27e29934f5c2ee5ccc060de27dee261d31d6842c
parent0390131ba84fd3f726f9e24fc4553828125700bb
jbd2: Add barrier not supported test to journal_wait_on_commit_record

Xen doesn't report that barriers are not supported until buffer I/O is
reported as completed, instead of when the buffer I/O is submitted.
Add a check and a fallback codepath to journal_wait_on_commit_record()
to detect this case, so that attempts to mount ext4 filesystems on
LVM/devicemapper devices on Xen guests don't blow up with an "Aborting
journal on device XXX"; "Remounting filesystem read-only" error.

Thanks to Andreas Sundstrom for reporting this issue.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Cc: stable@kernel.org
fs/jbd2/commit.c