Re: [PATCH v2 1/2] ext4: Check stripe size compatibility on remount as well

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Ojaswin Mujoo <ojaswin@xxxxxxxxxxxxx> writes:

> We disable stripe size in __ext4_fill_super if it is not a multiple of
> the cluster ratio however this check is missed when trying to remount.
> This can leave us with cases where stripe < cluster_ratio after
> remount:set making EXT4_B2C(sbi->s_stripe) become 0 that can cause some
> unforeseen bugs like divide by 0.
>
> Fix that by adding the check in remount path as well.
>
> Reported-by: syzbot+1ad8bac5af24d01e2cbd@xxxxxxxxxxxxxxxxxxxxxxxxx
> Tested-by: syzbot+1ad8bac5af24d01e2cbd@xxxxxxxxxxxxxxxxxxxxxxxxx
> Reviewed-by: Kemeng Shi <shikemeng@xxxxxxxxxxxxxxx>
> Fixes: c3defd99d58c ("ext4: treat stripe in block unit")
> Signed-off-by: Ojaswin Mujoo <ojaswin@xxxxxxxxxxxxx>
> ---
>  fs/ext4/super.c | 29 ++++++++++++++++++++++-------
>  1 file changed, 22 insertions(+), 7 deletions(-)

Minor nits below, but otherwise looks good to me.

Please feel free to add - 
Reviewed-by: Ritesh Harjani (IBM) <ritesh.list@xxxxxxxxx>

>
> diff --git a/fs/ext4/super.c b/fs/ext4/super.c
> index e72145c4ae5a..9d495d78d262 100644
> --- a/fs/ext4/super.c
> +++ b/fs/ext4/super.c
> @@ -5165,6 +5165,18 @@ static int ext4_block_group_meta_init(struct super_block *sb, int silent)
>  	return 0;
>  }
>  
> +/*
> + * It's hard to get stripe aligned blocks if stripe is not aligned with
> + * cluster, just disable stripe and alert user to simpfy code and avoid

s/simpfy/simplify

> + * stripe aligned allocation which will rarely successes.

s/successes/succeed

-ritesh




[Index of Archives]     [Reiser Filesystem Development]     [Ceph FS]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite National Park]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]     [Linux Media]

  Powered by Linux