[ Date Index ]
[ Thread Index ]
[ <= Previous by date /
thread ]
[ Next by date /
thread => ]
[LUG] Interesting diagnostic problem
I'm looking at a problem that occurs in the asterisk PABX, and I'm
running out of inexpensive techniques, so I thought I'd canvas for ideas.
Here's the problem : One of the boards supported by asterisk is the
Digium TDM4xx 4 port analogue board - 4 ports of PSTN goodness on a
single PCI card.
This card has a module driver, and when the driver is loaded, even if
the card is idle and the devices are not open, there's a blip of about
25% CPU every 5 or 6 seconds.
Top says this CPU is being used by hardware interrupt routines (which
sounds reasonable as we can stop this by unloading the driver...)
I'm trying to ascertain which routine is using CPU unreasonably.
My first thought was to implement an in-kernel count of entries into
each function. Alas, this differs little from second to second, so
whatever is happening is happening within a routine.
What I'd really like to measure is the cumulative time spent in each
function, but the board raises an interrupt every millisecond, and I
guess that while the driver is handling this, there just isn't going to
be a timer interrupt.
Anyone know the real resolution of the hardware RTC ? Any other ideas ?
Anyone know of a cheap(ish) microsecond clock board ?
jd
--
John Daragon john@xxxxxxxxxx
argv[0] limited
Lambs Lawn Cottage, Staple Fitzpaine, Taunton, TA3 5SL, UK
v +44 (0) 1460 234068 f +44 (0) 1460 234069 m +44 (0) 7836 576127
--
The Mailing List for the Devon & Cornwall LUG
Mail majordomo@xxxxxxxxxxxxx with "unsubscribe list" in the
message body to unsubscribe. FAQ: www.dcglug.org.uk/linux_adm/list-faq.html