Hi Gao, Oh, sorry. I knew to access i_blkaddr on uncompressed file, but it didn't occur on the file system for testing, so I overlooked it. I needed to be careful.
2024年4月24日(水) 19:38 Gao Xiang <xi...@kernel.org>: > > On Wed, Apr 24, 2024 at 02:15:58PM +0800, Gao Xiang wrote: > > > > > > On 2024/4/24 13:59, Noboru Asai wrote: > > > Add missing block counting when the data to be inlined is not inlined. > > > > > > --- > > > v2: > > > - move from erofs_write_tail_end() to erofs_prepare_tail_block() > > > > > > Signed-off-by: Noboru Asai <a...@sijam.com> > > > > Reviewed-by: Gao Xiang <hsiang...@linux.alibaba.com> > > > > Thanks, > > Gao Xiang > > I applied the following version since v2 caused CI failure: > https://github.com/erofs/erofsnightly/actions/runs/8812585654 > > > From 89e76dda5fd4956709bbb88b76063ef165fa3882 Mon Sep 17 00:00:00 2001 > From: Noboru Asai <a...@sijam.com> > Date: Wed, 24 Apr 2024 14:59:23 +0900 > Subject: [PATCH] erofs-utils: add missing block counting > > Add missing block counting when the data to be inlined is not inlined. > > Signed-off-by: Noboru Asai <a...@sijam.com> > Reviewed-by: Gao Xiang <hsiang...@linux.alibaba.com> > Signed-off-by: Gao Xiang <hsiang...@linux.alibaba.com> > --- > lib/inode.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/lib/inode.c b/lib/inode.c > index 7508c74..896a257 100644 > --- a/lib/inode.c > +++ b/lib/inode.c > @@ -664,6 +664,8 @@ static int erofs_prepare_tail_block(struct erofs_inode > *inode) > } else { > inode->lazy_tailblock = true; > } > + if (is_inode_layout_compression(inode)) > + inode->u.i_blocks += 1; > return 0; > } > > -- > 2.30.2 >