Re: [PATCH v3 2/6] erofs: convert to use i_blockmask()

From: Gao Xiang
Date: Thu Mar 09 2023 - 22:47:55 EST




On 2023/3/10 11:42, Gao Xiang wrote:
Hi Al,

On 2023/3/10 11:15, Al Viro wrote:
On Thu, Mar 09, 2023 at 11:21:23PM +0800, Yangtao Li wrote:
Use i_blockmask() to simplify code.

Umm...  What's the branchpoint for that series?  Not the mainline -
there we have i_blocksize() open-coded...

Actually Yue Hu sent out a clean-up patch and I applied to -next for
almost a week and will be upstreamed for 6.3-rc2:

https://lore.kernel.org/r/a238dca1-256f-ae2f-4a33-e54861fe4ffb@xxxxxxxxxx/T/#t

Sorry this link:
https://lore.kernel.org/r/0261de31-e98b-85cd-80de-96af5a76e15c@xxxxxxxxxxxxxxxxx

Yangtao's suggestion was to use GENMASK, and I'm not sure it's a good way
since (i_blocksize(inode) - 1) is simple enough, and then it becomes like
this.

Thanks,
Gao Xiang



And then Yangtao would like to wrap this as a new VFS helper, I'm not
sure why it's necessary since it doesn't save a lot but anyway, I'm open
to it if VFS could have such new helper.

Thanks,
Gao Xiang


Signed-off-by: Yangtao Li <frank.li@xxxxxxxx>
---
v3:
-none
v2:
-convert to i_blockmask()
  fs/erofs/data.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/erofs/data.c b/fs/erofs/data.c
index 7e8baf56faa5..e9d1869cd4b3 100644
--- a/fs/erofs/data.c
+++ b/fs/erofs/data.c
@@ -380,7 +380,7 @@ static ssize_t erofs_file_read_iter(struct kiocb *iocb, struct iov_iter *to)
          if (bdev)
              blksize_mask = bdev_logical_block_size(bdev) - 1;
          else
-            blksize_mask = i_blocksize(inode) - 1;
+            blksize_mask = i_blockmask(inode);
          if ((iocb->ki_pos | iov_iter_count(to) |
               iov_iter_alignment(to)) & blksize_mask)
--
2.25.1