[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] Zaptel PCI IRQ problem



I sent this mail to xen-users, but no answer so I try here just in case:

Hello everyone,

I'm currently trying to run an Asterisk server in a Xen kernel under Dom0 (debian kernel 2.6.18 with xen hypervisor 3.0.4). I had read of some possible timing issues with ztdummy (using rtc) under DomU, but I have a zaptel compatible PCI card (TDM400P), and I experience big problems with IRQ misses every time there is a bit of load on the server (for example, when an HVM DomU is running). The card is supposed to report 1000 interruptions per second, but it doesn't, and consequences are horrible crackling sound in communications. Running the utility zttest to check for the stability of those interrupts under a small bit of load, i get:

# ./zttest
Opened pseudo zap interface, measuring accuracy...
99.609375% 99.609375% 99.218750% 99.316406% 99.804688% 99.414062% 99.121094% 99.511719% 99.121094% 99.316406% 99.707031% 99.707031% 98.730469% 99.414062% 99.902344% 99.218750% 100.000000% 99.414062% 98.828125% 99.218750% 99.316406% 98.449707% 100.000000%

(from digium: results should be >= 99.98 in order not to have sound problems)

I tried about everything I could find on Asterisk documentation: moving PCI slots, noapic and acpi=off boot options, play with different kernel options: iosched/preemption/timer/..., play with BIOS PCI options, PCI latencies, IRQ balance, smp_afinity, ................ but impossible to come up with anything correcting that problem.

I then mailed to Asterisk user mailing list and they told me:

"Xen has many, many problems with interrupt handling and is utterly
unsuitable for running anything that depends on hardware peripherals. I
speak from very painful experience.

There is no way, under any circumstance, that I would try to run
Asterisk with interface cards in a Xen environment. It's too bad you
wasted so much time trying to fix it -- it's never going to work."


Does anyone have an idea of how to possibly resolve this issue, or should I really abandon the idea using Xen and Asterisk together?


# xm info
host                   : sol
release                : 2.6.18
version                : #3 SMP Fri May 11 11:32:34 CEST 2007
machine                : x86_64
nr_cpus                : 2
nr_nodes               : 1
sockets_per_node       : 1
cores_per_socket       : 2
threads_per_core       : 1
cpu_mhz                : 2009
hw_caps : 178bfbff:e3d3fbff:00000000:00000010:00000001:00000000:00000003
total_memory           : 2047
free_memory            : 136
xen_major              : 3
xen_minor              : 0
xen_extra              : .3-1
xen_caps               : xen-3.0-x86_64
xen_pagesize           : 4096
platform_params        : virt_start=0xffff800000000000
xen_changeset          : Tue Oct 17 22:09:52 2006 +0100
cc_compiler : gcc version 4.1.2 20061028 (prerelease) (Debian 4.1.1-19)
cc_compile_by          : ultrotter
cc_compile_domain      : debian.org
cc_compile_date        : Fri Nov  3 00:21:27 CET 2006
xend_config_format     : 2


# cat /proc/interrupts
        CPU0              CPU1
1:         94          0        Phys-irq  i8042
6:          3          0        Phys-irq  floppy
8:          0          0        Phys-irq  rtc
9:          0          0        Phys-irq  acpi
14:         63          0        Phys-irq  ide0
16:          1          0        Phys-irq  libata, eth3
17:     532462          0        Phys-irq  libata
18:       4102          0        Phys-irq  libata
19:     493234          0        Phys-irq  sky2, eth0
20:     689908          0        Phys-irq  eth1
21:    5559727          0        Phys-irq  wctdm
256:    3022027          0     Dynamic-irq  timer0
257:     522260          0     Dynamic-irq  resched0
258:         43          0     Dynamic-irq  callfunc0
259:          0     432127     Dynamic-irq  resched1
260:          0        106     Dynamic-irq  callfunc1
261:          0    1743951     Dynamic-irq  timer1
262:       1020          0     Dynamic-irq  xenbus
263:          0          0     Dynamic-irq  console
NMI:          0          0
LOC:          0          0
ERR:          0
MIS:          0


Thanks,
François.

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.