Patch "ALSA: usb-audio: Fix invalid NULL check in snd_emuusb_set_samplerate()" has been added to the 4.9-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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

    ALSA: usb-audio: Fix invalid NULL check in snd_emuusb_set_samplerate()

to the 4.9-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:
     alsa-usb-audio-fix-invalid-null-check-in-snd_emuusb_set_samplerate.patch
and it can be found in the queue-4.9 subdirectory.

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


>From 6de3c9e3f6b3eaf66859e1379b3f35dda781416b Mon Sep 17 00:00:00 2001
From: Takashi Iwai <tiwai@xxxxxxx>
Date: Thu, 15 Aug 2019 11:41:06 +0200
Subject: ALSA: usb-audio: Fix invalid NULL check in snd_emuusb_set_samplerate()

From: Takashi Iwai <tiwai@xxxxxxx>

commit 6de3c9e3f6b3eaf66859e1379b3f35dda781416b upstream.

The quirk function snd_emuusb_set_samplerate() has a NULL check for
the mixer element, but this is useless in the current code.  It used
to be a check against mixer->id_elems[unitid] but it was changed later
to the value after mixer_eleme_list_to_info() which is always non-NULL
due to the container_of() usage.

This patch fixes the check before the conversion.

While we're at it, correct a typo in the comment in the function,
too.

Fixes: 8c558076c740 ("ALSA: usb-audio: Clean up mixer element list traverse")
Cc: <stable@xxxxxxxxxxxxxxx>
Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

---
 sound/usb/mixer_quirks.c |    8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

--- a/sound/usb/mixer_quirks.c
+++ b/sound/usb/mixer_quirks.c
@@ -1168,17 +1168,17 @@ void snd_emuusb_set_samplerate(struct sn
 {
 	struct usb_mixer_interface *mixer;
 	struct usb_mixer_elem_info *cval;
-	int unitid = 12; /* SamleRate ExtensionUnit ID */
+	int unitid = 12; /* SampleRate ExtensionUnit ID */
 
 	list_for_each_entry(mixer, &chip->mixer_list, list) {
-		cval = mixer_elem_list_to_info(mixer->id_elems[unitid]);
-		if (cval) {
+		if (mixer->id_elems[unitid]) {
+			cval = mixer_elem_list_to_info(mixer->id_elems[unitid]);
 			snd_usb_mixer_set_ctl_value(cval, UAC_SET_CUR,
 						    cval->control << 8,
 						    samplerate_id);
 			snd_usb_mixer_notify_id(mixer, unitid);
+			break;
 		}
-		break;
 	}
 }
 


Patches currently in stable-queue which might be from tiwai@xxxxxxx are

queue-4.9/alsa-usb-audio-add-quirk-for-denon-dcd-1500re.patch
queue-4.9/alsa-usb-audio-improve-frames-size-computation.patch
queue-4.9/alsa-usb-audio-clean-up-mixer-element-list-traverse.patch
queue-4.9/alsa-usb-audio-fix-oob-access-of-mixer-element-list.patch
queue-4.9/alsa-usb-audio-fix-invalid-null-check-in-snd_emuusb_set_samplerate.patch
queue-4.9/alsa-hda-add-nvidia-codec-ids-9a-9d-through-a0-to-patch-table.patch
queue-4.9/alsa-isa-wavefront-prevent-out-of-bounds-write-in-io.patch
queue-4.9/alsa-usb-audio-uac1-invalidate-ctl-on-interrupt.patch



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux