Re: [PATCH V2 4/5] hid-sensor: replace snprintf in show functions with sysfs_emit

Jonathan Cameron
2021-10-15T13:48:24Z

On Fri, 15 Oct 2021 04:07:31 -0700
Qing Wang <wangqing@vivo.com> wrote:

> show() should not use snprintf() when formatting the value to be returned
> to user space, snprintf() returns the length the resulting string and
> scnprintf() returns the number of bytes printed into the buffer.
>
> Fix the coccicheck warnings:
> WARNING: use scnprintf or sprintf.
>
> Use sysfs_emit() instead of scnprintf() makes more sense.
>
> Signed-off-by: Qing Wang <wangqing@vivo.com>
> ---
> drivers/hid/hid-sensor-custom.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/hid/hid-sensor-custom.c b/drivers/hid/hid-sensor-custom.c
> index 32c2306..a46481d6 100644
> --- a/drivers/hid/hid-sensor-custom.c
> +++ b/drivers/hid/hid-sensor-custom.c
> @@ -371,7 +371,7 @@ static ssize_t show_value(struct device *dev, struct device_attribute *attr,
> sizeof(struct hid_custom_usage_desc),
> usage_id_cmp);
> if (usage_desc)
> - return snprintf(buf, PAGE_SIZE, "%s\n",
> + return sysfs_emit(buf, "%s\n",
> usage_desc->desc);

Now easily short enough that this can go on one line.

> else
> return sprintf(buf, "not-specified\n");
Whilst of course not necessary, it might be nicer to use sysfs_emit here as well for
consistency.

Otherwise looks good to me.

Jonathan