Re: [PATCH v3] serial: 8250: replace snprintf in show functions with sysfs_emit

From: Johan Hovold
Date: Mon Nov 08 2021 - 04:54:36 EST


On Thu, Nov 04, 2021 at 11:47:54AM +0000, cgel.zte@xxxxxxxxx wrote:
> From: Jing Yao <yao.jing2@xxxxxxxxxx>
>
> coccicheck complains about the use of snprintf() in sysfs show
> functions:
> WARNING use scnprintf or sprintf
>
> Use sysfs_emit instead of scnprintf or sprintf makes more sense.
>
> Reported-by: Zeal Robot <zealci@xxxxxxxxxx>
> Signed-off-by: Jing Yao <yao.jing2@xxxxxxxxxx>
> ---
>
> Changes since v1 & v2:
> - Remove excess and wrong parameter 'PAGE_SIZE' in sysfs_emit function.
> - Revise the wrong patch Subject.

Looks like there are a few more cases in

drivers/tty/serial/8250/8250_aspeed_vuart.c

which you could convert in a follow up patch.

> drivers/tty/serial/8250/8250_port.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/tty/serial/8250/8250_port.c b/drivers/tty/serial/8250/8250_port.c
> index 5775cbff8f6e..3d58f383152e 100644
> --- a/drivers/tty/serial/8250/8250_port.c
> +++ b/drivers/tty/serial/8250/8250_port.c
> @@ -3099,7 +3099,7 @@ static ssize_t rx_trig_bytes_show(struct device *dev,
> if (rxtrig_bytes < 0)
> return rxtrig_bytes;
>
> - return snprintf(buf, PAGE_SIZE, "%d\n", rxtrig_bytes);
> + return sysfs_emit(buf, "%d\n", rxtrig_bytes);
> }
>
> static int do_set_rxtrig(struct tty_port *port, unsigned char bytes)

This one looks good as is now:

Reviewed-by: Johan Hovold <johan@xxxxxxxxxx>

Johan