Re: [PATCH] zonefs: use ZONEFS_SUPER_SIZE instead of PAGE_SIZE

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

 



On Tue, Apr 29, 2025 at 03:42:53PM +0200, Johannes Thumshirn wrote:
> From: Johannes Thumshirn <johannes.thumshirn@xxxxxxx>
> 
> Use ZONEFS_SUPER_SIZE constant instead of PAGE_SIZE allocating memory for
> reading the super block in zonefs_read_super().
> 
> While PAGE_SIZE technically isn't incorrect as Linux doesn't support pages
> smaller than 4k ZONEFS_SUPER_SIZE is semantically more correct.

Yeah, that is less likely to leave a landmine if the super size ever
gets bigger or someone goes nuts and reintroduces tinypages.

Reviewed-by: "Darrick J. Wong" <djwong@xxxxxxxxxx>

--D

> 
> Signed-off-by: Johannes Thumshirn <johannes.thumshirn@xxxxxxx>
> 
> ---
> This patch is based on top of Christoph's series titled "add more bio
> helper" specifically on top of "[PATCH 16/17] zonefs: use bdev_rw_virt in
> zonefs_read_super"
> ---
>  fs/zonefs/super.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/fs/zonefs/super.c b/fs/zonefs/super.c
> index d165eb979f21..4dc7f967c861 100644
> --- a/fs/zonefs/super.c
> +++ b/fs/zonefs/super.c
> @@ -1113,11 +1113,12 @@ static int zonefs_read_super(struct super_block *sb)
>  	u32 crc, stored_crc;
>  	int ret;
>  
> -	super = kmalloc(PAGE_SIZE, GFP_KERNEL);
> +	super = kmalloc(ZONEFS_SUPER_SIZE, GFP_KERNEL);
>  	if (!super)
>  		return -ENOMEM;
>  
> -	ret = bdev_rw_virt(sb->s_bdev, 0, super, PAGE_SIZE, REQ_OP_READ);
> +	ret = bdev_rw_virt(sb->s_bdev, 0, super, ZONEFS_SUPER_SIZE,
> +			   REQ_OP_READ);
>  	if (ret)
>  		goto free_super;
>  
> -- 
> 2.43.0
> 
> 




[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [NTFS 3]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [NTFS 3]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux