diff --git a/sound/core/ump.c b/sound/core/ump.c index ada2625ce78f..5a4a7d0b7cca 100644 --- a/sound/core/ump.c +++ b/sound/core/ump.c @@ -1081,6 +1081,8 @@ static int snd_ump_legacy_open(struct snd_rawmidi_substream *substream) guard(mutex)(&ump->open_mutex); if (ump->legacy_substreams[dir][group]) return -EBUSY; + if (!ump->groups[group].active) + return -ENODEV; if (dir == SNDRV_RAWMIDI_STREAM_OUTPUT) { if (!ump->legacy_out_opens) { err = snd_rawmidi_kernel_open(&ump->core, 0,