ALSA: usb-audio: Filter error from connector kctl ops, too
authorTakashi Iwai <tiwai@suse.de>
Sun, 12 Apr 2020 08:13:28 +0000 (10:13 +0200)
committerTakashi Iwai <tiwai@suse.de>
Sun, 12 Apr 2020 08:14:39 +0000 (10:14 +0200)
The ignore_ctl_error option should filter the error at kctl accesses,
but there was an overlook: mixer_ctl_connector_get() returns an error
from the request.

This patch covers the forgotten code path and apply filter_error()
properly.  The locking error is still returned since this is a fatal
error that has to be reported even with ignore_ctl_error option.

BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=206873
Cc: <stable@vger.kernel.org>
Link: https://lore.kernel.org/r/20200412081331.4742-2-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/usb/mixer.c

index 721d12130d0cb4aae2b943e8fb75153212032331..d27e390dcd3292f3e7c29d8e28182cca85bd9d1d 100644 (file)
@@ -1457,7 +1457,7 @@ error:
                usb_audio_err(chip,
                        "cannot get connectors status: req = %#x, wValue = %#x, wIndex = %#x, type = %d\n",
                        UAC_GET_CUR, validx, idx, cval->val_type);
-               return ret;
+               return filter_error(cval, ret);
        }
 
        ucontrol->value.integer.value[0] = val;