Re: [PATCH v2] staging: fieldbus: replace snprintf in show functions with sysfs_emit

From: Greg Kroah-Hartman
Date: Wed Nov 09 2022 - 02:30:54 EST


On Wed, Nov 09, 2022 at 11:26:52AM +0530, Deepak R Varma wrote:
> The show() methods should only use sysfs_emit() when formatting values
> to be returned to the user space.
> Ref: Documentation/filesystems/sysfs.rst
> Issue identified by coccicheck.
>
> Signed-off-by: Deepak R Varma <drv@xxxxxxxxx>
> ---
>
> Changes in v2:
> 1. Switch to using sysfs_emit instead of scnprintf
> 2. Update patch subject and log accordingly
> Feedback from gregkh@xxxxxxxxxxxxxxxxxxx
>
>
> drivers/staging/fieldbus/dev_core.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/staging/fieldbus/dev_core.c b/drivers/staging/fieldbus/dev_core.c
> index 5aab734606ea..d32599f4eb44 100644
> --- a/drivers/staging/fieldbus/dev_core.c
> +++ b/drivers/staging/fieldbus/dev_core.c
> @@ -67,10 +67,10 @@ static ssize_t card_name_show(struct device *dev, struct device_attribute *attr,
> struct fieldbus_dev *fb = dev_get_drvdata(dev);
>
> /*
> - * card_name was provided by child driver, could potentially be long.
> - * protect against buffer overrun.
> + * sysfs provides PAGE_SIZE long buffer to take care of potentially

No need to ever mention PAGE_SIZE at all, this comment should just be:
/* card_name was provided by child driver */

But the larger question is, why did you only convert one of the sysfs
show functions in this file? Why not do them all?

thanks,

greg k-h