[asterisk-dev] [Code Review] Resolve format module dependency issue for app_voicemail

Russell Bryant russell at digium.com
Tue Dec 8 21:59:17 CST 2009



> On 2009-12-08 19:31:39, Mark Michelson wrote:
> > /branches/1.4/main/loader.c, line 1000
> > <https://reviewboard.asterisk.org/r/445/diff/1/?file=7550#file7550line1000>
> >
> >     Comment should say "should not get it on LOAD_ALL"

Actually, that is what I intended.  It's just poor wording.  If the result MODULE_LOAD_SKIP is returned, it means that it was passed, but it should get loaded when we get to the LOAD_ALL step.  I'll update the comment to be more clear.


- Russell


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/445/#review1289
-----------------------------------------------------------


On 2009-12-08 19:04:23, Russell Bryant wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/445/
> -----------------------------------------------------------
> 
> (Updated 2009-12-08 19:04:23)
> 
> 
> Review request for Asterisk Developers.
> 
> 
> Summary
> -------
> 
> Issue 16412 demonstrates a bug where app_voicemail expects format modules to be loaded.  However, they may not be when autoloading modules.
> 
> In Asterisk 1.6.1, 1.6.2, and trunk, the fix was simple, since we already had the ability to set a module load priority on modules.  However, for 1.4 and 1.6.0, the fix is a bit more involved.
> 
> This patch implements some very basic module load priority capability in 1.4 (and will be ported to 1.6.0).  Instead of being a numeric value like is possible in trunk, it is a simple module flag.  It adds another pass to the module load process.
> 
> Basically, you now have ...
> 
> 1) preloaded modules
> 2) LOAD_FIRST modules <------- the new step
> 3) modules that export global symbols
> 4) everything else
> 
> Also, all of the format modules were placed in the LOAD_FIRST group.  This ensures that they get loaded before app_voicemail.
> 
> 
> This addresses bug 16412.
>     https://issues.asterisk.org/view.php?id=16412
> 
> 
> Diffs
> -----
> 
>   /branches/1.4/formats/format_g723.c 233769 
>   /branches/1.4/formats/format_g726.c 233769 
>   /branches/1.4/formats/format_g729.c 233769 
>   /branches/1.4/formats/format_gsm.c 233769 
>   /branches/1.4/formats/format_h263.c 233769 
>   /branches/1.4/formats/format_h264.c 233769 
>   /branches/1.4/formats/format_ilbc.c 233769 
>   /branches/1.4/formats/format_jpeg.c 233769 
>   /branches/1.4/formats/format_ogg_vorbis.c 233769 
>   /branches/1.4/formats/format_pcm.c 233769 
>   /branches/1.4/formats/format_sln.c 233769 
>   /branches/1.4/formats/format_vox.c 233769 
>   /branches/1.4/formats/format_wav.c 233769 
>   /branches/1.4/formats/format_wav_gsm.c 233769 
>   /branches/1.4/include/asterisk/module.h 233769 
>   /branches/1.4/main/loader.c 233769 
> 
> Diff: https://reviewboard.asterisk.org/r/445/diff
> 
> 
> Testing
> -------
> 
> I started Asterisk and checked the verbose output that shows modules as they get loaded.  I saw all of the format modules get loaded first, then the res_ modules that export symbols, then everything else.
> 
> 
> Thanks,
> 
> Russell
> 
>




More information about the asterisk-dev mailing list