From: Florian Weimer Date: Tue, 14 Dec 2021 11:37:44 +0000 (+0100) Subject: elf: Use new dependency sorting algorithm by default X-Git-Tag: glibc-2.35~245 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0884724a95b60452ad483dbe086d237d02ba624d;p=thirdparty%2Fglibc.git elf: Use new dependency sorting algorithm by default The default has to change eventually, and there are no known failures that require a delay. Reviewed-by: Adhemerval Zanella --- diff --git a/NEWS b/NEWS index b53f230cca2..2aaece42f58 100644 --- a/NEWS +++ b/NEWS @@ -60,9 +60,10 @@ Major new features: of the existing sorting algorithm when encountering particular circular object dependency cases. -* A new tunable, glibc.rtld.dynamic_sort, can be used to select between the two - DSO sorting algorithms. The default setting of '1' uses the current existing - algorithm, while a value of '2' selects the new DFS-based algorithm. +* A new tunable, glibc.rtld.dynamic_sort, can be used to select between + the two DSO sorting algorithms. The default setting of '2' uses the + new DFS-based algorithm. The setting '1' switches to the old + algorithm used in glibc 2.33 and earlier. * ABI support for a new function '__memcmpeq'. '__memcmpeq' is meant to be used by compilers for optimizing usage of 'memcmp' when its diff --git a/elf/dl-tunables.list b/elf/dl-tunables.list index 46ffb237841..ffcd7f18d4f 100644 --- a/elf/dl-tunables.list +++ b/elf/dl-tunables.list @@ -162,7 +162,7 @@ glibc { type: INT_32 minval: 1 maxval: 2 - default: 1 + default: 2 } } } diff --git a/elf/tst-rtld-list-tunables.exp b/elf/tst-rtld-list-tunables.exp index 9bf572715f9..44e4834cfb4 100644 --- a/elf/tst-rtld-list-tunables.exp +++ b/elf/tst-rtld-list-tunables.exp @@ -10,6 +10,6 @@ glibc.malloc.tcache_max: 0x0 (min: 0x0, max: 0x[f]+) glibc.malloc.tcache_unsorted_limit: 0x0 (min: 0x0, max: 0x[f]+) glibc.malloc.top_pad: 0x0 (min: 0x0, max: 0x[f]+) glibc.malloc.trim_threshold: 0x0 (min: 0x0, max: 0x[f]+) -glibc.rtld.dynamic_sort: 1 (min: 1, max: 2) +glibc.rtld.dynamic_sort: 2 (min: 1, max: 2) glibc.rtld.nns: 0x4 (min: 0x1, max: 0x10) glibc.rtld.optional_static_tls: 0x200 (min: 0x0, max: 0x[f]+) diff --git a/manual/tunables.texi b/manual/tunables.texi index 5d50b90f64b..28ff502990c 100644 --- a/manual/tunables.texi +++ b/manual/tunables.texi @@ -318,7 +318,7 @@ value of @samp{2}, a different algorithm is used, which implements a topological sort through depth-first search, and does not exhibit the performance issues of @samp{1}. -The default value of this tunable is @samp{1}. +The default value of this tunable is @samp{2}. @end deftp @node Elision Tunables