Re: [PATCH] btrfs: replace snprintf in show functions with sysfs_emit

From: David Sterba
Date: Wed Oct 13 2021 - 06:37:18 EST


On Wed, Oct 13, 2021 at 03:51:33PM +0800, Anand Jain wrote:
> On 13/10/2021 11:28, Qing Wang wrote:
> > coccicheck complains about the use of snprintf() in sysfs show functions.
>
> It looks like the reason is snprintf() unaware of the PAGE_SIZE
> max_limit of the buf.
>
> > Fix the following coccicheck warning:
> > fs/btrfs/sysfs.c:335:8-16: WARNING: use scnprintf or sprintf.
>
> Hm. We use snprintf() at quite a lot more places in sysfs.c and, I don't
> see them getting this fix. Why?

I guess the patch is only addressing the warning for snprintf, reading
the sources would show how many more conversions could have been done of
scnprintf calls.

> > Use sysfs_emit instead of scnprintf or sprintf makes more sense.
>
> Below commit has added it. Nice.
>
> commit 2efc459d06f1630001e3984854848a5647086232
> Date: Wed Sep 16 13:40:38 2020 -0700
>
> sysfs: Add sysfs_emit and sysfs_emit_at to format sysfs out

The conversion to the standard helper is good, but should be done
in the entire file.