This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] RFE: Improve performance of dynamic loader for deeply nested DSO dependencies.


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]