Ticket #263 (closed bug: fixed)

Opened 11 years ago

Last modified 8 years ago

Audiofire 4 regular xruns

Reported by: bluetooth Assigned to:
Priority: major Milestone: FFADO 2.x
Component: devices/fireworks Version: FFADO 2.0.0
Keywords: audiofire, xrun Cc:
The device the bug applies to:

Description

Hello All. I have Echo Audiofire 4 and ieee-1394 controller ST-Lab F122(Nec chipset). When i'm running jack, i have regular xruns(sometimes 1 in minute, sometimes seldom) and jackd crashes(on watchdog timeout). I Have tried to run jack with highest priority: first, i added this strigs in /etc/security/limits.d/audio.conf: @audio - rtprio 99 @audio - memlock 1333248 (this value also was "unlimited" - the behaviour is the same) @audio - nice -20 I have tried difference buffer size( -p1024 -n3; -p2048 -n3; -p1024 -n4 and many others in 44100, 48000, 96000) I have tried to gain priority of jack with schedtool and nice. this is ny start script for jack: #!/bin/sh /usr/bin/jackd -R -P89 -dfirewire -r96000 -p2048 -n3 & 2>/dev/null sleep 2;

schedtool -F -p 99 pgrep jackd renice -20 -p pgrep jackd

It helps, but don't change the situation noticeable.

Then i have played with irq, i added this to script: for i in pgrep ksoftirqd; do

sudo chrt -f -p 99 $i;

done

It didn't help.

After I have compiled rt kernel 2.6.31 and added an rtirq script. It didn't help.

My distr: debian lenny. FFADO and jack - from debian-multimedia.org(unstable) FFADO - 2.0.0-1 jack - 0.118+snv3796-2 Video card - NV GF7300GT; propriethary drivers 190.42(same on both kernels) I Have tested nv drivers on rt kernel(on xen kernel nv driver don't work :) ), but nothing changed(see ffado-jack-nv.log)

see below jack logs, ffado-diag, info about irqs on both kernels(2.6.26-xen-amd64 and 2.6.31-rt-amd64).

P.S. Once I have listening the music with audiofire one hour without any xruns, in spite of rt kernel building in this time. But after restart jack i have same old picture.

Have you any ideas to getting audiofire works without xruns?

Attachments

ffado-diag-xen.log (9.6 kB) - added by bluetooth on 01/22/10 13:41:31.
ffado-diag output for 2.6.26-xen-amd64 kernel
ffado-jack-xen.log (237.3 kB) - added by bluetooth on 01/22/10 13:43:06.
interrupts-xen.log (3.2 kB) - added by bluetooth on 01/22/10 13:44:21.
info about interrups in xen system
ffado-diag-rt.log (8.4 kB) - added by bluetooth on 01/22/10 13:45:00.
ffado-diag output for 2.6.31-rt-amd64 kernel
ffado-jack-rt.log (48.1 kB) - added by bluetooth on 01/22/10 13:46:02.
jack snderr for rt kernel
interrupts-rt.log (4.3 kB) - added by bluetooth on 01/22/10 13:46:33.
info about interrups in rt system
ffado-jack-nv.log (11.9 kB) - added by bluetooth on 01/22/10 13:46:59.
jack snderr for nv driver

Change History

01/22/10 13:41:31 changed by bluetooth

  • attachment ffado-diag-xen.log added.

ffado-diag output for 2.6.26-xen-amd64 kernel

01/22/10 13:43:06 changed by bluetooth

  • attachment ffado-jack-xen.log added.

01/22/10 13:44:21 changed by bluetooth

  • attachment interrupts-xen.log added.

info about interrups in xen system

01/22/10 13:45:00 changed by bluetooth

  • attachment ffado-diag-rt.log added.

ffado-diag output for 2.6.31-rt-amd64 kernel

01/22/10 13:46:02 changed by bluetooth

  • attachment ffado-jack-rt.log added.

jack snderr for rt kernel

01/22/10 13:46:33 changed by bluetooth

  • attachment interrupts-rt.log added.

info about interrups in rt system

01/22/10 13:46:59 changed by bluetooth

  • attachment ffado-jack-nv.log added.

jack snderr for nv driver

01/25/10 06:09:27 changed by cladisch

There have been reports about xrun problems with 5.x firmwares.

What firmware version is your device using?

01/25/10 08:28:30 changed by bluetooth

Thanks for your comment. If firmware version is the same as drivers version, then firmware version - 5.5 So, i understood that i must downgrade the firmware. I will describe results of this.

(follow-up: ↓ 4 ) 01/25/10 11:17:20 changed by bluetooth

I downgraded the firmware to 4.8(it wasn't simple :) ), but nothing is changed...Any Ideas?

(in reply to: ↑ 3 ; follow-up: ↓ 5 ) 05/27/11 23:20:18 changed by whitewind

Hello! I have the same problem, it seems it has something to do with juju stack. I am using Suse 11.2 and a simple configuration on desktop kernel. My audiofire 2 works with NO xruns days online. But after I made a fresh installation of Suse 11.4 with 2.6.37 kernel and new firewire stack I am getting xruns every 5 minutes or more often, sometimes I get bursts of xruns by 10-15 xruns in 20 seconds... What I have done: 1) Setting different buffer sizes and period settings didnt help. And I cant catch any difference between 256/3 and 4096/3, 2) 44100, 48000... didn`t help 3) Constant CPU frequency didn`t help 4) Priority settings for jackd didn`t help too 5) I have 3 USB channels on the same IRQ, but they are not connected.

I have a PCI FW controller, and I have turned off that one on my motherboard - it was working bad with many xruns on my 11.2 installation. jack 1.9.6 libffado 2.0.1 kernel 2.6.37.1-1.2-desktop #1 SMP PREEMPT Any ideas?

(in reply to: ↑ 4 ) 05/28/11 07:24:23 changed by stefanr

Replying to whitewind:

I have the same problem, it seems it has something to do with juju stack. I am using Suse 11.2 and a simple configuration on desktop kernel. My audiofire 2 works with NO xruns days online. But after I made a fresh installation of Suse 11.4 with 2.6.37 kernel and new firewire stack I am getting xruns every 5 minutes or more often, sometimes I get bursts of xruns by 10-15 xruns in 20 seconds...

The entire system was updated to new versions and features. There is little reason to assume that this regression has anything to do with the IEEE 1394 kernel drivers, even though you may have switched from linux1394 to juju by way of the 2.6.37 kernel update.

What I have done: 1) Setting different buffer sizes and period settings didnt help. And I cant catch any difference between 256/3 and 4096/3,

Back in the kernel 2.6.32 days I saw qualitative differences between likelihood of xruns at very large buffers in direct comparison between linux1394 and juju, but not anymore and never at normal buffer sizes.

2) 44100, 48000... didn`t help 3) Constant CPU frequency didn`t help 4) Priority settings for jackd didn`t help too 5) I have 3 USB channels on the same IRQ, but they are not connected.

Unload all kernel modules that are not essential during a jackd session. Especially WLAN drivers, memory card slot drivers, ...

If this does not improve things, switch off any desktop effects; if this doesn't help, switch off X11 entirely and run jackd in a Linux text console; but then I don't know how to monitor for xruns.

Do the xruns happen even if jackd runs without any client application, or only when a specific client is connected? If the latter, it may also be a regression in that client.

I have a PCI FW controller, and I have turned off that one on my motherboard - it was working bad with many xruns on my 11.2 installation. jack 1.9.6 libffado 2.0.1 kernel 2.6.37.1-1.2-desktop #1 SMP PREEMPT Any ideas?

Prefer the latest libraw1394 (version 2.0.7 currently) when using juju instead of linux1394.

05/29/11 05:44:04 changed by bluetooth

In my case problem was solved when I changed my videocard from NVIDIA to INTEL(Q965 chipset) and switched to RT kernel 2.6.31 with old firewire stack. On my system (Debian Lenny amd64) was not any difference between jack1, jack2, libffado libs, ieee1394... currently I use this components from squeeze distribution.

Also, in my case there is problem with latest(5.5) firmware for audiofire: regular xruns appears again, so I use firmware 4.8.>

5) I have 3 USB channels on the same IRQ, but they are not connected.

Are you sure? on this usb may be connected something like webcam or cardreader. If you can, I recommend you to reassign ieee to other IRQ. On SuSE 11.2 it was on same IRQ? Also I recommend you to try with 4.8 firmware.

05/29/11 10:23:50 changed by whitewind

Oh, I will try to play with IRQ, but I found a way to solve it ))) I dont know what changed, but now I have no xruns on the motherboard internal FW port... I just remembered about the old port when I was writing previous post and gave it a chance. So on the 11.4 there is no problem with it, and there are xruns on 11.2... And yes, IRQ map didnt changed after 11.4 installation. I don`t know how to reassign IRQs... will google it! About USB: I am not sure, I hope I understand lsusb output, it shows that all my usb devices are on different ports. I have a big problem with RT kernels, as in Suse repos there is no RT kernel. And I don`t really like to compile it ))) I just want it to work.

04/01/12 07:31:19 changed by jwoithe

  • status changed from new to closed.
  • resolution set to fixed.

It appears that at least one user has a workaround for their particular system, and there's been no further comments on this matter. Essentially it seems they upgraded from SuSE 11.2 to 11.4 so it's not clear what might have rectified the problem. For now I think it's appropriate to close the bug; if anything further comes to light it can be reopened.