Re: [PATCH 1/7] comedi: Convert snprintf() to scnprintf()

From: Greg KH
Date: Tue Sep 27 2022 - 02:06:32 EST


On Mon, Sep 26, 2022 at 07:37:37PM +0100, Jules Irenge wrote:
> Coccinnelle reports a warning
> Warning: Use scnprintf or sprintf
> Adding to that, there has been a slow migration from snprintf to scnprintf.
> This LWN article explains the rationale for this change
> https: //lwn.net/Articles/69419/
> Ie. snprintf() returns what *would* be the resulting length,
> while scnprintf() returns the actual length.
>
> Signed-off-by: Jules Irenge <jbi.octave@xxxxxxxxx>
> ---
> drivers/comedi/comedi_fops.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/comedi/comedi_fops.c b/drivers/comedi/comedi_fops.c
> index 55a0cae04b8d..e8a0142d5894 100644
> --- a/drivers/comedi/comedi_fops.c
> +++ b/drivers/comedi/comedi_fops.c
> @@ -396,7 +396,7 @@ static ssize_t max_read_buffer_kb_show(struct device *csdev,
> mutex_unlock(&dev->mutex);
>
> comedi_dev_put(dev);
> - return snprintf(buf, PAGE_SIZE, "%u\n", size);
> + return scnprintf(buf, PAGE_SIZE, "%u\n", size);

Ick, no, you should use sysfs_emit() if you really want to change these
functions to "do the right thing".

thanks,

greg k-h