summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2012-02-21 11:59:45 +0100
committerTakashi Iwai <tiwai@suse.de>2012-02-21 11:59:45 +0100
commit5803a326465e38ee3cab8badbd8947732a8277f5 (patch)
tree21abe80de9685862a4cca2ac5f0fa0a4998401cd
parent164f73ee93131f67a61eaca6a6f6180580c39445 (diff)
downloadop-kernel-dev-5803a326465e38ee3cab8badbd8947732a8277f5.zip
op-kernel-dev-5803a326465e38ee3cab8badbd8947732a8277f5.tar.gz
ALSA: hda/realtek - Fix possible Oops with NULL input_mux
When BIOS is damn crazy and gives no pin-config at all, the driver might lead to a NULL dereference. Let's add a NULL check for such a case. Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r--sound/pci/hda/patch_realtek.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index eba50dff..997cc81 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -302,6 +302,9 @@ static int alc_mux_select(struct hda_codec *codec, unsigned int adc_idx,
int i, type, num_conns;
hda_nid_t nid;
+ if (!spec->input_mux)
+ return 0;
+
mux_idx = adc_idx >= spec->num_mux_defs ? 0 : adc_idx;
imux = &spec->input_mux[mux_idx];
if (!imux->num_items && mux_idx > 0)
OpenPOWER on IntegriCloud