diff options
Diffstat (limited to 'fs/ext4')
-rw-r--r-- | fs/ext4/super.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/fs/ext4/super.c b/fs/ext4/super.c index 511997ef6f0e..e34fc2d6dbf5 100644 --- a/fs/ext4/super.c +++ b/fs/ext4/super.c | |||
@@ -1506,14 +1506,13 @@ static int ext4_fill_flex_info(struct super_block *sb) | |||
1506 | 1506 | ||
1507 | flex_group_count = (sbi->s_groups_count + groups_per_flex - 1) / | 1507 | flex_group_count = (sbi->s_groups_count + groups_per_flex - 1) / |
1508 | groups_per_flex; | 1508 | groups_per_flex; |
1509 | sbi->s_flex_groups = kmalloc(flex_group_count * | 1509 | sbi->s_flex_groups = kzalloc(flex_group_count * |
1510 | sizeof(struct flex_groups), GFP_KERNEL); | 1510 | sizeof(struct flex_groups), GFP_KERNEL); |
1511 | if (sbi->s_flex_groups == NULL) { | 1511 | if (sbi->s_flex_groups == NULL) { |
1512 | printk(KERN_ERR "EXT4-fs: not enough memory\n"); | 1512 | printk(KERN_ERR "EXT4-fs: not enough memory for " |
1513 | "%lu flex groups\n", flex_group_count); | ||
1513 | goto failed; | 1514 | goto failed; |
1514 | } | 1515 | } |
1515 | memset(sbi->s_flex_groups, 0, flex_group_count * | ||
1516 | sizeof(struct flex_groups)); | ||
1517 | 1516 | ||
1518 | gdp = ext4_get_group_desc(sb, 1, &bh); | 1517 | gdp = ext4_get_group_desc(sb, 1, &bh); |
1519 | block_bitmap = ext4_block_bitmap(sb, gdp) - 1; | 1518 | block_bitmap = ext4_block_bitmap(sb, gdp) - 1; |