From: FFADO <ffa...@ff...> - 2012-03-29 16:23:33
|
#216: Unhandled XRUN ---------------------------+------------------------------------------------ Reporter: j.silvestre | Owner: Type: bug | Status: closed Priority: major | Milestone: FFADO 2.1 Component: | Version: FFADO SVN (2.0 branch) Resolution: fixed | Keywords: Device_name: | ---------------------------+------------------------------------------------ Comment (by stefanr): I am not sure whether Pieter suspected specifically a bug in FFADO's handling of controller bugs regarding cycle timer, or generally a bug in FFADO's cycle timer usage (per comment 2). Even if it was the former, it still cannot be concluded that recent kernels' handling of those controller bugs automatically prevents such a suspected issue in FFADO from happening. Maybe the respective FFADO code paths are still taken. What's more: The reporter has got an "Texas Instruments PCIxx12 OHCI Compliant IEEE 1394 Host Controller [104c:803a]". I have a suspicion that this one is indeed quirkier than most other TI controllers. (Example of a PCIxx12 oddity: https://bugzilla.redhat.com/show_bug.cgi?id=608544) However, we know little about TI PCIxx12. It is as yet absent from firewire-ohci's hardwired workarounds table (http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=drivers/firewire/ohci.c;h=7f5f0da726dafde5ae23ad1343861e12857c5002#l280). Hence the kernel's cycle timer workaround is not active for this controller. An owner of a TI PCIxx12 can use "test_cycle_time" from http://user.in- berlin.de/~s5r6/linux1394/utils/ to check whether this controller needs the workaround. It would be good to get to know whether or not this is the case. If yes, it is quick and easy to get the necessary table entry released into the mainline kernel and subsequently all actively maintained distributor kernels. So the ideal course of action would be: * The reporter (or anybody else who can) tests PCIxx12 for the hardware bug. Instructions are at the top of the source file of "test_cycle_time". * If the hardware bug is present, the reporter manually activates firewire-ohci's workaround. I will gladly give instructions, it's simple. Then the reporter attempts to reproduce the initial issue of occasional unhandled xruns. * If there still are unhandled xruns, someone familiar with FFADO's debug messages needs to compare the old and new logs and figure out whether this is still the same problem or something new. Re comment 6: The kernel's workaround was written by Clemens. -- Ticket URL: <http://subversion.ffado.org/ticket/216#comment:8> FFADO <http://subversion.ffado.org/index.fcgi> Free Firewire Audio Drivers |