Jeff Mahoney 47f365eb57 hfs: fix oops on mount with corrupted btree extent records
A particular fsfuzzer run caused an hfs file system to crash on mount.
This is due to a corrupted MDB extent record causing a miscalculation of
HFS_I(inode)->first_blocks for the extent tree.  If the extent records are
zereod out, it won't trigger the first_blocks special case.  Instead it
falls through to the extent code which we're still in the middle of
initializing.

This patch catches the 0 size extent records, reports the corruption, and
fails the mount.

Reported-by: Ramon de Carvalho Valle <rcvalle@linux.vnet.ibm.com>
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Cc: Valdis Kletnieks <Valdis.Kletnieks@vt.edu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-10-29 07:39:29 -07:00
..
2009-09-23 13:03:46 -05:00
2009-10-01 16:11:16 -07:00
2009-10-04 15:05:10 -07:00
2009-09-30 12:19:44 -05:00
2009-09-23 18:13:10 -07:00
2009-10-20 18:02:33 -04:00
2009-10-29 07:39:25 -07:00
2009-09-24 08:41:47 -04:00
2009-09-24 08:41:47 -04:00
2009-09-24 07:21:01 -07:00
2009-09-24 07:21:03 -07:00
2009-09-24 07:21:01 -07:00
2009-09-24 07:47:27 -04:00
2009-10-22 08:11:44 +09:00
2009-10-04 15:05:10 -07:00