ext4: Remove bogus BUG() check in ext4_bmap()
authorTheodore Ts'o <tytso@mit.edu>
Fri, 30 Jan 2009 05:00:24 +0000 (00:00 -0500)
committerTheodore Ts'o <tytso@mit.edu>
Fri, 30 Jan 2009 05:00:24 +0000 (00:00 -0500)
commitb9ec63f78b425c0e16cc95605b5d4ff2dc228b97
tree702f3b10c7462a94fb130133257a063a289d495f
parent9fd9784c91db79e953ea3fe3741f885bdc390a72
ext4: Remove bogus BUG() check in ext4_bmap()

The code to support journal-less ext4 operation added a BUG to
ext4_bmap() which fired if there was no journal and the
EXT4_STATE_JDATA bit was set in the i_state field.  This caused
running the filefrag program (which uses the FIMBAP ioctl) to trigger
a BUG().

The EXT4_STATE_JDATA bit is only used for ext4_bmap(), and it's
harmless for the bit to be set.  We could add a check in
__ext4_journalled_writepage() and ext4_journalled_write_end() to only
set the EXT4_STATE_JDATA bit if the journal is present, but that adds
an extra test and jump instruction.  It's easier to simply remove the
BUG check.

http://bugzilla.kernel.org/show_bug.cgi?id=12568

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