[asterisk-bugs] [DAHDI-linux 0013205]: [patch] bad master selection

Asterisk Bug Tracker noreply at bugs.digium.com
Fri Mar 6 04:06:16 CST 2009


A NOTE has been added to this issue. 
====================================================================== 
http://bugs.digium.com/view.php?id=13205 
====================================================================== 
Reported By:                biohumanoid
Assigned To:                kpfleming
====================================================================== 
Project:                    DAHDI-linux
Issue ID:                   13205
Category:                   dahdi (the module)
Reproducibility:            always
Severity:                   major
Priority:                   normal
Status:                     assigned
====================================================================== 
Date Submitted:             2008-07-31 00:11 CDT
Last Modified:              2009-03-06 04:06 CST
====================================================================== 
Summary:                    [patch] bad master selection
Description: 
Current dahdi master handling work in the following way:
The first SPAN become a master
If a new registered !!! SPAN is preferred , it is the new master
If a span is unregistered - the new master is the first available span
If master SPAN is in alarm state - the new master is the first non in
alarm state SPAN

So
1. dahdi-dummy once loaded will be the master forever.
2. even not-running SPAN can be a master
3. master implementation is ugly...
====================================================================== 

---------------------------------------------------------------------- 
 (0101297) biohumanoid (reporter) - 2009-03-06 04:06
 http://bugs.digium.com/view.php?id=13205#c101297 
---------------------------------------------------------------------- 
A brief history:
There was no sync_tick callback at all.

Once, someone made dynamic SPAN to inter-connect 2 PC's (zaptels).
But one of 2 dynamic SPAN's (2 PC's) MUST send the first packet to
initiate a responce. Moreover, one of 2 PC's should be a master (provide
timing).
So, he made:
if (span == master) {
/* If we have dynamic stuff, call the ioctl with 0,0 parameters
                   make it run */
                if (dahdi_dynamic_ioctl)
                        dahdi_dynamic_ioctl(0,0); 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2009-03-06 04:06 biohumanoid    Note Added: 0101297                          
======================================================================




More information about the asterisk-bugs mailing list