]> git.itanic.dy.fi Git - linux-stable/commit
ALSA: hda: Fix Oops by 9.1 surround channel names
authorTakashi Iwai <tiwai@suse.de>
Tue, 16 May 2023 18:44:12 +0000 (20:44 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 30 May 2023 11:42:11 +0000 (12:42 +0100)
commitb5694aae4c2d9a288bafce7d38f122769e0428e6
tree06aa7c8fb3ae8108f69ae5ce6f0a00d7ec2fd5aa
parent0e61a7432fcd4bca06f05b7f1c7d7cb461880fe2
ALSA: hda: Fix Oops by 9.1 surround channel names

commit 3b44ec8c5c44790a82f07e90db45643c762878c6 upstream.

get_line_out_pfx() may trigger an Oops by overflowing the static array
with more than 8 channels.  This was reported for MacBookPro 12,1 with
Cirrus codec.

As a workaround, extend for the 9.1 channels and also fix the
potential Oops by unifying the code paths accessing the same array
with the proper size check.

Reported-by: Olliver Schinagl <oliver@schinagl.nl>
Cc: <stable@vger.kernel.org>
Link: https://lore.kernel.org/r/64d95eb0-dbdb-cff8-a8b1-988dc22b24cd@schinagl.nl
Link: https://lore.kernel.org/r/20230516184412.24078-1-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
sound/pci/hda/hda_generic.c