[alsa-devel] [PATCH 2/2] ALSA: oxfw: discontinue MIDI substream for scs1x at transaction failure

Takashi Sakamoto o-takashi at sakamocchi.jp
Fri Feb 19 10:23:36 CET 2016


Hi,

On Feb 19 2016 17:19, Takashi Iwai wrote:
> On Fri, 19 Feb 2016 01:55:50 +0100,
> Takashi Sakamoto wrote:
>>
>> With a previous commit, ALSA oxfw driver retries transferring MIDI
>> messages at transaction failure for scs1x. On the other hand, there're
>> fatal transaction error. Then, MIDI messages never reach to the unit
>> anymore. In this case, MIDI substream should be discontinued.
>>
>> This commit stops MIDI transferring after the fatal error occurs.
>> Unfortunately, unlike ALSA PCM functionality, ALSA rawmidi core has no
>> feature to discontinue MIDI substream in kernel side, thus this commit
>> just stops MIDI transferring without notifying it to userspace.
>
> It's fine to take this, and I would take it as is for now.

OK.

> But we can extend the rawmidi somehow to deal with such an error, too.
> Maybe just having "error" flag in the rawmidi runtime and adding a
> helper function to set the error and stop the stream should work
> easily.

You forgot ALSA sequencer.


I had considered about it when working for snd-firewire-digi00x (Mar 
2015), and realised that it may take much time. At least, we work for:
  - ALSA rawmidi core
  - ALSA rawmidi interface for userspace

Additionally, users mostly use rawmidi devices via ALSA sequencer:
  - ALSA sequencer core
  - ALSA sequencer interface for userspace

Furthermore, regression test is required for:
  - ALSA drivers with MIDI functionality
  - ALSA rawmidi/sequencer applications in userspace

It's not 2000s. I guess that little developers are attracted for this 
work. In my option, the work is really cost-expensive than actual merit. 
So currently I'm negative for the idea.


Regards

Takashi Sakamoto


More information about the Alsa-devel mailing list