linux/sound/core/seq/oss
Takashi Iwai d2392b79d8 ALSA: seq: oss: Fix races at processing SysEx messages
commit 0179488ca9 upstream.

OSS sequencer handles the SysEx messages split in 6 bytes packets, and
ALSA sequencer OSS layer tries to combine those.  It stores the data
in the internal buffer and this access is racy as of now, which may
lead to the out-of-bounds access.

As a temporary band-aid fix, introduce a mutex for serializing the
process of the SysEx message packets.

Reported-by: Kun Hu <huk23@m.fudan.edu.cn>
Closes: https://lore.kernel.org/2B7E93E4-B13A-4AE4-8E87-306A8EE9BBB7@m.fudan.edu.cn
Cc: <stable@vger.kernel.org>
Link: https://patch.msgid.link/20241230110543.32454-1-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2025-01-09 13:32:06 +01:00
..
Makefile treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
seq_oss.c ALSA: seq: Fix assignment in if condition 2021-06-09 17:30:26 +02:00
seq_oss_device.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
seq_oss_event.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
seq_oss_event.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
seq_oss_init.c ALSA: seq: oss: fix typo 2022-03-14 07:51:22 +01:00
seq_oss_ioctl.c sound fixes for 5.2 2019-07-05 02:03:50 +09:00
seq_oss_midi.c ALSA: seq: oss: Fix racy open/close of MIDI devices 2023-06-16 09:26:41 +02:00
seq_oss_midi.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
seq_oss_readq.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
seq_oss_readq.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
seq_oss_rw.c ALSA: seq: Fix assignment in if condition 2021-06-09 17:30:26 +02:00
seq_oss_synth.c ALSA: seq: oss: Fix races at processing SysEx messages 2025-01-09 13:32:06 +01:00
seq_oss_synth.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
seq_oss_timer.c ALSA: Use fallthrough pseudo-keyword 2020-07-09 13:01:29 +02:00
seq_oss_timer.h ALSA: seq: oss: remove unused inline function snd_seq_oss_timer_is_realtime 2020-04-29 15:58:55 +02:00
seq_oss_writeq.c ALSA: seq: Fix assignment in if condition 2021-06-09 17:30:26 +02:00
seq_oss_writeq.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00