]> 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:35:58 +0000 (10:35 -0500)
commit5295c4685aae48bd060ddb8a7fdfffe0dcacfbb9
tree1b1c0a3fbbfeafc5b58a0e085e2b6d90cc0c3392
parent69b82113fa4ab0236b3c0eaf84710cc0e74eb7f6
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