[PATCH] erofs-utils: mkfs: Add volume-name setting support
Gao Xiang
xiang at kernel.org
Wed Oct 5 03:15:53 AEDT 2022
Hi Naoto,
On Wed, Oct 05, 2022 at 01:02:37AM +0900, Naoto Yamaguchi wrote:
> The erofs_super_block has volume_name field. On the other hand,
> mkfs.erofs is not supporting to set volume name.
> This patch add volume-name setting support to mkfs.erofs.
> Option keyword is similar to mkfs.vfat.
>
> usage:
> mkfs.erofs -n volume-name image-fn dir
Thanks for your patch! The patch itself generally looks good to me.
Just two minor ideas:
1) How about following mke2fs by using "-L volume-label" ?
https://www.man7.org/linux/man-pages/man8/mke2fs.8.html
2) If possible, how about adding a kernel ioctl for this if you have
more interest? I mean FS_IOC_GETFSLABEL.
>
> Signed-off-by: Naoto Yamaguchi <naoto.yamaguchi at aisin.co.jp>
> ---
> include/erofs/internal.h | 1 +
> man/mkfs.erofs.1 | 4 ++++
> mkfs/main.c | 13 ++++++++++++-
> 3 files changed, 17 insertions(+), 1 deletion(-)
>
> diff --git a/include/erofs/internal.h b/include/erofs/internal.h
> index 2e0aae8..7dc42eb 100644
> --- a/include/erofs/internal.h
> +++ b/include/erofs/internal.h
> @@ -92,6 +92,7 @@ struct erofs_sb_info {
> u64 inos;
>
> u8 uuid[16];
> + char volume_name[16];
>
> u16 available_compr_algs;
> u16 lz4_max_distance;
> diff --git a/man/mkfs.erofs.1 b/man/mkfs.erofs.1
> index 11e8323..fb98505 100644
> --- a/man/mkfs.erofs.1
> +++ b/man/mkfs.erofs.1
> @@ -32,6 +32,10 @@ big pcluster feature if needed (Linux v5.13+).
> Specify the level of debugging messages. The default is 2, which shows basic
> warning messages.
> .TP
> +.BI "\-n " volume-name
> +Set the volume name for the filesystem to volume-name. The maximum length of
> +the volume name is 16 bytes.
> +.TP
> .BI "\-x " #
> Specify the upper limit of an xattr which is still inlined. The default is 2.
> Disable storing xattrs if < 0.
> diff --git a/mkfs/main.c b/mkfs/main.c
> index 594ecf9..613ee46 100644
> --- a/mkfs/main.c
> +++ b/mkfs/main.c
> @@ -80,6 +80,7 @@ static void usage(void)
> fputs("usage: [options] FILE DIRECTORY\n\n"
> "Generate erofs image from DIRECTORY to FILE, and [options] are:\n"
> " -d# set output message level to # (maximum 9)\n"
> + " -n volume-name set the volume name (max 16 bytes).\n"
...
> " -x# set xattr tolerance to # (< 0, disable xattrs; default 2)\n"
> " -zX[,Y] X=compressor (Y=compression level, optional)\n"
> " -C# specify the size of compress physical cluster in bytes\n"
" -L volume-label set the volume label (maximum 12)\n"
Thanks,
Gao Xiang
More information about the Linux-erofs
mailing list