]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
zorro: sysfs: Replace sprintf() by sysfs_emit()
authorStefan Pedratscher <pedratscher.stefan@gmail.com>
Mon, 6 Apr 2026 17:25:12 +0000 (19:25 +0200)
committerGeert Uytterhoeven <geert@linux-m68k.org>
Mon, 27 Apr 2026 11:52:12 +0000 (13:52 +0200)
Convert sysfs show functions from sprintf() to sysfs_emit(), as
recommended by Documentation/filesystems/sysfs.rst.  This ensures proper
buffer handling and avoids potential buffer overflows.

Signed-off-by: Stefan Pedratscher <pedratscher.stefan@gmail.com>
Tested-by: Daniel Palmer <daniel@thingy.jp>
Reviewed-by: Geert Uytterhoeven <geert@linux-m68k.org>
Link: https://patch.msgid.link/20260406172512.6693-1-pedratscher.stefan@gmail.com
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
drivers/zorro/zorro-sysfs.c

index 4e967754d8ad40ca88c2e0729a1a397254918436..9989240fb76b8e97a05db2a466bc348931942e93 100644 (file)
@@ -15,6 +15,7 @@
 #include <linux/zorro.h>
 #include <linux/stat.h>
 #include <linux/string.h>
+#include <linux/sysfs.h>
 
 #include <asm/byteorder.h>
 
@@ -29,7 +30,7 @@ static ssize_t name##_show(struct device *dev,                                \
        struct zorro_dev *z;                                            \
                                                                        \
        z = to_zorro_dev(dev);                                          \
-       return sprintf(buf, format_string, z->field);                   \
+       return sysfs_emit(buf, format_string, z->field);                \
 }                                                                      \
 static DEVICE_ATTR_RO(name);
 
@@ -44,7 +45,7 @@ static ssize_t serial_show(struct device *dev, struct device_attribute *attr,
        struct zorro_dev *z;
 
        z = to_zorro_dev(dev);
-       return sprintf(buf, "0x%08x\n", be32_to_cpu(z->rom.er_SerialNumber));
+       return sysfs_emit(buf, "0x%08x\n", be32_to_cpu(z->rom.er_SerialNumber));
 }
 static DEVICE_ATTR_RO(serial);
 
@@ -53,10 +54,10 @@ static ssize_t resource_show(struct device *dev, struct device_attribute *attr,
 {
        struct zorro_dev *z = to_zorro_dev(dev);
 
-       return sprintf(buf, "0x%08lx 0x%08lx 0x%08lx\n",
-                      (unsigned long)zorro_resource_start(z),
-                      (unsigned long)zorro_resource_end(z),
-                      zorro_resource_flags(z));
+       return sysfs_emit(buf, "0x%08lx 0x%08lx 0x%08lx\n",
+                         (unsigned long)zorro_resource_start(z),
+                         (unsigned long)zorro_resource_end(z),
+                         zorro_resource_flags(z));
 }
 static DEVICE_ATTR_RO(resource);
 
@@ -65,7 +66,7 @@ static ssize_t modalias_show(struct device *dev, struct device_attribute *attr,
 {
        struct zorro_dev *z = to_zorro_dev(dev);
 
-       return sprintf(buf, ZORRO_DEVICE_MODALIAS_FMT "\n", z->id);
+       return sysfs_emit(buf, ZORRO_DEVICE_MODALIAS_FMT "\n", z->id);
 }
 static DEVICE_ATTR_RO(modalias);