befs_dump_super_block was called between befs_load_sb and befs_check_sb. It has been reported to crash (5/900) with null block testing. This patch loads, checks and only dump superblock if it's a valid one then brelse bh. (befs_dump_super_block uses disk_sb (bh->b_data) so it seems we need to call it before brelse(bh) but I don't know why befs_check_sb was called after brelse. Another thing I don't understand is why this problem appears now). Signed-off-by: Fabian Frederick <fabf@skynet.be> Reported-by: Fengguang Wu <fengguang.wu@intel.com> Cc: Joe Perches <joe@perches.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> |
||
|---|---|---|
| .. | ||
| befs.h | ||
| befs_fs_types.h | ||
| btree.c | ||
| btree.h | ||
| ChangeLog | ||
| datastream.c | ||
| datastream.h | ||
| debug.c | ||
| endian.h | ||
| inode.c | ||
| inode.h | ||
| io.c | ||
| io.h | ||
| Kconfig | ||
| linuxvfs.c | ||
| Makefile | ||
| super.c | ||
| super.h | ||
| TODO | ||