fs/zonefs/super.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
The format specifier of "signed int" in snprintf() should be "%d", not
"%u".
Signed-off-by: Zhu Jun <zhujun2@cmss.chinamobile.com>
---
fs/zonefs/super.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/zonefs/super.c b/fs/zonefs/super.c
index faf1eb87895d..43c2f4a59b50 100644
--- a/fs/zonefs/super.c
+++ b/fs/zonefs/super.c
@@ -811,7 +811,7 @@ static int zonefs_readdir_zgroup(struct file *file,
for (f = ctx->pos - 2; f < zgroup->g_nr_zones; f++) {
z = &zgroup->g_zones[f];
ino = z->z_sector >> sbi->s_zone_sectors_shift;
- fname_len = snprintf(fname, ZONEFS_NAME_MAX - 1, "%u", f);
+ fname_len = snprintf(fname, ZONEFS_NAME_MAX - 1, "%d", f);
if (!dir_emit(ctx, fname, fname_len, ino, DT_REG))
break;
ctx->pos++;
--
2.17.1
On 11/11/24 14:41, Zhu Jun wrote:
> The format specifier of "signed int" in snprintf() should be "%d", not
> "%u".
My apologies for the late reply.
A better fix is to make f "unsigned int" as that is consistent with
g_nr_zones and the fact that up to "unsigned int" total number of zones are
allowed for a zoned device.
Can you send a v2 ? Also please add a Fixes tag.
>
> Signed-off-by: Zhu Jun <zhujun2@cmss.chinamobile.com>
> ---
> fs/zonefs/super.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/zonefs/super.c b/fs/zonefs/super.c
> index faf1eb87895d..43c2f4a59b50 100644
> --- a/fs/zonefs/super.c
> +++ b/fs/zonefs/super.c
> @@ -811,7 +811,7 @@ static int zonefs_readdir_zgroup(struct file *file,
> for (f = ctx->pos - 2; f < zgroup->g_nr_zones; f++) {
> z = &zgroup->g_zones[f];
> ino = z->z_sector >> sbi->s_zone_sectors_shift;
> - fname_len = snprintf(fname, ZONEFS_NAME_MAX - 1, "%u", f);
> + fname_len = snprintf(fname, ZONEFS_NAME_MAX - 1, "%d", f);
> if (!dir_emit(ctx, fname, fname_len, ino, DT_REG))
> break;
> ctx->pos++;
--
Damien Le Moal
Western Digital Research
On 11/10/24 21:41, Zhu Jun wrote: > The format specifier of "signed int" in snprintf() should be "%d", not > "%u". > > Signed-off-by: Zhu Jun<zhujun2@cmss.chinamobile.com> Indeed :- 794 int f; Looks good. Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com> -ck
© 2016 - 2026 Red Hat, Inc.