All of lore.kernel.org
 help / color / mirror / Atom feed
* Patch "ASoC: dapm: Fix possible uninitialized variable in snd_soc_dapm_get_volsw()" has been added to the 4.4-stable tree
@ 2016-10-28 18:17 gregkh
  0 siblings, 0 replies; only message in thread
From: gregkh @ 2016-10-28 18:17 UTC (permalink / raw)
  To: wens, broonie, gregkh; +Cc: stable, stable-commits


This is a note to let you know that I've just added the patch titled

    ASoC: dapm: Fix possible uninitialized variable in snd_soc_dapm_get_volsw()

to the 4.4-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     asoc-dapm-fix-possible-uninitialized-variable-in-snd_soc_dapm_get_volsw.patch
and it can be found in the queue-4.4 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@vger.kernel.org> know about it.


>From 01ad5e7de67b408d9b48b437b06a9938ddf460b5 Mon Sep 17 00:00:00 2001
From: Chen-Yu Tsai <wens@csie.org>
Date: Sat, 27 Aug 2016 19:27:58 +0800
Subject: ASoC: dapm: Fix possible uninitialized variable in snd_soc_dapm_get_volsw()

From: Chen-Yu Tsai <wens@csie.org>

commit 01ad5e7de67b408d9b48b437b06a9938ddf460b5 upstream.

If soc_dapm_read() fails, val will be uninitialized, and bogus values
will be written later:

	ret = soc_dapm_read(dapm, reg, &val);
	val = (val >> shift) & mask;

However, the compiler does not give a warning. Return on error before
val is really used to avoid this.

This is similar to the commit 6912831623c5 ("ASoC: dapm: Fix
uninitialized variable in snd_soc_dapm_get_enum_double()")

Fixes: ce0fc93ae56e (ASoC: Add DAPM support at the component level)
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 sound/soc/soc-dapm.c |    3 +++
 1 file changed, 3 insertions(+)

--- a/sound/soc/soc-dapm.c
+++ b/sound/soc/soc-dapm.c
@@ -3015,6 +3015,9 @@ int snd_soc_dapm_get_volsw(struct snd_kc
 	}
 	mutex_unlock(&card->dapm_mutex);
 
+	if (ret)
+		return ret;
+
 	if (invert)
 		ucontrol->value.integer.value[0] = max - val;
 	else


Patches currently in stable-queue which might be from wens@csie.org are

queue-4.4/asoc-dapm-fix-kcontrol-creation-for-output-driver-widget.patch
queue-4.4/asoc-dapm-fix-value-setting-for-_enum_double-mux-s-second-channel.patch
queue-4.4/asoc-dapm-fix-possible-uninitialized-variable-in-snd_soc_dapm_get_volsw.patch

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2016-10-28 18:17 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-10-28 18:17 Patch "ASoC: dapm: Fix possible uninitialized variable in snd_soc_dapm_get_volsw()" has been added to the 4.4-stable tree gregkh

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.