[alsa-devel] usb-usx2y: playback fails with Tascam US122 on kernel 3.14

Dr Nicholas J Bailey nicholas.bailey at glasgow.ac.uk
Wed Aug 20 19:50:21 CEST 2014


On Wednesday 06 August 2014 19:19:22 Daniel Mack wrote:
> The best thing you can do is probably bisect the issue:
> 
>   https://wiki.ubuntu.com/Kernel/KernelBisection
> 
> > I understand that the US-122 is a usb-1.1 device and I have the ehci
> > module  loaded, but it was there too with the older kernel and that
> > worked fine.
> Yes, that shouldn't be an issue. Let us know what the bisection tells you.
> 
> 
> Daniel

OK, I put aside some time to try and do this and didn't get too far :(

I'm using debian testing (jessie) so I cloned from

	git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git

rather than the ubuntu one, as recommended here:

	https://wiki.debian.org/DebianKernel/GitBisect

The test I wanted to work was to make the command

	jackd -u -dalsa -dhw:1,0 -r48000 -p512 -n3

behave as expected, hw:1,0 being my Tascam US-122 sound box.

To be sure, I booted up kernel 3.10.11 to which I'd applied patches to make 
the MIDI interface of the box work. This is documented on the ALSA-devel list 
a while back. It did. I played audio through it while it was configured duplex 
at the same time watching a video and building a new kernel.

I checked out v3.11 from the kernel tree, and built it. When it ran, I got a 
failure from the same jack command:

"""
ALSA: poll time out, polled for 15999083 usecs
JackAudioDriver::ProcessAsync: read error, stopping...
"""

So far, so good. That can be the bad end of the bisection. The trouble is, 
building 3.10 resulted in exactly the same error. My version 3.10.11 (which 
works) is build from the debian source package rather than the kernel source, 
so presumably the applied patches do something good which makes the sound 
system happier. Heavens knows what.

For a laugh I pulled the latest 3.16 source package from the debian repo and 
built that. This produced the same failure as above.

So the thing is, I can't make any stock kernel work on my Debian laptop, which 
means there aren't two points between which to bisect.

That's all I've got time for at the moment. I'll append the notes I made 
yesterday and today while the builds and tests were going on, just in case 
they are any help. At least I have a kernel (3.10.11) that works for now, but 
unless somebody who really knows what they are doing is going on the case, it 
looks like its just a matter of time before I'll be buying a whole bunch of 
new audio interfaces. We have at least 4 or 5 of these Tascam US-122 boxes, 
and use them quite a lot, so I am nervously fingering my wallet... :(

Nick/.

8><---
Linux arial 3.10.11 #1 SMP Wed Oct 2 19:26:59 BST 2013 i686 GNU/Linux
---------------------------------------------------------------------
** This is the kernel patched with the MIDI device fixes sent to the
   alsa-dev mail list **
   
Works (as nick).

nick at arial:~/Bisect/linux-stable$ jackd -u -dalsa -dhw:1,0 -r48000 -p512 -n3
jackdmp 1.9.10
Copyright 2001-2005 Paul Davis and others.
Copyright 2004-2014 Grame.
jackdmp comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details
no message buffer overruns
no message buffer overruns
no message buffer overruns
JACK server starting in realtime mode with priority 10
self-connect-mode is "Don't restrict self connect requests"
audio_reservation_init
Acquire audio card Audio1
creating alsa driver ... hw:1,0|hw:1,0|512|3|48000|0|0|nomon|swmeter|-|32bit
configuring for 48000Hz, period = 512 frames (10.7 ms), buffer = 3 periods
ALSA: final selected sample format for capture: 24bit little-endian
ALSA: use 3 periods for capture
ALSA: final selected sample format for playback: 24bit little-endian
ALSA: use 3 periods for playback
^CJack main caught signal 2
Released audio card Audio1
audio_reservation_finish

----------------------------------------------------------------------
Linux arial 3.11.0+ #1 SMP Tue Aug 19 16:28:36 BST 2014 i686 GNU/Linux
----------------------------------------------------------------------
As nick:
nick at arial:~/Bisect/linux-stable$ jackd -u -dalsa -dhw:1,0 -r48000 -p512 -n3
jackdmp 1.9.10
Copyright 2001-2005 Paul Davis and others.
Copyright 2004-2014 Grame.
jackdmp comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details
no message buffer overruns
no message buffer overruns
no message buffer overruns
JACK server starting in realtime mode with priority 10
self-connect-mode is "Don't restrict self connect requests"
audio_reservation_init
Failed to acquire device name : Audio1 error : Device reservation request with 
priority 2147483647 denied for "Audio1" via RequestRelease()
Audio device hw:1,0 cannot be acquired...
Cannot initialize driver
JackServer::Open failed with -1
Failed to open server

(EDIT: That Device reservation request error doesn't seem to be 
reproducable...?)

As root:
nick at arial:~/Bisect/linux-stable$ sudo jackd -u -dalsa -dhw:1,0 -r48000 -p512 
-n3
jackdmp 1.9.10
Copyright 2001-2005 Paul Davis and others.
Copyright 2004-2014 Grame.
jackdmp comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details
no message buffer overruns
no message buffer overruns
no message buffer overruns
JACK server starting in realtime mode with priority 10
self-connect-mode is "Don't restrict self connect requests"
audio_reservation_init
Acquire audio card Audio1
creating alsa driver ... hw:1,0|hw:1,0|512|3|48000|0|0|nomon|swmeter|-|32bit
configuring for 48000Hz, period = 512 frames (10.7 ms), buffer = 3 periods
ALSA: final selected sample format for capture: 24bit little-endian
ALSA: use 3 periods for capture
ALSA: final selected sample format for playback: 24bit little-endian
ALSA: use 3 periods for playback
ALSA: poll time out, polled for 15999083 usecs
JackAudioDriver::ProcessAsync: read error, stopping...

-------------------
Building 3.10:

scripts/kconfig/conf --silentoldconfig Kconfig
include/config/auto.conf:2221:warning: symbol value 'm' invalid for 
USB_OHCI_HCD_PCI

... Changed to "y", try again ...

Same result (whether root or not):

nick at arial:~/Bisect$ uname -a
Linux arial 3.10.0 #3 SMP Wed Aug 20 13:53:56 BST 2014 i686 GNU/Linux
nick at arial:~/Bisect$ jackd -u -dalsa -dhw:1,0 -r48000 -p512 -n3
jackdmp 1.9.10
Copyright 2001-2005 Paul Davis and others.
Copyright 2004-2014 Grame.
jackdmp comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details
no message buffer overruns
no message buffer overruns
no message buffer overruns
JACK server starting in realtime mode with priority 10
self-connect-mode is "Don't restrict self connect requests"
audio_reservation_init
Acquire audio card Audio1
creating alsa driver ... hw:1,0|hw:1,0|512|3|48000|0|0|nomon|swmeter|-|32bit
configuring for 48000Hz, period = 512 frames (10.7 ms), buffer = 3 periods
ALSA: final selected sample format for capture: 24bit little-endian
ALSA: use 3 periods for capture
ALSA: final selected sample format for playback: 24bit little-endian
ALSA: use 3 periods for playback
ALSA: poll time out, polled for 15999090 usecs
JackAudioDriver::ProcessAsync: read error, stopping...


------------------------------------------------------------------------------
Linux arial 3.14-2-686-pae #1 SMP Debian 3.14.15-2 (2014-08-09) i686 GNU/Linux
------------------------------------------------------------------------------
nick at arial:/usr/src/linux-3.16$ jackd -u -dalsa -dhw:1,0 -r48000 -p512 -n3  
jackdmp 1.9.10
Copyright 2001-2005 Paul Davis and others.
Copyright 2004-2014 Grame.
jackdmp comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details
no message buffer overruns
no message buffer overruns
no message buffer overruns
JACK server starting in realtime mode with priority 10
self-connect-mode is "Don't restrict self connect requests"
audio_reservation_init
Acquire audio card Audio1
creating alsa driver ... hw:1,0|hw:1,0|512|3|48000|0|0|nomon|swmeter|-|32bit
configuring for 48000Hz, period = 512 frames (10.7 ms), buffer = 3 periods
ALSA: final selected sample format for capture: 24bit little-endian
ALSA: use 3 periods for capture
ALSA: final selected sample format for playback: 24bit little-endian
ALSA: use 3 periods for playback
ALSA: cannot set hardware parameters for playback
ALSA: cannot configure playback channel
Cannot initialize driver
JackServer::Open failed with -1
Failed to open server

Build latest 3.16 from source package in debian experimental...

Same result.


More information about the Alsa-devel mailing list