This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[PATCH] RFE: Improve performance of dynamic loader for deeply nested DSO dependencies.
- From: Paulo Andrade <paulo dot cesar dot pereira dot de dot andrade at gmail dot com>
- To: libc-alpha at sourceware dot org
- Cc: Paulo Andrade <pcpa at gnu dot org>
- Date: Tue, 25 Nov 2014 12:01:10 -0200
- Subject: [PATCH] RFE: Improve performance of dynamic loader for deeply nested DSO dependencies.
- Authentication-results: sourceware.org; auth=none
This patch implements a simple stable topological sort that moves
an entry at most once, by keeping track of, and resetting the weight
of the entries after every move. It breaks loops by choosing the
ones that appear first with the lowest weight, that is, less
dependencies.
If there is a loop, the "c" variable in the "sort" function will
be larger than 0.
Paulo Andrade (1):
Improve performance for deeply nested DSO dependencies (bug 17645)
ChangeLog | 10 ++++
elf/Makefile | 1 +
elf/dl-deps.c | 125 +++++++++++++++++++++++++--------------------
elf/dl-fini.c | 159 +++++++++++++++++++++++++++-------------------------------
elf/dl-open.c | 117 +++++++++++++++++++++++-------------------
5 files changed, 222 insertions(+), 190 deletions(-)
--
1.8.3.1