fs/ocfs2/alloc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
global bitmap is a cluster allocator,so after we traverse
the global bitmap and finished the fstrim,the trimmed range
should be 'trimmed * clustersize'.otherwise,the trimmed range
printed by 'fstrim -v' is not as expected.
Signed-off-by: Yuanheng Zhang <yuanhengzhang1214@gmail.com>
---
fs/ocfs2/alloc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/ocfs2/alloc.c b/fs/ocfs2/alloc.c
index 51c93929a146..bced551240cf 100644
--- a/fs/ocfs2/alloc.c
+++ b/fs/ocfs2/alloc.c
@@ -7642,7 +7642,7 @@ int ocfs2_trim_mainbm(struct super_block *sb, struct fstrim_range *range)
goto next_group;
}
out:
- range->len = trimmed * sb->s_blocksize;
+ range->len = trimmed * osb->s_clustersize;
return ret;
}
--
2.34.1
On 8/28/23 1:17 PM, Yuanheng Zhang wrote: > global bitmap is a cluster allocator,so after we traverse > the global bitmap and finished the fstrim,the trimmed range > should be 'trimmed * clustersize'.otherwise,the trimmed range > printed by 'fstrim -v' is not as expected. > > Signed-off-by: Yuanheng Zhang <yuanhengzhang1214@gmail.com> Thanks for pointing this out. It looks fine to me. Reviewed-by: Joseph Qi <joseph.qi@linux.alibaba.com> > --- > fs/ocfs2/alloc.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/fs/ocfs2/alloc.c b/fs/ocfs2/alloc.c > index 51c93929a146..bced551240cf 100644 > --- a/fs/ocfs2/alloc.c > +++ b/fs/ocfs2/alloc.c > @@ -7642,7 +7642,7 @@ int ocfs2_trim_mainbm(struct super_block *sb, struct fstrim_range *range) > goto next_group; > } > out: > - range->len = trimmed * sb->s_blocksize; > + range->len = trimmed * osb->s_clustersize; > return ret; > } >
© 2016 - 2025 Red Hat, Inc.