ext4: use variables not types in sizeofs() for allocations
PATCH 1/2 ext4: use variables not types in sizeofs() for allocations
Precursor to changing some types; to keep things in sync, it seems better to allocate/memset based on the size of the variables we are using rather than on some disconnected basic type like "unsigned short"
Signed-off-by Eric Sandeen <[email protected]>
---
p.s. feel free to be sure I've *'d all my ptrs correctly. :)
fs/ext4/mballoc.c +4 -3
@@ -867,7 +867,8 @@ static int ext4_mb_init_cache(struct page *page, char *incore) grinfo =ext4_get_group_info (sb, group); grinfo->bb_fragments =0 ;memset (grinfo->bb_counters,0 , -sizeof (unsigned short )*(sb->s_blocksize_bits+2 )); +sizeof (*grinfo->bb_counters) * + (sb->s_blocksize_bits+2 ));/* * incore got set to the group block bitmap below */
@@ -2663,14 +2664,14 @@ int ext4_mb_init(struct super_block *sb, int needs_recovery)unsigned max;int ret; - i = (sb->s_blocksize_bits +2 ) *sizeof (unsigned short ); + i = (sb->s_blocksize_bits +2 ) *sizeof (*sbi->s_mb_offsets); sbi->s_mb_offsets =kmalloc (i,GFP_KERNEL );if (sbi->s_mb_offsets ==NULL ) {return -ENOMEM ; } - i = (sb->s_blocksize_bits +2 ) *sizeof (unsigned int ); + i = (sb->s_blocksize_bits +2 ) *sizeof (*sbi->s_mb_maxs); sbi->s_mb_maxs =kmalloc (i,GFP_KERNEL );if (sbi->s_mb_maxs ==NULL ) {kfree (sbi->s_mb_offsets);
Quoted 6 lines · Eric Sandeen
Precursor to changing some types; to keep things in sync, it seems better to allocate/memset based on the size of the variables we are using rather than on some disconnected basic type like "unsigned short"
Signed-off-by Eric Sandeen <[email protected]>
Thanks, applied.
- Ted