lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAHJ8P3J+OZHhKNSSXc_RM8Xn=1nvfCk8_rqknjXsq==VpvuFPQ@mail.gmail.com>
Date: Thu, 24 Oct 2024 18:57:59 +0800
From: Zhiguo Niu <niuzhiguo84@...il.com>
To: Chao Yu <chao@...nel.org>
Cc: Zhiguo Niu <zhiguo.niu@...soc.com>, jaegeuk@...nel.org, 
	linux-f2fs-devel@...ts.sourceforge.net, linux-kernel@...r.kernel.org, 
	ke.wang@...soc.com, Hao_hao.Wang@...soc.com
Subject: Re: [PATCH] f2fs-tools: correct some confused desc about unit

Chao Yu <chao@...nel.org> 于2024年10月24日周四 18:49写道:
>
> On 2024/10/24 17:28, Zhiguo Niu wrote:
> > F2FS_BLKSIZE may be 4KB, 16KB, so use F2FS_BLKSIZE to replace
> > some hardcode desc about unit in some f2fs_io cmd, also
> > adjust "-c" parameters in mkfs man, to be consistent with
> > commit c35fa8cd75ac ("mkfs.f2fs: change -c option description").
> >
> > Signed-off-by: Zhiguo Niu <zhiguo.niu@...soc.com>
> > ---
> >   man/mkfs.f2fs.8         | 2 +-
> >   tools/f2fs_io/f2fs_io.c | 6 +++---
> >   2 files changed, 4 insertions(+), 4 deletions(-)
> >
> > diff --git a/man/mkfs.f2fs.8 b/man/mkfs.f2fs.8
> > index de885be..8b3b0cc 100644
> > --- a/man/mkfs.f2fs.8
> > +++ b/man/mkfs.f2fs.8
> > @@ -122,7 +122,7 @@ block size matches the page size.
> >   The default value is 4096.
> >   .TP
> >   .BI \-c " device-list"
> > -Build f2fs with these additional comma separated devices, so that the user can
> > +Build f2fs with these additional devices, so that the user can
> >   see all the devices as one big volume.
> >   Supports up to 7 devices except meta device.
> >   .TP
> > diff --git a/tools/f2fs_io/f2fs_io.c b/tools/f2fs_io/f2fs_io.c
> > index 95f575f..ee4ed0e 100644
> > --- a/tools/f2fs_io/f2fs_io.c
> > +++ b/tools/f2fs_io/f2fs_io.c
> > @@ -1013,7 +1013,7 @@ static void do_randread(int argc, char **argv, const struct cmd_desc *cmd)
> >
> >   #define fiemap_desc "get block address in file"
> >   #define fiemap_help                                 \
> > -"f2fs_io fiemap [offset in 4kb] [count in 4kb] [file_path]\n\n"\
> > +"f2fs_io fiemap [offset in F2FS_BLKSIZE] [count in F2FS_BLKSIZE] [file_path]\n\n"\
> >
> >   #if defined(HAVE_LINUX_FIEMAP_H) && defined(HAVE_LINUX_FS_H)
> >   static void do_fiemap(int argc, char **argv, const struct cmd_desc *cmd)
> > @@ -1617,8 +1617,8 @@ static void do_move_range(int argc, char **argv, const struct cmd_desc *cmd)
> >   #define gc_range_desc "trigger filesystem gc_range"
> >   #define gc_range_help "f2fs_io gc_range [sync_mode] [start] [length] [file_path]\n\n"\
> >   "  sync_mode : 0: asynchronous, 1: synchronous\n"                   \
> > -"  start     : start offset of defragment region, unit: 4kb\n"       \
> > -"  length    : bytes number of defragment region, unit: 4kb\n"       \
> > +"  start     : start offset of defragment region, unit: F2FS_BLKSIZE\n"      \
> > +"  length    : bytes number of defragment region, unit: F2FS_BLKSIZE\n"      \
>
> I think we'd better unify default block size to 4096 since in most of
> places in f2fs_io.c, we use 4096 as default IO/buffer size.
>
> git grep -n "4096" tools/f2fs_io/f2fs_io.c
> tools/f2fs_io/f2fs_io.c:212:    args.block_size = 4096;
> tools/f2fs_io/f2fs_io.c:662:    buf_size = bs * 4096;
> tools/f2fs_io/f2fs_io.c:666:    buf = aligned_xalloc(4096, buf_size);
> tools/f2fs_io/f2fs_io.c:877:    buf_size = bs * 4096;
> tools/f2fs_io/f2fs_io.c:881:    buf = aligned_xalloc(4096, buf_size);
> tools/f2fs_io/f2fs_io.c:901:            if (posix_fadvise(fd, 0, 4096, POSIX_FADV_SEQUENTIAL) != 0)
> tools/f2fs_io/f2fs_io.c:903:            if (posix_fadvise(fd, 0, 4096, POSIX_FADV_WILLNEED) != 0)
> tools/f2fs_io/f2fs_io.c:979:    buf_size = bs * 4096;
> tools/f2fs_io/f2fs_io.c:981:    buf = aligned_xalloc(4096, buf_size);
> tools/f2fs_io/f2fs_io.c:994:    aligned_size = (u64)stbuf.st_size & ~((u64)(4096 - 1));
> tools/f2fs_io/f2fs_io.c:997:    end_idx = (u64)(aligned_size - buf_size) / (u64)4096 + 1;
> tools/f2fs_io/f2fs_io.c:1004:           ret = pread(fd, buf, buf_size, 4096 * idx);
> tools/f2fs_io/f2fs_io.c:1222:           char *buf = aligned_xalloc(4096, 4096);
> tools/f2fs_io/f2fs_io.c:1224:           while ((ret = xread(src_fd, buf, 4096)) > 0)
>
> git grep -n "F2FS_BLKSIZE" tools/f2fs_io/f2fs_io.c
> tools/f2fs_io/f2fs_io.c:1034:   start = (u64)atoi(argv[1]) * F2FS_BLKSIZE;
> tools/f2fs_io/f2fs_io.c:1035:   length = (u64)atoi(argv[2]) * F2FS_BLKSIZE;
> tools/f2fs_io/f2fs_io.c:1042:                           start / F2FS_BLKSIZE, length / F2FS_BLKSIZE);
>
> We can add a new macro F2FS_DEFAULT_BLKSIZE and use it instead of magic
> number and F2FS_BLKSIZE, what do you think?
Dear Chao,
It is a good  suggestions,  will update it.
now it is a little confused when I use f2fs_io fiemap in 16KB page system. ^^
thanks!
>
> Thanks,
>
> >
> >   static void do_gc_range(int argc, char **argv, const struct cmd_desc *cmd)
> >   {
>

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ