aboutsummaryrefslogtreecommitdiff
path: root/fs/hpfs/super.c
diff options
context:
space:
mode:
authorMark Brown <broonie@linaro.org>2014-03-14 12:32:15 +0000
committerMark Brown <broonie@linaro.org>2014-03-14 12:32:15 +0000
commitf58d5ed0c4c47aa8dbcc4f7a58e4c52752ce6511 (patch)
treefb4b04d21b4d8654b0e7a615f2b3bc445b48d08c /fs/hpfs/super.c
parent8bb495e3f02401ee6f76d1b1d77f3ac9f079e376 (diff)
parenteb192460ccd50e73475b6092a8953ef7945921c8 (diff)
Merge branch 'linux-linaro-lsk-v3.10/be/32/core-20140413' of git://git.linaro.org/people/victor.kamensky/linux-linaro-tracking-be into lsk-v3.10-bev3.10/topic/old-arm64-bev3.10/topic/be
Diffstat (limited to 'fs/hpfs/super.c')
-rw-r--r--fs/hpfs/super.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/fs/hpfs/super.c b/fs/hpfs/super.c
index a0617e706957..962e90c37aec 100644
--- a/fs/hpfs/super.c
+++ b/fs/hpfs/super.c
@@ -558,7 +558,13 @@ static int hpfs_fill_super(struct super_block *s, void *options, int silent)
sbi->sb_cp_table = NULL;
sbi->sb_c_bitmap = -1;
sbi->sb_max_fwd_alloc = 0xffffff;
-
+
+ if (sbi->sb_fs_size >= 0x80000000) {
+ hpfs_error(s, "invalid size in superblock: %08x",
+ (unsigned)sbi->sb_fs_size);
+ goto bail4;
+ }
+
/* Load bitmap directory */
if (!(sbi->sb_bmp_dir = hpfs_load_bitmap_directory(s, le32_to_cpu(superblock->bitmaps))))
goto bail4;