• Takashi Iwai's avatar
    ALSA: seq: virmidi: Fix discarding the unsubscribed output · 82fd4b05
    Takashi Iwai authored
    The recent change to move the virmidi output processing to a work
    slightly modified the code to discard the unsubscribed outputs so that
    it works without a temporary buffer.  However, this is actually buggy,
    and may spew a kernel warning due to the unexpected call of
    snd_rawmidi_transmit_ack(), as triggered by syzbot.
    
    This patch takes back to the original code in that part, use a
    temporary buffer and simply repeat snd_rawmidi_transmit(), in order to
    address the regression.
    
    Fixes: f7debfe5 ("ALSA: seq: virmidi: Offload the output event processing")
    Reported-by: syzbot+ec5f605c91812d200367@syzkaller.appspotmail.com
    Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
    82fd4b05
seq_virmidi.c 13.6 KB