s390/cio: convert sprintf()/snprintf() to sysfs_emit()
authorLi Zhijian <lizhijian@fujitsu.com>
Thu, 14 Mar 2024 09:52:09 +0000 (17:52 +0800)
committerAlexander Gordeev <agordeev@linux.ibm.com>
Tue, 9 Apr 2024 15:29:56 +0000 (17:29 +0200)
Per filesystems/sysfs.rst, show() should only use sysfs_emit()
or sysfs_emit_at() when formatting the value to be returned to user space.

coccinelle complains that there are still a couple of functions that use
snprintf(). Convert them to sysfs_emit().

Generally, this patch is generated by
make coccicheck M=<path/to/file> MODE=patch \
COCCI=scripts/coccinelle/api/device_attr_show.cocci

No functional change intended.

Cc: Vineeth Vijayan <vneethv@linux.ibm.com>
Cc: Peter Oberparleiter <oberpar@linux.ibm.com>
Signed-off-by: Li Zhijian <lizhijian@fujitsu.com>
Link: https://lore.kernel.org/r/20240314095209.1325229-1-lizhijian@fujitsu.com
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
drivers/s390/cio/css.c

index 1d68db1..781f849 100644 (file)
@@ -309,7 +309,7 @@ static ssize_t type_show(struct device *dev, struct device_attribute *attr,
 {
        struct subchannel *sch = to_subchannel(dev);
 
-       return sprintf(buf, "%01x\n", sch->st);
+       return sysfs_emit(buf, "%01x\n", sch->st);
 }
 
 static DEVICE_ATTR_RO(type);
@@ -319,7 +319,7 @@ static ssize_t modalias_show(struct device *dev, struct device_attribute *attr,
 {
        struct subchannel *sch = to_subchannel(dev);
 
-       return sprintf(buf, "css:t%01X\n", sch->st);
+       return sysfs_emit(buf, "css:t%01X\n", sch->st);
 }
 
 static DEVICE_ATTR_RO(modalias);
@@ -345,7 +345,7 @@ static ssize_t driver_override_show(struct device *dev,
        ssize_t len;
 
        device_lock(dev);
-       len = snprintf(buf, PAGE_SIZE, "%s\n", sch->driver_override);
+       len = sysfs_emit(buf, "%s\n", sch->driver_override);
        device_unlock(dev);
        return len;
 }
@@ -396,8 +396,8 @@ static ssize_t pimpampom_show(struct device *dev,
        struct subchannel *sch = to_subchannel(dev);
        struct pmcw *pmcw = &sch->schib.pmcw;
 
-       return sprintf(buf, "%02x %02x %02x\n",
-                      pmcw->pim, pmcw->pam, pmcw->pom);
+       return sysfs_emit(buf, "%02x %02x %02x\n",
+                         pmcw->pim, pmcw->pam, pmcw->pom);
 }
 static DEVICE_ATTR_RO(pimpampom);
 
@@ -881,7 +881,7 @@ static ssize_t real_cssid_show(struct device *dev, struct device_attribute *a,
        if (!css->id_valid)
                return -EINVAL;
 
-       return sprintf(buf, "%x\n", css->cssid);
+       return sysfs_emit(buf, "%x\n", css->cssid);
 }
 static DEVICE_ATTR_RO(real_cssid);
 
@@ -904,7 +904,7 @@ static ssize_t cm_enable_show(struct device *dev, struct device_attribute *a,
        int ret;
 
        mutex_lock(&css->mutex);
-       ret = sprintf(buf, "%x\n", css->cm_enabled);
+       ret = sysfs_emit(buf, "%x\n", css->cm_enabled);
        mutex_unlock(&css->mutex);
        return ret;
 }