From: Florian Weimer <fweimer@redhat.com>
To: libc-alpha@sourceware.org
Subject: [PATCH 00/28] glibc-hwcaps support
Date: Thu, 01 Oct 2020 18:31:25 +0200 [thread overview]
Message-ID: <cover.1601569371.git.fweimer@redhat.com> (raw)
This is a rebase of the previous patch series. I adjusted it for the
--argv0 ld.so change, added POWER10 support, and switched to the real
subdirectory names in the x86-64 psABI.
I think the patches up to “elf: Enhance ld.so --help to print HWCAP
subdirectories” are useful on their own because they add diagnostics for
existing functionality. The ld.so.cache extension mechanism and the
string table are also fairly independent parts.
What's still missing?
* documentation (including NEWS file updates)
* negative caching of missing glibc-hwcaps subdirectories (in bulk)
* tests
I would like to work on these aspects in parallel to the patch reviews.
(Lack of negative caching makes it obvious what's going on with strace,
so it's perhaps even helpful that it's currently missing.)
Support in GCC has landed earlier this week:
<https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=324bec558e95584e>
I filed a separate LLVM bug, but do not plan to work on it for now:
<https://bugs.llvm.org/show_bug.cgi?id=47686>
Thanks,
Florian
Florian Weimer (28):
elf: Do not search HWCAP subdirectories in statically linked binaries
elf: Implement __rtld_malloc_is_full
elf: Implement _dl_write
elf: Extract command-line/environment variables state from rtld.c
elf: Move ld.so error/help output to _dl_usage
elf: Record whether paths come from LD_LIBRARY_PATH or --library-path
elf: Implement ld.so --help
elf: Implement ld.so --version
scripts/update-copyrights: Update csu/version.c, elf/dl-usage.c
elf: Use the term "program interpreter" in the ld.so help message
elf: Print the full name of the dynamic loader in the ld.so help
message
elf: Make __rtld_env_path_list and __rtld_search_dirs global variables
elf: Add library search path information to ld.so --help
elf: Enhance ld.so --help to print HWCAP subdirectories
elf: Do not pass GLRO(dl_platform), GLRO(dl_platformlen) to
_dl_important_hwcaps
elf: Add glibc-hwcaps support for LD_LIBRARY_PATH
x86_64: Add glibc-hwcaps support
powerpc64le: Add glibc-hwcaps support
s390x: Add Add glibc-hwcaps support
aarch64: Add glibc-hwcaps support
elf: Add endianness markup to ld.so.cache
elf: Add extension mechanism to ld.so.cache
elf: Unify old and new format cache handling code in ld.so
elf: Implement a string table for ldconfig, with tail merging
elf: Implement tail merging of strings in ldconfig
elf: In ldconfig, extract the new_sub_entry function from search_dir
elf: Process glibc-hwcaps subdirectories in ldconfig
elf: Add glibc-hwcaps subdirectory support to ld.so cache processing
NEWS | 4 +
elf/Makefile | 22 +-
elf/cache.c | 400 +++++++++++++--
elf/dl-cache.c | 483 ++++++++++++------
elf/dl-hwcaps-subdirs.c | 29 ++
elf/dl-hwcaps.c | 225 +++++++-
elf/dl-hwcaps.h | 102 ++++
elf/dl-hwcaps_split.c | 77 +++
elf/dl-load.c | 75 +--
elf/dl-main.h | 120 +++++
elf/dl-minimal.c | 8 +
elf/dl-support.c | 5 +-
elf/dl-usage.c | 268 ++++++++++
elf/dl-write.c | 56 ++
elf/ldconfig.c | 187 +++++--
elf/rtld.c | 251 ++++-----
elf/stringtable.c | 201 ++++++++
elf/stringtable.h | 61 +++
elf/stringtable_free.c | 32 ++
elf/tst-dl-hwcaps_split.c | 139 +++++
elf/tst-stringtable.c | 140 +++++
include/link.h | 4 +
include/rtld-malloc.h | 4 +
scripts/update-copyrights | 6 +
sysdeps/aarch64/dl-hwcaps-subdirs.c | 31 ++
sysdeps/generic/dl-cache.h | 232 ++++++++-
sysdeps/generic/ldconfig.h | 18 +-
sysdeps/generic/ldsodefs.h | 34 +-
.../powerpc/powerpc64/le/dl-hwcaps-subdirs.c | 34 ++
sysdeps/s390/s390-64/dl-hwcaps-subdirs.c | 54 ++
sysdeps/unix/sysv/linux/dl-write.c | 30 ++
sysdeps/x86_64/dl-hwcaps-subdirs.c | 69 +++
32 files changed, 2977 insertions(+), 424 deletions(-)
create mode 100644 elf/dl-hwcaps-subdirs.c
create mode 100644 elf/dl-hwcaps_split.c
create mode 100644 elf/dl-main.h
create mode 100644 elf/dl-usage.c
create mode 100644 elf/dl-write.c
create mode 100644 elf/stringtable.c
create mode 100644 elf/stringtable.h
create mode 100644 elf/stringtable_free.c
create mode 100644 elf/tst-dl-hwcaps_split.c
create mode 100644 elf/tst-stringtable.c
create mode 100644 sysdeps/aarch64/dl-hwcaps-subdirs.c
create mode 100644 sysdeps/powerpc/powerpc64/le/dl-hwcaps-subdirs.c
create mode 100644 sysdeps/s390/s390-64/dl-hwcaps-subdirs.c
create mode 100644 sysdeps/unix/sysv/linux/dl-write.c
create mode 100644 sysdeps/x86_64/dl-hwcaps-subdirs.c
--
Red Hat GmbH, https://de.redhat.com/ , Registered seat: Grasbrunn,
Commercial register: Amtsgericht Muenchen, HRB 153243,
Managing Directors: Charles Cachera, Brian Klemm, Laurie Krebs, Michael O'Neill
next reply other threads:[~2020-10-01 16:31 UTC|newest]
Thread overview: 103+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-10-01 16:31 Florian Weimer [this message]
2020-10-01 16:31 ` [PATCH 01/28] elf: Do not search HWCAP subdirectories in statically linked binaries Florian Weimer
2020-10-01 18:22 ` Adhemerval Zanella
2020-10-01 18:24 ` Carlos O'Donell
2020-10-01 18:29 ` Adhemerval Zanella
2020-10-01 20:24 ` Carlos O'Donell
2020-10-01 16:31 ` [PATCH 02/28] elf: Implement __rtld_malloc_is_full Florian Weimer
2020-10-01 18:23 ` Adhemerval Zanella
2020-10-08 9:44 ` Florian Weimer
2020-10-01 16:31 ` [PATCH 03/28] elf: Implement _dl_write Florian Weimer
2020-10-05 19:46 ` Adhemerval Zanella
2020-10-01 16:31 ` [PATCH 04/28] elf: Extract command-line/environment variables state from rtld.c Florian Weimer
2020-10-06 20:45 ` Adhemerval Zanella
2020-10-08 11:32 ` Florian Weimer
2020-10-01 16:32 ` [PATCH 05/28] elf: Move ld.so error/help output to _dl_usage Florian Weimer
2020-10-06 21:06 ` Adhemerval Zanella
2020-10-08 12:19 ` Florian Weimer
2020-10-01 16:32 ` [PATCH 06/28] elf: Record whether paths come from LD_LIBRARY_PATH or --library-path Florian Weimer
2020-10-07 16:39 ` Adhemerval Zanella
2020-10-07 16:49 ` Florian Weimer
2020-10-01 16:32 ` [PATCH 07/28] elf: Implement ld.so --help Florian Weimer
2020-10-07 17:16 ` Adhemerval Zanella
2020-10-08 13:13 ` Florian Weimer
2020-10-01 16:32 ` [PATCH 08/28] elf: Implement ld.so --version Florian Weimer
2020-10-07 18:36 ` Adhemerval Zanella
2020-10-07 18:38 ` Adhemerval Zanella
2020-10-08 13:37 ` Florian Weimer
2020-10-01 16:32 ` [PATCH 09/28] scripts/update-copyrights: Update csu/version.c, elf/dl-usage.c Florian Weimer
2020-10-07 18:41 ` Adhemerval Zanella
2020-10-01 16:32 ` [PATCH 10/28] elf: Use the term "program interpreter" in the ld.so help message Florian Weimer
2020-10-07 21:08 ` Adhemerval Zanella
2020-10-08 14:08 ` Florian Weimer
2020-10-01 16:32 ` [PATCH 11/28] elf: Print the full name of the dynamic loader " Florian Weimer
2020-10-08 12:38 ` Adhemerval Zanella
2020-10-01 16:32 ` [PATCH 12/28] elf: Make __rtld_env_path_list and __rtld_search_dirs global variables Florian Weimer
2020-10-08 13:27 ` Adhemerval Zanella
2020-10-01 16:32 ` [PATCH 13/28] elf: Add library search path information to ld.so --help Florian Weimer
2020-10-08 16:22 ` Adhemerval Zanella
2020-10-01 16:33 ` [PATCH 14/28] elf: Enhance ld.so --help to print HWCAP subdirectories Florian Weimer
2020-10-08 16:27 ` Adhemerval Zanella
2020-10-09 8:18 ` Florian Weimer
2020-10-09 13:49 ` Matheus Castanho
2020-10-09 17:08 ` Florian Weimer
2020-10-09 17:12 ` Florian Weimer
2020-10-09 18:54 ` Matheus Castanho
2020-10-12 9:47 ` Florian Weimer
2020-10-01 16:33 ` [PATCH 15/28] elf: Do not pass GLRO(dl_platform), GLRO(dl_platformlen) to _dl_important_hwcaps Florian Weimer
2020-10-08 18:04 ` Adhemerval Zanella
2020-10-01 16:33 ` [PATCH 16/28] elf: Add glibc-hwcaps support for LD_LIBRARY_PATH Florian Weimer
2020-10-08 10:13 ` Szabolcs Nagy
2020-10-09 9:08 ` Florian Weimer
2020-10-09 10:50 ` Szabolcs Nagy
2020-10-09 10:55 ` Florian Weimer
2020-10-09 11:03 ` Szabolcs Nagy
2020-10-08 23:16 ` Paul A. Clarke
2020-10-09 8:56 ` Florian Weimer
2020-10-09 13:19 ` Adhemerval Zanella
2020-10-12 11:54 ` Florian Weimer
2020-10-01 16:33 ` [PATCH 17/28] x86_64: Add glibc-hwcaps support Florian Weimer
2020-10-01 16:33 ` [PATCH 18/28] powerpc64le: " Florian Weimer
2020-10-01 18:56 ` Paul A. Clarke
2020-10-05 9:47 ` Florian Weimer
2020-10-05 19:15 ` Paul A. Clarke
2020-10-06 12:20 ` Florian Weimer
2020-10-06 17:45 ` Paul A. Clarke
2020-10-09 9:06 ` Florian Weimer
2020-10-01 16:33 ` [PATCH 19/28] s390x: Add " Florian Weimer
2020-10-01 16:33 ` [PATCH 20/28] aarch64: " Florian Weimer
2020-10-14 13:46 ` Adhemerval Zanella
2020-10-14 14:08 ` Florian Weimer
2020-10-14 14:15 ` Adhemerval Zanella
2020-10-14 14:37 ` Szabolcs Nagy
2020-10-14 14:43 ` Adhemerval Zanella
2020-10-14 15:13 ` Florian Weimer
2020-10-14 14:44 ` Florian Weimer
2020-10-14 15:09 ` Szabolcs Nagy
2020-10-01 16:33 ` [PATCH 21/28] elf: Add endianness markup to ld.so.cache Florian Weimer
2020-10-14 14:07 ` Adhemerval Zanella
2020-10-01 16:33 ` [PATCH 22/28] elf: Add extension mechanism " Florian Weimer
2020-10-15 17:52 ` Adhemerval Zanella
2020-10-30 12:22 ` Florian Weimer
2020-11-03 12:45 ` Adhemerval Zanella
2020-11-03 15:30 ` Florian Weimer
2020-10-01 16:34 ` [PATCH 23/28] elf: Unify old and new format cache handling code in ld.so Florian Weimer
2020-10-16 14:37 ` Adhemerval Zanella
2020-10-30 13:22 ` Florian Weimer
2020-11-03 13:02 ` Adhemerval Zanella
2020-10-01 16:34 ` [PATCH 24/28] elf: Implement a string table for ldconfig, with tail merging Florian Weimer
2020-10-20 14:25 ` Adhemerval Zanella
2020-10-30 17:08 ` Florian Weimer
2020-11-03 13:05 ` Adhemerval Zanella
2020-11-03 15:29 ` Florian Weimer
2020-10-01 16:34 ` [PATCH 25/28] elf: Implement tail merging of strings in ldconfig Florian Weimer
2020-10-22 21:08 ` Adhemerval Zanella
2020-10-30 17:36 ` Florian Weimer
2020-10-01 16:34 ` [PATCH 26/28] elf: In ldconfig, extract the new_sub_entry function from search_dir Florian Weimer
2020-10-27 13:15 ` Adhemerval Zanella
2020-10-01 16:34 ` [PATCH 27/28] elf: Process glibc-hwcaps subdirectories in ldconfig Florian Weimer
2020-10-27 17:28 ` Adhemerval Zanella
2020-11-04 11:57 ` Florian Weimer
2020-10-01 16:34 ` [PATCH 28/28] elf: Add glibc-hwcaps subdirectory support to ld.so cache processing Florian Weimer
2020-10-01 16:50 ` [PATCH 00/28] glibc-hwcaps support H.J. Lu
2020-10-01 16:54 ` Florian Weimer
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=cover.1601569371.git.fweimer@redhat.com \
--to=fweimer@redhat.com \
--cc=libc-alpha@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).