The current ext3 totally ignores I/O errors that happened during a
journal_force_commit time, causing user space to falsely believe it has
succeeded, which actually did not.
This patch checks IO error during journal_commit_transaction. and aborts
the journal when there is I/O error.
Originally I thought about reporting the error without doing aborting the
journal, but it probably needs a new flag. Aborting the journal seems to be
the easy way to signal "hey sth is wrong..".