Ext3 not marking filesystems as with errors

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: <linux-ext4@...>
Cc: <linux-kernel@...>
Date: Thursday, September 20, 2007 - 8:50 am

Hi,

  one friend has just pointed me to a following misbehaviour of ext3. If we
stumble on some error in JBD (e.g. in commit code), we call
__journal_abort_hard(). It just marks the journal as aborted but does
nothing else. Later ext3 comes, finds journal aborted, calls ext3_abort()
which remounts fs read-only and stops (it does not mark filesystem as
having errors). It calls journal_abort(.., -EIO) but that does nothing
because the journal is already aborted. If you then unmount the filesystem
and mount it again, everything goes on happily as if there was no error -
no suggestion for running fsck, nothing.
  I guess this is a bug but please correct me if you don't think so. There
are two possibilities how to fix it - either we mark the filesystem as with
errors in ext3_abort() or we could call some less lowlevel function from
JBD to abort journal (as soon as j_errno is set, we are safe). Any feeling
what is less hacky?

									Honza

-- 
Jan Kara <jack@suse.cz>
SUSE Labs, CR
-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Ext3 not marking filesystems as with errors, Jan Kara, (Thu Sep 20, 8:50 am)