[PATCH 3.16.y-ckt 062/133] ALSA: usb-audio: correct the value cache check.

Luis Henriques luis.henriques at canonical.com
Wed Sep 30 09:50:10 UTC 2015


3.16.7-ckt18 -stable review patch.  If anyone has any objections, please let me know.

------------------

From: Yao-Wen Mao <yaowen at google.com>

commit 6aa6925cad06159dc6e25857991bbc4960821242 upstream.

The check of cval->cached should be zero-based (including master channel).

Signed-off-by: Yao-Wen Mao <yaowen at google.com>
Signed-off-by: Takashi Iwai <tiwai at suse.de>
[ luis: backported to 3.16: adjusted context ]
Signed-off-by: Luis Henriques <luis.henriques at canonical.com>
---
 sound/usb/mixer.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/usb/mixer.c b/sound/usb/mixer.c
index f6d4967a652a..1550e15e9179 100644
--- a/sound/usb/mixer.c
+++ b/sound/usb/mixer.c
@@ -2529,7 +2529,7 @@ static int restore_mixer_value(struct usb_mixer_elem_info *cval)
 		for (c = 0; c < MAX_CHANNELS; c++) {
 			if (!(cval->cmask & (1 << c)))
 				continue;
-			if (cval->cached & (1 << c)) {
+			if (cval->cached & (1 << (c + 1))) {
 				err = set_cur_mix_value(cval, c + 1, idx,
 							cval->cache_val[idx]);
 				if (err < 0)




More information about the kernel-team mailing list