[asterisk-bugs] [DAHDI-linux 0013930]: dahdi_dummy does not tick on some systems

Asterisk Bug Tracker noreply at bugs.digium.com
Wed Feb 4 15:13:06 CST 2009


A NOTE has been added to this issue. 
====================================================================== 
http://bugs.digium.com/view.php?id=13930 
====================================================================== 
Reported By:                tzafrir
Assigned To:                sruffell
====================================================================== 
Project:                    DAHDI-linux
Issue ID:                   13930
Category:                   dahdi_dummy
Reproducibility:            sometimes
Severity:                   minor
Priority:                   normal
Status:                     confirmed
====================================================================== 
Date Submitted:             2008-11-19 08:34 CST
Last Modified:              2009-02-04 15:13 CST
====================================================================== 
Summary:                    dahdi_dummy does not tick on some systems
Description: 
On some systems dahdi_dummy (or ztdummy, in the case of Zaptel) fails to
"tick" DAHDI and hence DAHDI does not provide a working timing source.

Indications that DAHDI (Zaptel) provides no timing source:

1. dahdi_test (zttest) does not give an error on startup, but hangs.
2. Asterisk >= 1.4.20 fails to start, and gives the ugly "no timing
source" error message:

ERROR[10981]: asterisk.c:3036 main: Asterisk has detected a problem
with your DAHDI configuration and will shutdown for your protection.
You have options:
        1. You only have to compile DAHDI support into Asterisk if you
need it.  One option is to recompile without DAHDI support.
        2. You only have to load DAHDI drivers if you want to take
advantage of DAHDI services.  One option is to unload DAHDI modules if
you don't need them.
        3. If you need DAHDI services, you must correctly configure
DAHDI.

An indication that dahdi_dummy should be the timing source for dahdi could
be:

  lsmod | grep ^dahdi
  dahdi                 231888  1 dahdi_dummy

Or to see that /proc/dahdi/1 is dahdi_dummy and is listed as "MASTER".


I have seen various suggestions on how to solve this. None seems to be a
silver bullet. 
====================================================================== 

---------------------------------------------------------------------- 
 (0099448) sruffell (administrator) - 2009-02-04 15:13
 http://bugs.digium.com/view.php?id=13930#c99448 
---------------------------------------------------------------------- 
Although what probably happen here is to make a change suggested by bmd. 
Instead of depending on getting an interrupt 1000 times a second, run a
timer as close to 1000 times a second as we can and calculate how many
times dahdi_receive and dahdi_transmit should be called based on the
processors timestamp counter.  With CONFIG_HZ values 250 and greater, this
would still make sure that the dahdi_receive function is called 1000 times,
even if it is not evenly distributed at 1ms intervals. 

But then, there is movement to eliminate the need for dahdi_dummy for
conferencing and asterisk timing anyway... 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2009-02-04 15:13 sruffell       Note Added: 0099448                          
======================================================================




More information about the asterisk-bugs mailing list