[CentOS-devel] glibc-2.28-145.el8 with glibc-hwcaps support is coming to CentOS Stream 8

Thu Jan 7 18:04:11 UTC 2021
Florian Weimer <fweimer at redhat.com>

We have rebased a large part of the glibc dynamic loader and the x86 CPU
detection infrastructure to the current upstream version.  These changes
are going to land in CentOS Stream soon.

These glibc changes mean that going forward, run-time selection of
optimized shared object implementations is possible for all x86
processors (e.g., generic AVX2-optimized code that gets loaded on EPYC
and Xeon Scalable processors).  This is primarily being done to allow
user application code to leverage this functionality.  At this time, we
are not adjusting or optimizing CentOS Stream packages themselves.

Convenient developer support depends on GCC Toolset 11 and LLVM Toolset
12, which are yet to be released (even in their upstream versions).  I’m
working on some form of documentation on how to produce builds that are
compatible with this feature for earlier toolchain versions.

Other changes in the new glibc version include:

* Backwards-compatible ld.so cache format changes to support
  glibc-hwcaps

* --argv0 support in ld.so

* DT_AUDIT support: The --audit option in binutils ld finally works as
  expected.

* Enhanced --help output in ld.so: “/lib64/ld-linux-x86-64.so.2 --help”
  shows library search path information.

* TLS allocation improvements: dlopen is able to load shared objects
  that use initial-exec TLS in more cases. There is a new
  glibc.rtld.optional_static_tls tunable to support exceptionally large
  initial-exec TLS usage after dlopen.
  
* The CPU tunable namespace has been renamed from “glibc.tune” to
  “glibc.cpu”.

If you have any questions, please feel free to ask on-list.

Thanks,
Florian
-- 
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