/dev/sequencer descriptions
Hi Takashi,
We're working on syzkaller descriptions for /dev/sequencer [1], but have some troubles understanding its functionality. The main question is: is sound/synth/emux/ code reachable when tested in a VM (we're using QEMU with -soundhw all), or does it require some specific hardware to be present?
In our setup (with Debian Stretch userspace image) we have /dev/sequencer with SNDRV_MINOR_OSS_SEQUENCER and /dev/sequencer2 with SNDRV_MINOR_OSS_MUSIC. For the former, there are no synth devices as reported by SNDCTL_SEQ_NRSYNTHS. For the latter, synth devices are there, but the load_patch() callback is not reachable as this check [2] fails.
Is that code impossible to test in a VM at all? Or are there some specific kernel options/drivers that need to be enabled?
Thanks!
[1] https://github.com/google/syzkaller/pull/1952
[2] https://elixir.bootlin.com/linux/v5.7.8/source/sound/core/seq/oss/seq_oss_sy...
On Mon, 27 Jul 2020 19:47:54 +0200, Andrey Konovalov wrote:
Hi Takashi,
We're working on syzkaller descriptions for /dev/sequencer [1], but have some troubles understanding its functionality. The main question is: is sound/synth/emux/ code reachable when tested in a VM (we're using QEMU with -soundhw all), or does it require some specific hardware to be present?
It's for Creative SoundBlaster EMU chips, and it needs the specific hardware that isn't emulated, so far.
In our setup (with Debian Stretch userspace image) we have /dev/sequencer with SNDRV_MINOR_OSS_SEQUENCER and /dev/sequencer2 with SNDRV_MINOR_OSS_MUSIC. For the former, there are no synth devices as reported by SNDCTL_SEQ_NRSYNTHS. For the latter, synth devices are there, but the load_patch() callback is not reachable as this check [2] fails.
Is that code impossible to test in a VM at all? Or are there some specific kernel options/drivers that need to be enabled?
Another possible device supporting the OSS sequencer is the old FM OPL3. But it seems also not properly implemented in QEMU (I see only OPL2), unfortunately.
thanks,
Takashi
On Mon, Jul 27, 2020 at 8:02 PM Takashi Iwai tiwai@suse.de wrote:
On Mon, 27 Jul 2020 19:47:54 +0200, Andrey Konovalov wrote:
Hi Takashi,
We're working on syzkaller descriptions for /dev/sequencer [1], but have some troubles understanding its functionality. The main question is: is sound/synth/emux/ code reachable when tested in a VM (we're using QEMU with -soundhw all), or does it require some specific hardware to be present?
It's for Creative SoundBlaster EMU chips, and it needs the specific hardware that isn't emulated, so far.
In our setup (with Debian Stretch userspace image) we have /dev/sequencer with SNDRV_MINOR_OSS_SEQUENCER and /dev/sequencer2 with SNDRV_MINOR_OSS_MUSIC. For the former, there are no synth devices as reported by SNDCTL_SEQ_NRSYNTHS. For the latter, synth devices are there, but the load_patch() callback is not reachable as this check [2] fails.
Is that code impossible to test in a VM at all? Or are there some specific kernel options/drivers that need to be enabled?
Another possible device supporting the OSS sequencer is the old FM OPL3. But it seems also not properly implemented in QEMU (I see only OPL2), unfortunately.
OK, got it, thank you!
participants (2)
-
Andrey Konovalov
-
Takashi Iwai