drivers/comedi/comedi_fops.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
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.
However following the advice on
https://www.kernel.org/doc/html/latest/filesystems/sysfs.html
For show(device *...) functions we should only use sysfs_emit() or sysfs_emit_at()
especially when formatting the value to be returned to user space.
Hence here
We convert to sysfs_emit() that even does better and shorten the code
using the same rationale of scnprintf()
Signed-off-by: Jules Irenge <jules.irenge@postgrad.manchester.ac.uk>
---
v2: Replace scnprintf() with sysfs_emit()
drivers/comedi/comedi_fops.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/comedi/comedi_fops.c b/drivers/comedi/comedi_fops.c
index 55a0cae04b8d..a6017fafcb2a 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 sysfs_emit(buf, "%u\n", size);
}
static ssize_t max_read_buffer_kb_store(struct device *csdev,
--
2.37.3
On Wed, Sep 28, 2022 at 02:23:41PM +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. None of this is needed or relevant for this change. > > However following the advice on > https://www.kernel.org/doc/html/latest/filesystems/sysfs.html > > For show(device *...) functions we should only use sysfs_emit() or sysfs_emit_at() > especially when formatting the value to be returned to user space. > > Hence here > We convert to sysfs_emit() that even does better and shorten the code > using the same rationale of scnprintf() > > Signed-off-by: Jules Irenge <jules.irenge@postgrad.manchester.ac.uk> > --- > > v2: Replace scnprintf() with sysfs_emit() > > drivers/comedi/comedi_fops.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/comedi/comedi_fops.c b/drivers/comedi/comedi_fops.c > index 55a0cae04b8d..a6017fafcb2a 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 sysfs_emit(buf, "%u\n", size); > } > > static ssize_t max_read_buffer_kb_store(struct device *csdev, Does not apply to my tree :( thanks, greg k-h
© 2016 - 2024 Red Hat, Inc.