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

From: Kieran Bingham
Date: Fri Oct 15 2021 - 18:36:40 EST


Hello,

Quoting Qing Wang (2021-10-15 07:49:22)
> show() must not use snprintf() when formatting the value to be
> returned to user space.
>
> Fix the following coccicheck warning:
> drivers/media/i2c/ccs/ccs-core.c:2717: WARNING: use scnprintf or sprintf.
>
> Use sysfs_emit instead of scnprintf or sprintf makes more sense.
>
> Signed-off-by: Qing Wang <wangqing@xxxxxxxx>
> ---
> drivers/media/i2c/ccs/ccs-core.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/media/i2c/ccs/ccs-core.c b/drivers/media/i2c/ccs/ccs-core.c
> index a9403a2..21a156d 100644
> --- a/drivers/media/i2c/ccs/ccs-core.c
> +++ b/drivers/media/i2c/ccs/ccs-core.c
> @@ -2715,11 +2715,11 @@ ccs_sysfs_ident_read(struct device *dev, struct device_attribute *attr,

What version of the kernel is this patch against?

I can't find the direct line mapping for this in either the linux-media
tree or torvalds master branch (closest match at
https://git.linuxtv.org/media_tree.git/tree/drivers/media/i2c/ccs/ccs-core.c#n2754)

Ah: https://lore.kernel.org/all/20210603071750.11594-1-thunder.leizhen@xxxxxxxxxx/
updated this, so I suspect this patch has been submitted against perhaps
a v5.14 kernel? It would be best to rebase and repost against the latest
branch of https://git.linuxtv.org/media_tree.git


> struct ccs_module_info *minfo = &sensor->minfo;
>
> if (minfo->mipi_manufacturer_id)
> - return snprintf(buf, PAGE_SIZE, "%4.4x%4.4x%2.2x\n",
> + return sysfs_emit(buf, "%4.4x%4.4x%2.2x\n",
> minfo->mipi_manufacturer_id, minfo->model_id,
> minfo->revision_number) + 1;

This change looks good, but I think it might be better to re-indent the
minfo lines to match as well...

> else
> - return snprintf(buf, PAGE_SIZE, "%2.2x%4.4x%2.2x\n",
> + return sysfs_emit(buf, "%2.2x%4.4x%2.2x\n",
> minfo->smia_manufacturer_id, minfo->model_id,
> minfo->revision_number) + 1;

here as well of course.

--
Kieran


> }
> --
> 2.7.4
>