diff options
author | Fabian Frederick <fabf@skynet.be> | 2014-08-08 23:20:31 +0200 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-08-09 00:57:20 +0200 |
commit | 8e19189ef8d1fce44f3acdf0fe9846cff9b37c78 (patch) | |
tree | 0c4af0f63e37fa6353cf71002a4e500d5c5a0365 /fs/internal.h | |
parent | minix zmap block counts calculation fix (diff) | |
download | linux-8e19189ef8d1fce44f3acdf0fe9846cff9b37c78.tar.xz linux-8e19189ef8d1fce44f3acdf0fe9846cff9b37c78.zip |
fs/befs/linuxvfs.c: check superblock before dump operation
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>
Diffstat (limited to 'fs/internal.h')
0 files changed, 0 insertions, 0 deletions