[RFC PATCH] ALSA: seq: Mark OSS sequencer emulation as deprecated
From: Takashi Iwai
Date: Thu Sep 10 2026 - 12:19:06 EST
OSS sequencer API emulation has been implemented as a client of ALSA
sequencer, decades ago, at the time where OSS was still use. But the
API itself became very niche, and almost noone using it for a real
purpose any longer -- only exceptions are AI and fuzzers, who have
been causing significant maintenance burden for issues they hit &
found.
Meanwhile, the most features of OSS sequencer API emulation can be
achieved in user-space, either by ALSA-OSS layer (aoss) or oss-seq-emu
program:
https://github.com/alsa-project/alsa-oss
https://github.com/tiwai/oss-seq-emu
where the former is LD_PRELOAD wrapper and the latter is a CUSE-based
daemon. So we can drop the stuff from the kernel sooner or later.
Now, let's mark the OSS sequencer emulation as deprecated and give a
warning when loaded, so that we can drop it later actually.
Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>
---
sound/core/seq/Kconfig | 7 +++++--
sound/core/seq/oss/seq_oss.c | 3 +++
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/sound/core/seq/Kconfig b/sound/core/seq/Kconfig
index e4f58cb985d4..0d606159103e 100644
--- a/sound/core/seq/Kconfig
+++ b/sound/core/seq/Kconfig
@@ -27,14 +27,17 @@ config SND_SEQ_DUMMY
will be called snd-seq-dummy.
config SND_SEQUENCER_OSS
- tristate "OSS Sequencer API"
+ tristate "OSS Sequencer API (deprecated)"
depends on SND_OSSEMUL
select SND_SEQ_MIDI_EVENT
help
Say Y here to enable OSS sequencer emulation (both
/dev/sequencer and /dev/music interfaces).
- Many programs still use the OSS API, so say Y.
+ The OSS sequencer API is almost nowhere used, hence this option will
+ be dropped soon.
+ Use user-space wrapper (alsa-oss) or CUSE daemon (oss-seq-emu)
+ instead of the kernel-side emulation.
To compile this driver as a module, choose M here: the module
will be called snd-seq-oss.
diff --git a/sound/core/seq/oss/seq_oss.c b/sound/core/seq/oss/seq_oss.c
index 2835576040ed..803bddd209e1 100644
--- a/sound/core/seq/oss/seq_oss.c
+++ b/sound/core/seq/oss/seq_oss.c
@@ -276,6 +276,9 @@ register_proc(void)
{
struct snd_info_entry *entry;
+ pr_warn("seq-oss: kernel OSS sequencer emulation is deprecated\n");
+ pr_warn("seq-oss: Use user-space solution (alsa-oss or oss-seq-emu) instead.\n");
+
entry = snd_info_create_module_entry(THIS_MODULE, SNDRV_SEQ_OSS_PROCNAME, snd_seq_root);
if (entry == NULL)
return -ENOMEM;
--
2.55.0