]> git.baikalelectronics.ru Git - kernel.git/commitdiff
ALSA: aoa: Replace sprintf() with sysfs_emit()
authorTakashi Iwai <tiwai@suse.de>
Mon, 1 Aug 2022 16:56:34 +0000 (18:56 +0200)
committerTakashi Iwai <tiwai@suse.de>
Tue, 2 Aug 2022 14:03:42 +0000 (16:03 +0200)
For sysfs outputs, it's safer to use a new helper, sysfs_emit(),
instead of the raw sprintf() & co.  This patch replaces such sprintf()
calls with sysfs_emit() while simplifying the open code in
modalias_show(); as modalias[] is a NUL-terminated string, we can pass
it straightly to a printf() argument.

Link: https://lore.kernel.org/r/20220801165639.26030-3-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/aoa/soundbus/sysfs.c

index dead3105689b747454b982dbfcdfe6efe9e220be..e87b28428b99992fb4c90853020162024d131143 100644 (file)
@@ -10,19 +10,13 @@ static ssize_t modalias_show(struct device *dev, struct device_attribute *attr,
 {
        struct soundbus_dev *sdev = to_soundbus_device(dev);
        struct platform_device *of = &sdev->ofdev;
-       int length;
 
-       if (*sdev->modalias) {
-               strscpy(buf, sdev->modalias, sizeof(sdev->modalias) + 1);
-               strcat(buf, "\n");
-               length = strlen(buf);
-       } else {
-               length = sprintf(buf, "of:N%pOFn%c%s\n",
-                                of->dev.of_node, 'T',
-                                 of_node_get_device_type(of->dev.of_node));
-       }
-
-       return length;
+       if (*sdev->modalias)
+               return sysfs_emit(buf, "%s\n", sdev->modalias);
+       else
+               return sysfs_emit(buf, "of:N%pOFn%c%s\n",
+                                 of->dev.of_node, 'T',
+                                 of_node_get_device_type(of->dev.of_node));
 }
 static DEVICE_ATTR_RO(modalias);
 
@@ -32,7 +26,7 @@ static ssize_t name_show(struct device *dev,
        struct soundbus_dev *sdev = to_soundbus_device(dev);
        struct platform_device *of = &sdev->ofdev;
 
-       return sprintf(buf, "%pOFn\n", of->dev.of_node);
+       return sysfs_emit(buf, "%pOFn\n", of->dev.of_node);
 }
 static DEVICE_ATTR_RO(name);
 
@@ -42,7 +36,7 @@ static ssize_t type_show(struct device *dev,
        struct soundbus_dev *sdev = to_soundbus_device(dev);
        struct platform_device *of = &sdev->ofdev;
 
-       return sprintf(buf, "%s\n", of_node_get_device_type(of->dev.of_node));
+       return sysfs_emit(buf, "%s\n", of_node_get_device_type(of->dev.of_node));
 }
 static DEVICE_ATTR_RO(type);