From a1cd2dbf3effb7e474e4f8b935a5df1e9eaa665f Mon Sep 17 00:00:00 2001 From: Yao-Wen Mao Date: Fri, 28 Aug 2015 16:33:25 +0800 Subject: [PATCH] ALSA: usb-audio: correct the value cache check. commit 6aa6925cad06159dc6e25857991bbc4960821242 upstream. The check of cval->cached should be zero-based (including master channel). Signed-off-by: Yao-Wen Mao Signed-off-by: Takashi Iwai [ luis: backported to 3.16: adjusted context ] Signed-off-by: Luis Henriques --- 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)