public inbox for glibc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "paulo.cesar.pereira.de.andrade at gmail dot com" <sourceware-bugzilla@sourceware.org>
To: glibc-bugs@sourceware.org
Subject: [Bug dynamic-link/17645] RFE: Improve performance of dynamic loader for deeply nested DSO dependencies.
Date: Tue, 17 Mar 2015 22:50:00 -0000	[thread overview]
Message-ID: <bug-17645-131-BzZLuRY8Xq@http.sourceware.org/bugzilla/> (raw)
In-Reply-To: <bug-17645-131@http.sourceware.org/bugzilla/>

https://sourceware.org/bugzilla/show_bug.cgi?id=17645

Paulo Andrade <paulo.cesar.pereira.de.andrade at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Attachment #7972|0                           |1
        is obsolete|                            |

--- Comment #8 from Paulo Andrade <paulo.cesar.pereira.de.andrade at gmail dot com> ---
Created attachment 8193
  --> https://sourceware.org/bugzilla/attachment.cgi?id=8193&action=edit
Proposed patch

Updated proposed patch, without ChangeLog entry,
just for asking for extra comments.

I understand this patch touches a too sensible
part of glibc, and the only reason I wrote it is
due to the test case, where the proposed patch
runs 5+ orders of magnitude faster, and appears to
be fully functional, when tested in fedora and
running very complex applications.

This is basically the same patch, but now it scans
the list in reverse order. This is is actually the
correct way to do it, so that on most common/simple
cases/cycles it outputs the same sorting as current
glibc.

But I would like to have one clarification, that maybe
is being already tested, and the Makefile patch to
have only one result is in fault.

tst-initorder is basically this:

a2 a1          # a2 is linked to a1
b2 b1 a2       # b2 is linked to b1 and a2
a3 b2 b1       # a3 is linked to b2 and b1
a4 a3          # a4 is linked to a3
main a4 a1 b2  # "main" is linked to a4, a1 and b2

this will cause the sort input like this:

[ main a2 a1 b2 b1 a3 a4 ]

My question is, is some documentation that says
that dsos must be kept together in the ordering?
I mean, there are 2 correct results:

main a4 a3 b2 b1 a2 a1

and

main a4 a3 b2 a2 a1 b1

but if there is some specification that says
it should have "b2 b1" together, then the patch
is invalid, because it only breaks cycles and
does ordering, and if there are no dependencies,
it keeps it in the order it received the list
to sort.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


  parent reply	other threads:[~2015-03-17 22:50 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-25 13:37 [Bug dynamic-link/17645] New: " paulo.cesar.pereira.de.andrade at gmail dot com
2014-11-25 13:52 ` [Bug dynamic-link/17645] " paulo.cesar.pereira.de.andrade at gmail dot com
2014-11-25 14:10 ` paulo.cesar.pereira.de.andrade at gmail dot com
2014-11-25 14:37 ` paulo.cesar.pereira.de.andrade at gmail dot com
2014-11-26 16:41 ` carlos at redhat dot com
2014-11-26 21:56 ` paulo.cesar.pereira.de.andrade at gmail dot com
2014-11-28 15:51 ` carlos at redhat dot com
2014-11-29 22:30 ` paulo.cesar.pereira.de.andrade at gmail dot com
2015-03-17 22:50 ` paulo.cesar.pereira.de.andrade at gmail dot com [this message]
2015-03-18 17:21 ` paulo.cesar.pereira.de.andrade at gmail dot com
2015-03-18 17:26 ` paulo.cesar.pereira.de.andrade at gmail dot com
2020-05-06 16:30 ` romain.geissler at amadeus dot com
2020-05-06 16:54 ` carlos at redhat dot com
2020-07-03 16:18 ` carlos at redhat dot com
2020-07-03 16:18 ` carlos at redhat dot com
2020-07-21 14:48 ` s at martinien dot de
2020-12-27 18:31 ` romain.geissler at amadeus dot com
2020-12-27 18:33 ` romain.geissler at amadeus dot com
2021-03-03 22:29 ` san+sourceware at smederijmerlijn dot nl
2021-04-01 21:16 ` hi-angel at yandex dot ru
2021-07-06 11:08 ` marat at slonopotamus dot org
2021-08-10 13:03 ` romain.geissler at amadeus dot com
2021-10-21 19:21 ` cvs-commit at gcc dot gnu.org
2021-10-21 19:23 ` adhemerval.zanella at linaro dot org
2023-11-24  7:24 ` fweimer at redhat dot com

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-17645-131-BzZLuRY8Xq@http.sourceware.org/bugzilla/ \
    --to=sourceware-bugzilla@sourceware.org \
    --cc=glibc-bugs@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).