FS#44286 - [linux] midi usb broken in kernel 3.19.2_1

Attached to Project: Arch Linux
Opened by paolo veronelli (paolino) - Saturday, 21 March 2015, 13:57 GMT
Last edited by Doug Newgard (Scimmia) - Sunday, 09 April 2017, 12:52 GMT
Task Type Bug Report
Category Kernel
Status Closed
Assigned To Tobias Powalowski (tpowa)
Architecture x86_64
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 12
Private No

Details

Description:
After upgrading to kernel 3.19.2_1 all midi peripherals are not working anymore. After reboot only first one is recognized (from dmesg) , but doesn't show up in aconnect -i


Steps to reproduce:
connect any midi surface to usb and check with "aconnect -i" it's not there
This task depends upon

Closed by  Doug Newgard (Scimmia)
Sunday, 09 April 2017, 12:52 GMT
Reason for closing:  Fixed
Additional comments about closing:  linux 4.1.4-1
Comment by Alexander (xander) - Friday, 27 March 2015, 09:01 GMT
The same thing, not only with USB-MIDI. After upgrading from 3.18.8 to 3.19 all my midi devices (MPU-401 and OPL-3 on old Genious PCI soundcard) have disappeared from "aconnect -o" out, and they produce no sound. Maybe it's general 3.19 kernel bug, not Arch's?
Comment by Milo Mordaunt (bananaoomarang) - Friday, 27 March 2015, 12:24 GMT
Yup. Looks like 3.19.1->2 introduced this. Nothing about it as far as I can see on Kernel mailing lists yet, possibly Arch specific? amidi -l still lists the hardware, but arecordmidi -l doesn't.
Comment by paolo veronelli (paolino) - Friday, 27 March 2015, 13:04 GMT
there are patches to usb serial, I wrote to the patcher but I've got no answers
Comment by Andre "Osku" Schmidt (oskude) - Friday, 27 March 2015, 13:46 GMT
FWIW, i get these in journal:

Mar 27 14:40:18 foobaer pulseaudio[671]: [pulseaudio] module-alsa-card.c: Failed to find a working profile.
Mar 27 14:40:18 foobaer pulseaudio[671]: [pulseaudio] module.c: Failed to load module "module-alsa-card" (argument: "device_id="3" name="usb-AKAI_professional_LLC_LPK25-00-LPK25" card_name="alsa_card.usb-AKAI_professional_LLC_LPK25-00-LPK25" namereg_fail=false tsched=yes fixed_latency_range=no ignore_dB=no deferred_volume=yes use_ucm=yes card_properties="module-udev-detect.discovered=1""): initialization failed.

i also wonder if any of those arch changes to kernel config are the cause https://projects.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/linux&id=fb991750bc77ee99c6b05f3fbdc752f3e3eaa4f4

i should try with config from previous kernel, and if that doesnt help, start bisecting...
Comment by Milo Mordaunt (bananaoomarang) - Friday, 27 March 2015, 14:46 GMT
Hang on, seems like this is fixed on upgrade to 3.19.3 in [testing] ATM? For me at least, MIDI keyboard is showing again.
Comment by Alexander (xander) - Friday, 27 March 2015, 15:35 GMT
A got this output on 3.19.3:

~ » amidi -l
Dir Device Name
IO hw:2,0 C-Media CMI8738 MIDI
IO hw:3,0,0 USB2.0-MIDI MIDI 1
O hw:3,0,1 USB2.0-MIDI MIDI 2

~ » aconnect -o
client 14: 'Midi Through' [type=kernel]
0 'Midi Through Port-0'

Kernel actually loades all the modules and devices, but creates no ports to work with. dmesg and systemd-journald don't show any interesting about this.
Comment by Milo Mordaunt (bananaoomarang) - Saturday, 28 March 2015, 11:29 GMT
Maybe there's still a problem w/ certain firmware? Mine is working as expected/before:

$ amidi -l
Dir Device Name
IO hw:2,0,0 ReMOTE LE MIDI 1

$ aconnect -o
client 14: 'Midi Through' [type=kernel]
0 'Midi Through Port-0'
client 24: 'ReMOTE LE' [type=kernel]
0 'ReMOTE LE MIDI 1'

$ uname -r
3.19.3-1-ARCH
Comment by paolo veronelli (paolino) - Sunday, 05 April 2015, 08:54 GMT
Nope, even with 3.19.3 midi is not working properly

[paolino@paolino-desktop ~]$ amidi -l
Dir Device Name
IO hw:1,0,0 LPK25 MIDI 1
[paolino@paolino-desktop ~]$ aconnect -i
client 0: 'System' [type=kernel]
0 'Timer '
1 'Announce '
client 14: 'Midi Through' [type=kernel]
0 'Midi Through Port-0'
[paolino@paolino-desktop ~]$ uname -r
3.19.3-1-ARCH
[paolino@paolino-desktop ~]$

loading snd_seq_midi via modprobe solves the problem in 3.19.3-3
Comment by Alexander Harvey (abortretryfail) - Monday, 06 April 2015, 16:33 GMT
I'm also having this problem, both with my AXiS 49 MIDI keyboard and Edirol UM-2 USB interface on 3.19.3

It's worth noting that the the raw device (/dev/snd/midiXXYY) gets created and MIDI data received shows up on it.
Comment by Alexander Harvey (abortretryfail) - Tuesday, 07 April 2015, 00:54 GMT
It's also worth noting that this doesn't seem to be a USB problem. The ports for my SB Audigy's MIDI and synth are missing as well. snd_seq_dummy's MIDI Thru port shows up though.

[arf@Brimstone ~]$ amidi -l
Dir Device Name
IO hw:0,0 Audigy MPU-401 (UART)
IO hw:0,1 Audigy MPU-401 #2
IO hw:3,0,0 AXIS-49 USB Keyboard MIDI 1
[arf@Brimstone ~]$ aconnect -lio
client 0: 'System' [type=kernel]
0 'Timer '
1 'Announce '
client 14: 'Midi Through' [type=kernel]
0 'Midi Through Port-0'

Edit: derp... He said that already in the first post.
Comment by Bartek W (bartekww) - Tuesday, 07 April 2015, 08:19 GMT
[user@archpc ~]$ amidi -l
Dir Device Name
I hw:1,0,0 masterkey 49 MIDI 1
[user@archpc ~]$ aconnect -lio
client 0: 'System' [type=kernel]
0 'Timer '
1 'Announce '
client 14: 'Midi Through' [type=kernel]
0 'Midi Through Port-0'
[user@archpc ~]$
Im also having the problem. 3.19.3-1
Comment by Jean-Philippe Monteiro (zenerve) - Tuesday, 07 April 2015, 18:06 GMT
Same also, also with '3-1

[jph@DMX ~]$ lsusb
Bus 002 Device 004: ID 0944:0117 KORG, Inc. nanoKONTROL2 MIDI Controller
[...]
[jph@DMX ~]$ amidi -l
Dir Device Name
IO hw:1,0,0 nanoKONTROL2 MIDI 1
[jph@DMX ~]$ aconnect -lio
client 0: 'System' [type=kernel]
0 'Timer '
1 'Announce '
client 14: 'Midi Through' [type=kernel]
0 'Midi Through Port-0'
[jph@DMX ~]$ uname -a
Linux DMX 3.19.3-1-ARCH #1 SMP PREEMPT Thu Mar 26 14:56:16 CET 2015 x86_64 GNU/Linux

Cheers. Argh.

[EDIT:] Downgraded to linux-3.18.6-1-x86_64 (last seen on the Linux Rollback Machine on March 18th), without touching anything else to my otherwise up-to-date install, and my keyboard works fine.
Comment by Andre "Osku" Schmidt (oskude) - Thursday, 09 April 2015, 04:47 GMT
looks like snd_seq_midi kernel module not loading automatically anymore is the problem.

https://lists.archlinux.org/pipermail/arch-general/2015-April/038789.html
Comment by Alexander (xander) - Thursday, 09 April 2015, 07:14 GMT
Yes, manual loading of snd_seq_midi module solves the problem. To get hardware OPL3 synth working it's also necessary to load snd_opl3_synth.
Comment by Pauli (pl) - Thursday, 09 April 2015, 08:33 GMT
Manually loading snd_seq_midi seems to do it. Added note to wiki ( https://wiki.archlinux.org/index.php/USB_MIDI_keyboards ) for now.
Comment by paolo veronelli (paolino) - Friday, 10 April 2015, 03:23 GMT
  • Field changed: Percent Complete (100% → 0%)
Please explain how this is not a bug. If this is not a bug the previous behavior (automatically loading the module) was wrong and now we have a feature.
And if this is not a bug it means it will never be fixed.
Comment by Steven Grace (logicgate) - Friday, 10 April 2015, 03:35 GMT
I can confirm that this affects my PCI MIDI interface in addition to USB MIDI devices.

I'm manually loading snd_seq_midi as a workaround but am hoping that the automatic loading gets restored.
Comment by Peter Sutton (foxxy) - Tuesday, 12 May 2015, 14:46 GMT
Confirming for 4.0.1. snd_seq_midi is not automatically loaded and, therefore, no midi devices functioned. Manually loading as a workaround.
Comment by Sebastiaan Lokhorst (lonaowna) - Monday, 10 August 2015, 11:48 GMT
On my machine, with Linux 4.1.4, snd_seq_midi is loaded automatically. Is this also the case for you?
Comment by Alexander (xander) - Monday, 10 August 2015, 12:46 GMT
Confirm, 4.1.4-ck2 doesn't feature this bug, all modules are loaded at startup.
Comment by paolo veronelli (paolino) - Monday, 10 August 2015, 15:29 GMT
4.1.4-1 x86_64 doesn't need manually loading snd_seq_midi. Nice one. Can't check on 32 bit kernel.
Comment by Alexander Harvey (abortretryfail) - Monday, 10 August 2015, 23:10 GMT
4.1.3-1 on x86_64 still needed to manually load it. I'm updating to 4.1.4-1 now.
Comment by Steven Grace (logicgate) - Tuesday, 11 August 2015, 00:24 GMT
Confirmed that snd_seq_midi is automatically loaded in 4.1.4-1 x86_64.

Loading...