Re: [PATCH] staging: fieldbus: convert snprintf to scnprintf

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Nov 08, 2022 at 04:13:12PM +0100, Greg Kroah-Hartman wrote:
> On Wed, Nov 02, 2022 at 11:55:52PM +0530, Deepak R Varma wrote:
> > It is recommended to use scnprintf instead of snprintf to accurately
> > return the size of the encoded data. Following article [1] has details
> > on the reason for this kernel level migration. This issue was identified
> > using coccicheck.
> >
> > [1] https://lwn.net/Articles/69419/
> >
> > Signed-off-by: Deepak R Varma <drv@xxxxxxxxx>
> > ---
> >  drivers/staging/fieldbus/dev_core.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/staging/fieldbus/dev_core.c b/drivers/staging/fieldbus/dev_core.c
> > index 5aab734606ea..d51f2b02d5e6 100644
> > --- a/drivers/staging/fieldbus/dev_core.c
> > +++ b/drivers/staging/fieldbus/dev_core.c
> > @@ -70,7 +70,7 @@ static ssize_t card_name_show(struct device *dev, struct device_attribute *attr,
> >  	 * card_name was provided by child driver, could potentially be long.
> >  	 * protect against buffer overrun.
> >  	 */
> > -	return snprintf(buf, PAGE_SIZE, "%s\n", fb->card_name);
> > +	return scnprintf(buf, PAGE_SIZE, "%s\n", fb->card_name);
>
> No, neither of these are correct.
>
> Please use sysfs_emit() for sysfs show callbacks.

Hello Greg,
Thank you. I corrected and resubmitted the patch as suggested.

Hi Julia,
The device_attr_show.cocci file should have made the recommendation to use
the sysfs_emit(), however, in this case it instead suggested to use scnprintf.
Is it because the method name was not "show" but "xxx_show"?

Thank you,
./drv

>
> thanks,
>
> greg k-h






[Index of Archives]     [Linux Driver Development]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux