[Asterisk-Users] te110p and interrupts
Andrew Kohlsmith
akohlsmith-asterisk at benshaw.com
Tue Apr 11 05:36:38 MST 2006
On Monday 10 April 2006 19:20, Mojo with Horan & Company, LLC wrote:
> Try booting with apic off, I think it's noapic kernel option. Notice
> this is "APIC" and not "ACPI", which you referred to. Then get your
> boards on different REAL irqs.
Please do not open your mouth to spout nonsense if you do not know what you're
talking about.
APIC interrupts are far more "real" than emulated XT-PIC interrupts. If the
IO-APIC can put each device on its own "high" interrupt it means that that
INT# signal on the PCI slot *is* on a totally separate, physical IRQ line
which is routed into that APIC. When you disable native APIC mode you force
it into compatibility mode, where it essentially performs a logical "OR" on
the real, separate IRQ lines and gives you a single, edge-triggered
i8259-style "low" IRQ.
(In reality it's not a logical OR since the XT (i8259-style) interrupts are
edge-triggered, not level triggered, but that's neither here nor there for
this particular discussion.)
Again, if the IO-APIC is reporting that the card is on its own IRQ, it really,
truly, honestly *IS* on its own IRQ. The reason that it is suggested to
disable the IO-APIC is that on many low-end systems, the IO-APIC is plain old
broken and causing other issues. I don't think I've run across a system
board in the last year or two with that issue, though. It's always been on
older P3 and early P4 systems.
Anton, your problem is very likely simple interrupt load. You have three
Digium cards in there, and they're all generating their own 1000Hz interrupt.
If you did the newbie thing and compiled your kernel with a HZ value of
'1000' because you felt it would be better, you have that overhead as well.
Your system is very likely just having trouble coping with so many interrupts.
My personal opinion is that you should sell the three Digium cards and buy a
single dualspan card and a cheap channel bank. Your interrupt load will drop
by 2/3 and your system will be FAR happier.
So check the kernel HZ value first; I set *all* my Asterisk systems to the old
style HZ of 100; there is simply no need for anything more on a server,
*especially* if you've already got hardware providing a real 1000Hz interrupt
instead of ztdummy trying to emulate such a thing.
-A.
More information about the asterisk-users
mailing list