New issue
Advanced search Search tips

Issue 917708 link

Starred by 2 users

Issue metadata

Status: Assigned
Owner:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Chrome
Pri: 3
Type: Bug



Sign in to add a comment

Web MIDI Linux drops long sysex messages

Project Member Reported by agoode@chromium.org, Dec 24

Issue description

Chrome Version: 70.0.3538.110 (Developer Build) Fedora Project (64-bit)
OS: Fedora

What steps will reproduce the problem?
(1) Try to send bank to Novation Peak from the Novation Components website

What is the expected result?

Bank is fully loaded.

What happens instead?

Bank is partially loaded.

This is a limitation of the ALSA seq interface. We need to work around this problem. I can easily reproduce this bug from the command line by using amidi (which uses rawmidi and works) and amidicat (which uses seq and fails in the same way).

See https://alsa-devel.alsa-project.narkive.com/6w35hffF/sysex-overflow-when-using-the-midi-sequencer-event-interface
 
It looks like the kernel isn't properly blocking or returning failure:
in seq_midi.c: event_process_midi() calls dump_midi(), checks the error, but does not return it.

dump_midi() looks like it returns reasonable errors, but if opened in NONBLOCK mode (which chromium does), I would expect that it just block like rawmidi does.

dmesg does show a lot of these (or the ratelimited "callbacks suppressed" message):
[778534.455680] ALSA: seq_midi: MIDI output buffer overrun

Looks like this code in ALSA predates git history (2005).
Status: Assigned (was: Untriaged)
This issue has an owner, a component and a priority, but is still listed as untriaged or unconfirmed. By definition, this bug is triaged. Changing status to "assigned". Please reach out to me if you disagree with how I've done this.

Sign in to add a comment