[asterisk-bugs] [DAHDI-linux 0018142]: The TE122 and dadi produces an unusual high load

Asterisk Bug Tracker noreply at bugs.digium.com
Fri Oct 15 13:15:38 CDT 2010


A NOTE has been added to this issue. 
====================================================================== 
https://issues.asterisk.org/view.php?id=18142 
====================================================================== 
Reported By:                foxfire
Assigned To:                
====================================================================== 
Project:                    DAHDI-linux
Issue ID:                   18142
Category:                   wcte12xp
Reproducibility:            always
Severity:                   major
Priority:                   normal
Status:                     feedback
JIRA:                        
Reviewboard Link:            
====================================================================== 
Date Submitted:             2010-10-14 08:33 CDT
Last Modified:              2010-10-15 13:15 CDT
====================================================================== 
Summary:                    The TE122 and dadi produces an unusual high load
Description: 
When starting dahdi_linux and there is a TE122 installed in the machine in
a few seconds the load raizes from 0.00 to over 0.50 .
This happens always, i have no problem with any other digium card only the
TE122.
I stopped all services and only started dahdi.
Disabling the mg2 echocancler does not help.
I consider this major because call quality is affected due to the load
increasing to values.

====================================================================== 

---------------------------------------------------------------------- 
 (0128103) sruffell (administrator) - 2010-10-15 13:15
 https://issues.asterisk.org/view.php?id=18142#c128103 
---------------------------------------------------------------------- 
foxfire: With regard to updating your production servers, I recommend you
test everything out on your staging setup first.

But again, I think in this case "load average" is a red herring and the
CPU utilization numbers are a better indication.  The fundamental issue is
that the wcte12xp uses a periodic kernel timer to schedule work on a
workqueue to read the alarm states on the framer.  Linux runs all the
expired timers (including the one from the wcte12xp driver) *before*
calculating load averages.  This means that every 100ms the kernel will
always see that there is a process (the wcte12xp workqueue) ready to run. 
This process doesn't run for long.  It basically just goes back to sleep
after queuing some commands, but it still shows up as runnable when loads
are being checked in the timer tick.

You can adjust the "load" numbers without affecting CPU utilization by
changing the frequency the alarms and signal bits are checked in the
drivers/dahdi/wcte12xp.c:timer_work_func.  To make the load increase,
change "jiffies + HZ/10" to "jiffies + HZ/500".  Likewise to make the load
decrease, change it to "jiffies + HZ/5".  The CPU utilization doesn't
change linearly with the load since this function again spends most of the
time sleeping.

The reason you didn't see this with Zaptel is that the alarms were checked
directly in the interrupt handler which was removed from the wcte12xp
driver in DAHDI in
http://svn.asterisk.org/view/dahdi?view=revision&revision=6525.

So I would instead focus on trying to update to 2.4.0, and then see what
the characteristics (if any) are of the audio quality problems. 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2010-10-15 13:15 sruffell       Note Added: 0128103                          
======================================================================




More information about the asterisk-bugs mailing list