This is the mail archive of the libc-alpha@sources.redhat.com 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]

Re: fix _rtld_local_ro breakage


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Andreas Jaeger wrote:

> Can you tell us when you're done completly?

Most if the changes I planned to make are done.  Tested on x86 and
x86-64.  I might test ia64 tomorow.


The changes of the last two days changed 20 symbol relocations in
libc.so into 19 relative relocations in ld.so.  The main benefit was to
get rid of the potentially slow symbol lookups.  This improved
performance but also reduced code size a bit.  It mainly means using -z
now is acceptable now which makes all of the GOT read-only for platforms
which support it.

The changes I made today finally did something which a comment in
dl-lookup.c called for for many years now.  We used to have four lookup
functions which were optimized for a specific task.  I finally profiled
the code and a combined single lookup function is not slower.  Maybe
even a bit faster on normal code but this is in the range of the
measurement error so ignore this.  The main benefit is that ld.so got
smaller.  Overall, ld.so shrank (all numbers for x86) by 3.5k (~5%) and
libc.so by about 1k (~0.1%).  I even found a bug doing this but might
have introduced new ones.  If this is the case the test suite is not
covering all the functionality.


There are a few variables which can be moved to _rtld_global_ro but
that's it then for now.

- -- 
â Ulrich Drepper â Red Hat, Inc. â 444 Castro St â Mountain View, CA â
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (GNU/Linux)

iD8DBQFASsDy2ijCOnn/RHQRAn2uAJ9L6zNPO6lEVs0oXj8emTETQyCmswCguEyb
i3lzzqtETk2A6uH/7b2VFV8=
=dmxN
-----END PGP SIGNATURE-----


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