]> git.ipfire.org Git - thirdparty/asterisk.git/commit
loader: Rework of load_dynamic_module.
authorCorey Farrell <git@cfware.com>
Tue, 21 Nov 2017 05:10:58 +0000 (00:10 -0500)
committerCorey Farrell <git@cfware.com>
Fri, 15 Dec 2017 15:44:55 +0000 (10:44 -0500)
commit5e9d70ae5d837ff83af047e17143e6360fed7882
tree321b499b438a4c314d76450346f115d34e836db2
parent4de95d4bf0bbaf1cc47a2b907dd24cc6ca0afa6b
loader: Rework of load_dynamic_module.

* Split off load_dlopen to perform actual dlopen, check results and log
  warnings when needed.
* Use flags which minimize number of calls to dlopen required.  First
  attempt always uses RTLD_GLOBAL when global_symbols_only is enabled,
  RTLD_LOCAL when it is not.

This patch significantly reduces the number of dlopen's performed.  With
299 modules my system ran dlopen 857 times before this patch, 655 times
after this patch.

Change-Id: Ib2c9903cfddcc01aed3e01c1e7fe4a3fb9af0f8b
main/loader.c