ASoC: DAPM: Replace sprintf() calls with sysfs_emit_at()
authorTakashi Iwai <tiwai@suse.de>
Mon, 1 Aug 2022 17:01:07 +0000 (19:01 +0200)
committerMark Brown <broonie@kernel.org>
Mon, 15 Aug 2022 00:19:50 +0000 (01:19 +0100)
For sysfs outputs, it's safer to use a new helper, sysfs_emit(),
instead of the raw sprintf() & co.  This patch replaces the open-code
with a new helper, sysfs_emit_at(), by passing the string offset.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Link: https://lore.kernel.org/r/20220801170108.26340-8-tiwai@suse.de
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/soc-dapm.c

index b052314..73b8bd4 100644 (file)
@@ -2386,11 +2386,10 @@ int snd_soc_dapm_mixer_update_power(struct snd_soc_dapm_context *dapm,
 EXPORT_SYMBOL_GPL(snd_soc_dapm_mixer_update_power);
 
 static ssize_t dapm_widget_show_component(struct snd_soc_component *cmpnt,
-       char *buf)
+                                         char *buf, int count)
 {
        struct snd_soc_dapm_context *dapm = snd_soc_component_get_dapm(cmpnt);
        struct snd_soc_dapm_widget *w;
-       int count = 0;
        char *state = "not set";
 
        /* card won't be set for the dummy component, as a spot fix
@@ -2423,7 +2422,7 @@ static ssize_t dapm_widget_show_component(struct snd_soc_component *cmpnt,
                case snd_soc_dapm_pinctrl:
                case snd_soc_dapm_clock_supply:
                        if (w->name)
-                               count += sprintf(buf + count, "%s: %s\n",
+                               count += sysfs_emit_at(buf, count, "%s: %s\n",
                                        w->name, w->power ? "On":"Off");
                break;
                default:
@@ -2445,7 +2444,7 @@ static ssize_t dapm_widget_show_component(struct snd_soc_component *cmpnt,
                state = "Off";
                break;
        }
-       count += sprintf(buf + count, "PM State: %s\n", state);
+       count += sysfs_emit_at(buf, count, "PM State: %s\n", state);
 
        return count;
 }
@@ -2463,7 +2462,7 @@ static ssize_t dapm_widget_show(struct device *dev,
        for_each_rtd_codec_dais(rtd, i, codec_dai) {
                struct snd_soc_component *cmpnt = codec_dai->component;
 
-               count += dapm_widget_show_component(cmpnt, buf + count);
+               count = dapm_widget_show_component(cmpnt, buf, count);
        }
 
        mutex_unlock(&rtd->card->dapm_mutex);