commit c94d9ff50924fe77af5fcd1dabbf28a9a1ba6d78 (HEAD -> gentoo/2.41, gentoo/gentoo/2.41)
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Fri May 16 19:53:09 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:40:19 2025 +0200

    Optimize __libc_tsd_* thread variable access
    
    These variables are not exported, and libc.so TLS is initial-exec
    anyway.  Declare these variables as hidden and use the initial-exec
    TLS model.
    
    Reviewed-by: Frédéric Bérat <fberat@redhat.com>
    (cherry picked from commit a894f04d877653bea1639fc9a4adf73bd9347bf4)
    (cherry picked from commit a52c9b75c70124fe4f69e6b0ed288e2c14bd7ce9)

 include/ctype.h     | 9 ++++++---
 include/rpc/rpc.h   | 3 ++-
 locale/localeinfo.h | 3 ++-
 3 files changed, 10 insertions(+), 5 deletions(-)

commit 2774a5b9c64e7b0ad1b61f6cf5c5b93cfe312117
Author:     H.J. Lu <hjl.tools@gmail.com>
AuthorDate: Mon Jul 28 12:16:11 2025 -0700
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:39:57 2025 +0200

    i386: Add GLIBC_ABI_GNU_TLS version [BZ #33221]
    
    On i386, programs and shared libraries with __thread usage may fail
    silently at run-time against glibc without the TLS run-time fix for:
    
    https://sourceware.org/bugzilla/show_bug.cgi?id=32996
    
    Add GLIBC_ABI_GNU_TLS version to indicate that glibc has the working
    GNU TLS run-time.  Linker can add the GLIBC_ABI_GNU_TLS version to
    binaries which depend on the working TLS run-time so that such programs
    and shared libraries will fail to load and run at run-time against
    libc.so without the GLIBC_ABI_GNU_TLS version, instead of fail silently
    at random.
    
    This fixes BZ #33221.
    
    Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
    Reviewed-by: Sam James <sam@gentoo.org>
    (cherry picked from commit ed1b7a5a489ab555a27fad9c101ebe2e1c1ba881)
    (cherry picked from commit ed4672abb5ee902ad22a77324435b20b29feed45)

 sysdeps/i386/Makefile | 9 +++++++++
 sysdeps/i386/Versions | 5 +++++
 2 files changed, 14 insertions(+)

commit 9e047af6b18404b3e50e77bf0f2375bbac06870f
Author:     H.J. Lu <hjl.tools@gmail.com>
AuthorDate: Mon Aug 18 09:06:48 2025 -0700
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:39:34 2025 +0200

    i386: Also add GLIBC_ABI_GNU2_TLS version [BZ #33129]
    
    Since the GNU2 TLS run-time bug:
    
    https://sourceware.org/bugzilla/show_bug.cgi?id=31372
    
    affects both i386 and x86-64, also add GLIBC_ABI_GNU2_TLS version to i386
    to indicate the working GNU2 TLS run-time.  For x86-64, the additional
    GNU2 TLS run-time bug fix is needed for
    
    https://sourceware.org/bugzilla/show_bug.cgi?id=31501
    
    Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
    Reviewed-by: Sam James <sam@gentoo.org>
    (cherry picked from commit bd4628f3f18ac312408782eea450429c6f044860)
    (cherry picked from commit 7aa907241c83c0797ad6a5d25a89848c078d1514)

 sysdeps/x86/Makefile    | 9 +++++++++
 sysdeps/x86/Versions    | 5 +++++
 sysdeps/x86_64/Makefile | 9 ---------
 sysdeps/x86_64/Versions | 5 -----
 4 files changed, 14 insertions(+), 14 deletions(-)

commit 83f88e3c855d3ce296682f726bf9153a721cc460
Author:     H.J. Lu <hjl.tools@gmail.com>
AuthorDate: Mon Jun 9 05:22:10 2025 +0800
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:39:16 2025 +0200

    i386: Update ___tls_get_addr to preserve vector registers
    
    Compiler generates the following instruction sequence for dynamic TLS
    access:
    
            leal    tls_var@tlsgd(,%ebx,1), %eax
            call    ___tls_get_addr@PLT
    
    CALL instruction is transparent to compiler which assumes all registers,
    except for EFLAGS, AX, CX, and DX, are unchanged after CALL.  But
    ___tls_get_addr is a normal function which doesn't preserve any vector
    registers.
    
    1. Rename the generic __tls_get_addr function to ___tls_get_addr_internal.
    2. Change ___tls_get_addr to a wrapper function with implementations for
    FNSAVE, FXSAVE, XSAVE and XSAVEC to save and restore all vector registers.
    3. dl-tlsdesc-dynamic.h has:
    
    _dl_tlsdesc_dynamic:
            /* Like all TLS resolvers, preserve call-clobbered registers.
               We need two scratch regs anyway.  */
            subl    $32, %esp
            cfi_adjust_cfa_offset (32)
    
    It is wrong to use
    
            movl    %ebx, -28(%esp)
            movl    %esp, %ebx
            cfi_def_cfa_register(%ebx)
            ...
            mov     %ebx, %esp
            cfi_def_cfa_register(%esp)
            movl    -28(%esp), %ebx
    
    to preserve EBX on stack.  Fix it with:
    
            movl    %ebx, 28(%esp)
            movl    %esp, %ebx
            cfi_def_cfa_register(%ebx)
            ...
            mov     %ebx, %esp
            cfi_def_cfa_register(%esp)
            movl    28(%esp), %ebx
    
    4. Update _dl_tlsdesc_dynamic to call ___tls_get_addr_internal directly.
    5. Add have-test-mtls-traditional to compile tst-tls23-mod.c with
    traditional TLS variant to verify the fix.
    6. Define DL_RUNTIME_RESOLVE_REALIGN_STACK in sysdeps/x86/sysdep.h.
    
    This fixes BZ #32996.
    
    Co-Authored-By: Adhemerval Zanella <adhemerval.zanella@linaro.org>
    Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
    Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
    (cherry picked from commit 848f0e46f03f22404ed9a8aabf3fd5ce8809a1be)
    (cherry picked from commit c1bec0b52da2db972ef3bbd6cbe4125eaf9affd8)

 configure                                          |  38 ++++++
 configure.ac                                       |  13 +++
 elf/Makefile                                       |   9 ++
 elf/tst-tls23-mod.c                                |  32 ++++++
 elf/tst-tls23.c                                    | 106 +++++++++++++++++
 .../x86_64/dl-trampoline-save.h => elf/tst-tls23.h |  34 +++---
 sysdeps/aarch64/preconfigure                       |   1 +
 sysdeps/i386/Makefile                              |   4 +-
 sysdeps/i386/dl-tls-get-addr.c                     |  68 +++++++++++
 sysdeps/i386/dl-tls.h                              |  28 +----
 sysdeps/i386/dl-tlsdesc-dynamic.h                  | 108 +-----------------
 sysdeps/i386/dl-tlsdesc.S                          |  17 ---
 sysdeps/i386/tls-get-addr-wrapper.h                | 127 +++++++++++++++++++++
 sysdeps/i386/tls_get_addr.S                        |  57 +++++++++
 sysdeps/i386/tls_get_addr.h                        |  42 +++++++
 sysdeps/loongarch/preconfigure                     |   1 +
 sysdeps/loongarch/preconfigure.ac                  |   1 +
 sysdeps/powerpc/Makefile                           |   5 +
 sysdeps/x86/Makefile                               |  16 ++-
 sysdeps/x86/sysdep.h                               |  23 ++++
 sysdeps/x86/tst-tls23.c                            |  22 ++++
 sysdeps/x86/tst-tls23.h                            |  35 ++++++
 sysdeps/x86_64/Makefile                            |   3 -
 sysdeps/x86_64/dl-tlsdesc.S                        |   1 -
 sysdeps/x86_64/dl-trampoline.S                     |   1 -
 25 files changed, 623 insertions(+), 169 deletions(-)

commit a01f262df5e34458cc03e5cd2e2bbe552771cac8
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Mon Aug 18 13:52:02 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:38:54 2025 +0200

    elf: Preserve _rtld_global layout for the release branch
    
    Backporting commit 9d6577fdff801a856383e69322f15e63424ad312
    ("elf: Introduce _dl_debug_change_state") removed the
    _ns_debug member.  Keep it to preseve struct layout.
    
    (cherry picked from commit aa5dbd5332cc079e170b197abb7e25cb7d09ec87)

 sysdeps/generic/ldsodefs.h | 2 ++
 1 file changed, 2 insertions(+)

commit d1746406f95596ea4505635c6dba881a75e539f4
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Tue Mar 11 15:30:52 2025 +0100
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:38:36 2025 +0200

    elf: Test dlopen (NULL, RTLD_LAZY) from an ELF constructor
    
    This call must not complete initialization of all shared objects
    in the global scope because the ELF constructor which makes the call
    likely has not finished initialization.  Calling more constructors
    at this point would expose those to a partially constructed
    dependency.
    
    This completes the revert of commit 9897ced8e78db5d813166a7ccccfd5a
    ("elf: Run constructors on cyclic recursive dlopen (bug 31986)").
    
    (cherry picked from commit d604f9c500570e80febfcc6a52b63a002b466f35)
    (cherry picked from commit 42f9c70ac26ae8ea32659e1b99953808c4985c5c)

 elf/Makefile                           |  9 ++++++
 elf/dl-open.c                          | 10 +++++++
 elf/tst-dlopen-constructor-null-mod1.c | 55 ++++++++++++++++++++++++++++++++++
 elf/tst-dlopen-constructor-null-mod2.c | 37 +++++++++++++++++++++++
 elf/tst-dlopen-constructor-null.c      | 38 +++++++++++++++++++++++
 5 files changed, 149 insertions(+)

commit 11e7dad9c493e082a4117f85cd786c188758bf1c
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Fri Mar 7 17:37:50 2025 +0100
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:38:23 2025 +0200

    elf: Fix handling of symbol versions which hash to zero (bug 29190)
    
    This was found through code inspection.  No application impact is
    known.
    
    Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
    (cherry picked from commit 46d31980943d8be2f421c1e3276b265c7552636e)
    (cherry picked from commit 3f3b4fdd0bee8e77294331fa0ebdcfe43eea91d8)

 NEWS                                  |  1 +
 elf/Makefile                          | 21 +++++++++++++
 elf/dl-lookup.c                       | 22 ++++++++++----
 elf/dl-version.c                      |  7 +++++
 elf/tst-version-hash-zero-linkmod.c   | 22 ++++++++++++++
 elf/tst-version-hash-zero-linkmod.map |  7 +++++
 elf/tst-version-hash-zero-mod.c       | 20 +++++++++++++
 elf/tst-version-hash-zero-mod.map     | 13 ++++++++
 elf/tst-version-hash-zero-refmod.c    | 23 ++++++++++++++
 elf/tst-version-hash-zero.c           | 56 +++++++++++++++++++++++++++++++++++
 10 files changed, 186 insertions(+), 6 deletions(-)

commit c966022a5f21fc2c5e68546c5ca814857fe9c819
Author:     H.J. Lu <hjl.tools@gmail.com>
AuthorDate: Thu Aug 14 07:03:20 2025 -0700
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:38:05 2025 +0200

    x86-64: Add GLIBC_ABI_DT_X86_64_PLT [BZ #33212]
    
    When the linker -z mark-plt option is used to add DT_X86_64_PLT,
    DT_X86_64_PLTSZ and DT_X86_64_PLTENT, the r_addend field of the
    R_X86_64_JUMP_SLOT relocation stores the offset of the indirect
    branch instruction.  However, glibc versions without the commit:
    
    commit f8587a61892cbafd98ce599131bf4f103466f084
    Author: H.J. Lu <hjl.tools@gmail.com>
    Date:   Fri May 20 19:21:48 2022 -0700
    
        x86-64: Ignore r_addend for R_X86_64_GLOB_DAT/R_X86_64_JUMP_SLOT
    
        According to x86-64 psABI, r_addend should be ignored for R_X86_64_GLOB_DAT
        and R_X86_64_JUMP_SLOT.  Since linkers always set their r_addends to 0, we
        can ignore their r_addends.
    
        Reviewed-by: Fangrui Song <maskray@google.com>
    
    won't ignore the r_addend value in the R_X86_64_JUMP_SLOT relocation.
    Such programs and shared libraries will fail at run-time randomly.
    
    Add GLIBC_ABI_DT_X86_64_PLT version to indicate that glibc is compatible
    with DT_X86_64_PLT.
    
    The linker can add the glibc GLIBC_ABI_DT_X86_64_PLT version dependency
    whenever -z mark-plt is passed to the linker.  The resulting programs and
    shared libraries will fail to load at run-time against libc.so without the
    GLIBC_ABI_DT_X86_64_PLT version, instead of fail randomly.
    
    This fixes BZ #33212.
    
    Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
    Reviewed-by: Sam James <sam@gentoo.org>
    (cherry picked from commit 399384e0c8193e31aea014220ccfa24300ae5938)
    (cherry picked from commit e2d9e9eb26836bb8190c362c4fc07de0fe300899)

 sysdeps/x86_64/Makefile | 9 +++++++++
 sysdeps/x86_64/Versions | 5 +++++
 2 files changed, 14 insertions(+)

commit 8444e02a69c59e5664f1415c95bf5e091ca9f844
Author:     H.J. Lu <hjl.tools@gmail.com>
AuthorDate: Mon Jul 28 12:18:22 2025 -0700
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:37:45 2025 +0200

    x86-64: Add GLIBC_ABI_GNU2_TLS version [BZ #33129]
    
    Programs and shared libraries compiled with -mtls-dialect=gnu2 may fail
    silently at run-time against glibc without the GNU2 TLS run-time fix
    for:
    
    https://sourceware.org/bugzilla/show_bug.cgi?id=31372
    
    Add GLIBC_ABI_GNU2_TLS version to indicate that glibc has the working
    GNU2 TLS run-time.  Linker can add the GLIBC_ABI_GNU2_TLS version to
    binaries which depend on the working GNU2 TLS run-time:
    
    https://sourceware.org/bugzilla/show_bug.cgi?id=33130
    
    so that such programs and shared libraries will fail to load and run at
    run-time against libc.so without the GLIBC_ABI_GNU2_TLS version, instead
    of fail silently at random.
    
    This fixes BZ #33129.
    
    Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
    Reviewed-by: Sam James <sam@gentoo.org>
    (cherry picked from commit 9df8fa397d515dc86ff5565f6c45625e672d539e)
    (cherry picked from commit dd87fcda434e646ae2795e67f5877193133b6db6)

 sysdeps/x86_64/Makefile | 9 +++++++++
 sysdeps/x86_64/Versions | 5 +++++
 2 files changed, 14 insertions(+)

commit 0703a1350770e2e1a4a309be8aa5af87f42c73a8
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Mon Jul 28 14:16:52 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:37:25 2025 +0200

    elf: Compile _dl_debug_state separately (bug 33224)
    
    This ensures that the compiler will not inline it, so that
    debuggers which do not use the Systemtap probes can reliably
    set a breakpoint on it.
    
    Reviewed-by: Andreas K. Huettel <dilfridge@gentoo.org>
    Tested-by: Andreas K. Huettel <dilfridge@gentoo.org>
    (cherry picked from commit 620f0730f311635cd0e175a3ae4d0fc700c76366)
    (cherry picked from commit 85780b6055cffa4592b6bf38a33ac01a89ff09e6)

 elf/Makefile         |  1 +
 elf/dl-debug.c       | 11 -----------
 elf/dl-debug_state.c | 30 ++++++++++++++++++++++++++++++
 3 files changed, 31 insertions(+), 11 deletions(-)

commit 143ee589a9f784b8830cb95cb465b038cae91c2c
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Fri Jul 4 21:46:30 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:37:09 2025 +0200

    elf: Restore support for _r_debug interpositions and copy relocations
    
    The changes in commit a93d9e03a31ec14405cb3a09aa95413b67067380
    ("Extend struct r_debug to support multiple namespaces [BZ #15971]")
    break the dyninst dynamic instrumentation tool.  It brings its
    own definition of _r_debug (rather than a declaration).
    
    Furthermore, it turns out it is rather hard to use the proposed
    handshake for accessing _r_debug via DT_DEBUG. If applications want
    to access _r_debug, they can do so directly if the relevant code has
    been built as PIC.  To protect against harm from accidental copy
    relocations due to linker relaxations, this commit restores copy
    relocation support by adjusting both copies if interposition or
    copy relocations are in play.  Therefore, it is possible to
    use a hidden reference in ld.so to access _r_debug.
    
    Only perform the copy relocation initialization if libc has been
    loaded.  Otherwise, the ld.so search scope can be empty, and the
    lookup of the _r_debug symbol mail fail.
    
    Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
    (cherry picked from commit ea85e7d55087075376a29261e722e4fae14ecbe7)
    (cherry picked from commit b05ce0de3d6d74d0cd93161f0a8b164d6a3eb424)

 elf/Makefile               |  9 ++++++++
 elf/dl-debug-symbols.S     |  1 +
 elf/dl-debug.c             | 52 +++++++++++++++++++++++++++++++++++++++++++---
 elf/rtld.c                 |  3 +++
 elf/tst-dlmopen4-nonpic.c  |  2 ++
 elf/tst-dlmopen4-pic.c     |  2 ++
 elf/tst-dlmopen4.c         | 22 ++++++++++++++++++++
 include/link.h             |  2 ++
 sysdeps/generic/ldsodefs.h |  4 ++++
 9 files changed, 94 insertions(+), 3 deletions(-)

commit ce218f969defbb553cd090f1aff707d7aa72590e
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Fri Jul 4 21:46:16 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:36:36 2025 +0200

    elf: Introduce _dl_debug_change_state
    
    It combines updating r_state with the debugger notification.
    
    The second change to  _dl_open introduces an additional debugger
    notification for dlmopen, but debuggers are expected to ignore it.
    
    Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
    (cherry picked from commit 8329939a37f483a16013dd8af8303cbcb86d92cb)
    (cherry picked from commit 9d6577fdff801a856383e69322f15e63424ad312)

 elf/dl-close.c             |  6 ++----
 elf/dl-debug.c             |  7 +++++++
 elf/dl-load.c              |  3 +--
 elf/dl-open.c              |  5 ++---
 elf/rtld.c                 |  6 ++----
 sysdeps/generic/ldsodefs.h | 14 ++++++++++++--
 6 files changed, 26 insertions(+), 15 deletions(-)

commit e0895a05ccca685c7f4820663ff34d9e7f42260a
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Fri Jul 4 21:46:05 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:36:19 2025 +0200

    elf: Introduce separate _r_debug_array variable
    
    It replaces the ns_debug member of the namespaces.  Previously,
    the base namespace had an unused ns_debug member.
    
    This change also fixes a concurrency issue: Now _dl_debug_initialize
    only updates r_next of the previous namespace's r_debug after the new
    r_debug is initialized, so that only the initialized version is
    observed.  (Client code accessing _r_debug will benefit from load
    dependency tracking in CPUs even without explicit barriers.)
    
    Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
    (cherry picked from commit 7278d11f3a0cd528188c719bab75575b0aea2c6e)
    (cherry picked from commit 4a3e5f1e4c6217d06607e53e43bca242af02358b)

 elf/dl-debug.c             | 91 +++++++++++++++++++++++++---------------------
 sysdeps/generic/ldsodefs.h |  2 -
 2 files changed, 50 insertions(+), 43 deletions(-)

commit 0d2fd56467102d90926acd8d5bea2a5bf7cc5561
Author:     Jens Remus <jremus@linux.ibm.com>
AuthorDate: Fri Jul 25 15:40:03 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:35:58 2025 +0200

    Use TLS initial-exec model for __libc_tsd_CTYPE_* thread variables [BZ #33234]
    
    Commit 10a66a8e421b ("Remove <libc-tsd.h>") removed the TLS initial-exec
    (IE) model attribute from the __libc_tsd_CTYPE_* thread variable declarations
    and definitions.  Commit a894f04d8776 ("Optimize __libc_tsd_* thread
    variable access") restored it on declarations.
    
    Restore the TLS initial-exec model attribute on __libc_tsd_CTYPE_* thread
    variable definitions.
    
    This resolves test tst-locale1 failure on s390 32-bit, when using a
    GNU linker without the fix from GNU binutils commit aefebe82dc89
    ("IBM zSystems: Fix offset relative to static TLS").
    
    Reviewed-by: Florian Weimer <fweimer@redhat.com>
    (cherry picked from commit e5363e6f460c2d58809bf10fc96d70fd1ef8b5b2)
    (cherry picked from commit 940d821afb0e50e5e5c8a54fe83c29c3b7e4d72d)

 NEWS               | 3 +++
 ctype/ctype-info.c | 6 +++---
 2 files changed, 6 insertions(+), 3 deletions(-)

commit 02c9820a62c18b0d8ce343bd088e96c0efe98747
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Fri May 16 19:53:09 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:35:36 2025 +0200

    ctype: Fallback initialization of TLS using relocations (bug 19341, bug 32483)
    
    This ensures that the ctype data pointers in TLS are valid
    in secondary namespaces even without initialization via
    __ctype_init.
    
    Reviewed-by: Frédéric Bérat <fberat@redhat.com>
    (cherry picked from commit 2745db8dd3ec31045acd761b612516490085bc20)
    (cherry picked from commit 5d8614b284b9f3510cc43d73e4a351e96838dcfe)

 ctype/Makefile                      | 17 ++++++++++
 ctype/ctype-info.c                  | 14 ++++++--
 ctype/tst-ctype-tls-dlmopen.c       |  2 ++
 ctype/tst-ctype-tls-dlopen-static.c |  2 ++
 ctype/tst-ctype-tls-mod.c           | 37 ++++++++++++++++++++
 ctype/tst-ctype-tls-skeleton.c      | 67 +++++++++++++++++++++++++++++++++++++
 6 files changed, 136 insertions(+), 3 deletions(-)

commit affe3f123288accbf4c34c59e5b6e39ff9f85c0c
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Fri May 16 19:53:09 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:35:18 2025 +0200

    Use proper extern declaration for _nl_C_LC_CTYPE_{class,toupper,tolower}
    
    The existing initializers already contain explicit casts.  Keep them
    due to int/uint32_t mismatch.
    
    Reviewed-by: Frédéric Bérat <fberat@redhat.com>
    (cherry picked from commit e0c0f856f58ceb68800a964c36c15c606e7a8c4c)
    (cherry picked from commit f409ec073f989e2b7f63e31d5f6075b868f8634c)

 ctype/ctype-info.c | 3 ---
 include/ctype.h    | 5 +++++
 locale/xlocale.c   | 7 +------
 3 files changed, 6 insertions(+), 9 deletions(-)

commit 87544552ada07e13995fc3a7d863d935ea69ad39
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Fri May 16 19:53:09 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:34:58 2025 +0200

    Remove <libc-tsd.h>
    
    Use __thread variables directly instead.  The macros do not save any
    typing.  It seems unlikely that a future port will lack __thread
    variable support.
    
    Some of the __libc_tsd_* variables are referenced from assembler
    files, so keep their names.  Previously, <libc-tls.h> included
    <tls.h>, which in turn included <errno.h>, so a few direct includes
    of <errno.h> are now required.
    
    Reviewed-by: Frédéric Bérat <fberat@redhat.com>
    (cherry picked from commit 10a66a8e421b09682b774c795ef1da402235dddc)
    (cherry picked from commit 330cd035dfd95eac6c092a5a0b27c456a06680c6)

 ctype/ctype-info.c            | 18 ++++++-------
 include/ctype.h               | 13 +++++-----
 include/rpc/rpc.h             |  4 +--
 locale/lc-ctype.c             |  9 +++----
 locale/localeinfo.h           |  6 ++---
 locale/uselocale.c            | 10 +++-----
 stdio-common/printf-parsemb.c |  1 +
 string/strerror.c             |  2 +-
 sunrpc/rpc_thread.c           |  1 -
 sysdeps/generic/libc-tsd.h    | 60 -------------------------------------------
 time/strftime_l.c             |  1 +
 11 files changed, 28 insertions(+), 97 deletions(-)

commit 5435ca9d1dec47e14e9d9ef94cff7d9f1086b0e7
Author:     Luna Lamb <luna.lamb@arm.com>
AuthorDate: Wed Jun 18 16:12:19 2025 +0000
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:34:35 2025 +0200

    AArch64: Improve codegen SVE log1p helper
    
    Improve codegen by packing coefficients.
    4% and 2% improvement in throughput microbenchmark on Neoverse V1, for acosh
    and atanh respectively.
    
    Reviewed-by: Wilco Dijkstra  <Wilco.Dijkstra@arm.com>
    (cherry picked from commit 6849c5b791edd216f2ec3fdbe4d138bc69b9b333)
    (cherry picked from commit c467918138d14fdc5a940adaade26de6fa7ebefb)

 sysdeps/aarch64/fpu/acosh_sve.c       |  6 +--
 sysdeps/aarch64/fpu/atanh_sve.c       |  3 +-
 sysdeps/aarch64/fpu/sv_log1p_inline.h | 86 +++++++++++++++++++++++++++--------
 3 files changed, 71 insertions(+), 24 deletions(-)

commit d9c7b78a4e3527e9073e13324e277e7f7b1b2f9c
Author:     Dylan Fleming <Dylan.Fleming@arm.com>
AuthorDate: Wed Jun 18 16:19:22 2025 +0000
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:34:18 2025 +0200

    AArch64: Optimise SVE FP64 Hyperbolics
    
    Reworke SVE FP64 hyperbolics to use the SVE FEXPA
    instruction.
    
    Also update the special case handelling for large
    inputs to be entirely vectorised.
    
    Performance improvements on Neoverse V1:
    
    cosh_sve: 19% for |x| < 709, 5x otherwise
    sinh_sve: 24% for |x| < 709, 5.9x otherwise
    tanh_sve: 12% for |x| < 19,  9x otherwise
    
    Reviewed-by: Wilco Dijkstra  <Wilco.Dijkstra@arm.com>
    (cherry picked from commit dee22d2a81ab59afc165fb6dcb45d723f13582a0)
    (cherry picked from commit 6db0f659c8eb71d38a8945f78be8de10d0c7074f)

 sysdeps/aarch64/fpu/cosh_sve.c | 135 +++++++++++++++++++--------------
 sysdeps/aarch64/fpu/sinh_sve.c | 165 ++++++++++++++++++++++++++++-------------
 sysdeps/aarch64/fpu/tanh_sve.c | 154 +++++++++++++++++++++++---------------
 3 files changed, 289 insertions(+), 165 deletions(-)

commit f19714c9f5e1709420354b1ebdf66a27794c6233
Author:     Dylan Fleming <Dylan.Fleming@arm.com>
AuthorDate: Wed Jun 18 16:17:12 2025 +0000
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:34:00 2025 +0200

    AArch64: Optimize SVE exp functions
    
    Improve performance of SVE exps by making better use
    of the SVE FEXPA instruction.
    
    Performance improvement on Neoverse V1:
    exp2_sve:   21%
    exp2f_sve:  24%
    exp10f_sve: 23%
    expm1_sve:  25%
    
    Reviewed-by: Wilco Dijkstra  <Wilco.Dijkstra@arm.com>
    (cherry picked from commit 1e3d1ddf977ecd653de8d0d10eb083d80ac21cf3)
    (cherry picked from commit 503f7a7d332aafdfee06c0de7cd4884e206c7082)

 sysdeps/aarch64/fpu/exp10f_sve.c |  53 ++++------
 sysdeps/aarch64/fpu/exp2_sve.c   |  76 +++++++--------
 sysdeps/aarch64/fpu/exp2f_sve.c  |  35 +++----
 sysdeps/aarch64/fpu/expm1_sve.c  | 202 +++++++++++++++++++++++++++------------
 4 files changed, 211 insertions(+), 155 deletions(-)

commit 6b66e52c992074f6213a07f74f7b2a5ff05032d6
Author:     Luna Lamb <luna.lamb@arm.com>
AuthorDate: Thu May 29 15:22:51 2025 +0000
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:33:40 2025 +0200

    AArch64: Improve codegen in SVE log1p
    
    Improves memory access, reformat evaluation scheme to pack coefficients.
    5% improvement in throughput microbenchmark on Neoverse V1.
    
    Reviewed-by: Wilco Dijkstra  <Wilco.Dijkstra@arm.com>
    (cherry picked from commit da196e6134ede64728006518352d75b6c3902fec)
    (cherry picked from commit 307a8a44349b5d1d04d13d31469f9120abaec81c)

 sysdeps/aarch64/fpu/log1p_sve.c | 84 +++++++++++++++++++++++++++++++----------
 1 file changed, 65 insertions(+), 19 deletions(-)

commit 89b4c920fb69182107853bc9f46d3c83d5bf8c05
Author:     Dylan Fleming <Dylan.Fleming@arm.com>
AuthorDate: Mon May 19 11:36:51 2025 +0000
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:33:17 2025 +0200

    AArch64: Optimize inverse trig functions
    
    Improve performance of Inverse trig functions by altering how coefficients are
    loaded.
    
    Performance improvement on Neoverse V1:
    SVE     acos   14%
    AdvSIMD acos   6%
    
    AdvSIMD asin   6%
    SVE     asin   5%
    AdvSIMD asinf  2%
    
    AdvSIMD atanf  22%
    SVE     atanf  20%
    SVE     atan   11%
    AdvSIMD atan   5%
    
    SVE     atan2  7%
    SVE     atan2f 4%
    AdvSIMD atan2f 3%
    AdvSIMD atan2  2%
    
    Reviewed-by: Wilco Dijkstra  <Wilco.Dijkstra@arm.com>
    (cherry picked from commit 1e84509e0041c0a83997aba602a585bb3b8285f0)
    (cherry picked from commit 2a0b52fdd685b06a4908081d0000447a8fee43db)

 sysdeps/aarch64/fpu/acos_advsimd.c   |  56 +++++++++------
 sysdeps/aarch64/fpu/acos_sve.c       |  75 ++++++++++++--------
 sysdeps/aarch64/fpu/asin_advsimd.c   |  46 +++++++++----
 sysdeps/aarch64/fpu/asin_sve.c       |  74 ++++++++++++--------
 sysdeps/aarch64/fpu/asinf_advsimd.c  |  31 +++++----
 sysdeps/aarch64/fpu/atan2_advsimd.c  | 128 +++++++++++++++++------------------
 sysdeps/aarch64/fpu/atan2_sve.c      | 107 +++++++++++++++++++----------
 sysdeps/aarch64/fpu/atan2f_advsimd.c |  64 ++++++++++--------
 sysdeps/aarch64/fpu/atan2f_sve.c     |  61 ++++++++++-------
 sysdeps/aarch64/fpu/atan_advsimd.c   |  83 +++++++++++------------
 sysdeps/aarch64/fpu/atan_sve.c       | 104 ++++++++++++++++++----------
 sysdeps/aarch64/fpu/atanf_advsimd.c  |  97 +++++++++++++++-----------
 sysdeps/aarch64/fpu/atanf_sve.c      |  84 +++++++++++++----------
 13 files changed, 599 insertions(+), 411 deletions(-)

commit 3db0cd3de000701e28c66dcd47680e45da874e56
Author:     Pierre Blanchard <pierre.blanchard@arm.com>
AuthorDate: Tue Mar 18 17:07:31 2025 +0000
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:32:55 2025 +0200

    AArch64: Optimize algorithm in users of SVE expf helper
    
    Polynomial order was unnecessarily high, unlocking multiple
    optimizations.
    Max error for new SVE expf is 0.88 +0.5ULP.
    Max error for new SVE coshf is 2.56 +0.5ULP.
    Performance improvement on Neoverse V1: expf (30%), coshf (26%).
    
    Reviewed-by: Wilco Dijkstra  <Wilco.Dijkstra@arm.com>
    (cherry picked from commit cf56eb28fa277d9dbb301654682ca89f71c30a48)
    (cherry picked from commit 0bb6dad5af4547cd8e9086339adfba88f3442ded)

 sysdeps/aarch64/fpu/coshf_sve.c      |  6 +++---
 sysdeps/aarch64/fpu/expf_sve.c       |  6 +++---
 sysdeps/aarch64/fpu/sv_expf_inline.h | 30 ++++++++++--------------------
 3 files changed, 16 insertions(+), 26 deletions(-)

commit b8022c9604745d519807d3ae15f3c9e0375c502a
Author:     Wilco Dijkstra <wilco.dijkstra@arm.com>
AuthorDate: Fri Jun 27 14:10:55 2025 +0000
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Thu Aug 21 23:32:37 2025 +0200

    AArch64: Avoid memset ifunc in cpu-features.c [BZ #33112]
    
    During early startup memcpy or memset must not be called since many targets
    use ifuncs for them which won't be initialized yet.  Security hardening may
    use -ftrivial-auto-var-init=zero which inserts calls to memset.  Redirect
    memset to memset_generic by including dl-symbol-redir-ifunc.h in cpu-features.c.
    This fixes BZ #33112.
    
    Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
    (cherry picked from commit 681a24ae4d0cb8ed92de98b4da660308840b09ba)
    (cherry picked from commit daa4de5253608293b53f8042d759cc68aab061f6)

 sysdeps/unix/sysv/linux/aarch64/cpu-features.c | 1 +
 1 file changed, 1 insertion(+)

commit cbe6e182ad026f1b43cced5041c1951dc230f174 (tag: gentoo/glibc-2.41-7)
Author:     Adhemerval Zanella <adhemerval.zanella@linaro.org>
AuthorDate: Fri Aug 1 15:00:25 2025 -0300
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Sat Aug 2 16:22:55 2025 +0200

    nptl: Fix SYSCALL_CANCEL for return values larger than INT_MAX (BZ 33245)
    
    The SYSCALL_CANCEL calls __syscall_cancel, which in turn
    calls __internal_syscall_cancel with an 'int' return instead of the
    expected 'long int'.  This causes issues with syscalls that return
    values larger than INT_MAX, such as copy_file_range [1].
    
    Checked on x86_64-linux-gnu.
    
    [1] https://debbugs.gnu.org/cgi/bugreport.cgi?bug=79139
    
    Reviewed-by: Andreas K. Huettel <dilfridge@gentoo.org>
    (cherry picked from commit 7107bebf19286f42dcb0a97581137a5893c16206)
    (cherry picked from commit 1502c248d58cb99a203731707987a4342926e830)

 NEWS                | 1 +
 nptl/cancellation.c | 4 ++--
 2 files changed, 3 insertions(+), 2 deletions(-)

commit f74ed781718d184ee159d771d5db71ec2f14ef0d
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Fri Aug 1 12:19:49 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Sat Aug 2 16:22:25 2025 +0200

    elf: Handle ld.so with LOAD segment gaps in _dl_find_object (bug 31943)
    
    Detect if ld.so not contiguous and handle that case in _dl_find_object.
    Set l_find_object_processed even for initially loaded link maps,
    otherwise dlopen of an initially loaded object adds it to
    _dlfo_loaded_mappings (where maps are expected to be contiguous),
    in addition to _dlfo_nodelete_mappings.
    
    Test elf/tst-link-map-contiguous-ldso iterates over the loader
    image, reading every word to make sure memory is actually mapped.
    It only does that if the l_contiguous flag is set for the link map.
    Otherwise, it finds gaps with mmap and checks that _dl_find_object
    does not return the ld.so mapping for them.
    
    The test elf/tst-link-map-contiguous-main does the same thing for
    the libc.so shared object.  This only works if the kernel loaded
    the main program because the glibc dynamic loader may fill
    the gaps with PROT_NONE mappings in some cases, making it contiguous,
    but accesses to individual words may still fault.
    
    Test elf/tst-link-map-contiguous-libc is again slightly different
    because the dynamic loader always fills the gaps with PROT_NONE
    mappings, so a different form of probing has to be used.
    
    Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
    (cherry picked from commit 20681be149b9eb1b6c1f4246bf4bd801221c86cd)
    
    (cherry picked from commit 513629b14d43bffd83985ffb9cf10e5599e649d2)

 NEWS                               |  1 +
 elf/Makefile                       |  6 +++
 elf/dl-find_object.c               | 74 +++++++++++++++++-----------
 elf/dl-find_object.h               |  4 +-
 elf/rtld.c                         | 25 +++++++++-
 elf/tst-link-map-contiguous-ldso.c | 98 ++++++++++++++++++++++++++++++++++++++
 elf/tst-link-map-contiguous-libc.c | 57 ++++++++++++++++++++++
 elf/tst-link-map-contiguous-main.c | 45 +++++++++++++++++
 8 files changed, 279 insertions(+), 31 deletions(-)

commit fc88fc95435b9e5fa9357b3c19650b790f414f84
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Fri Aug 1 10:20:23 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Sat Aug 2 16:22:05 2025 +0200

    elf: Extract rtld_setup_phdr function from dl_main
    
    Remove historic binutils reference from comment and update
    how this data is used by applications.
    
    Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
    (cherry picked from commit 2cac9559e06044ba520e785c151fbbd25011865f)
    (cherry picked from commit f48de98bce78119096c531ae08272b41d6382d01)

 elf/rtld.c | 59 ++++++++++++++++++++++++++++++++---------------------------
 1 file changed, 32 insertions(+), 27 deletions(-)

commit ed09e9e121d295c61b0c7de3248aed04766cf8f6
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Sat Feb 1 12:37:58 2025 +0100
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Sat Aug 2 16:21:47 2025 +0200

    elf: Do not add a copy of _dl_find_object to libc.so
    
    This reduces code size and dependencies on ld.so internals from
    libc.so.
    
    Fixes commit f4c142bb9fe6b02c0af8cfca8a920091e2dba44b
    ("arm: Use _dl_find_object on __gnu_Unwind_Find_exidx (BZ 31405)").
    
    Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
    (cherry picked from commit 96429bcc91a14f71b177ddc5e716de3069060f2c)
    (cherry picked from commit 62928cf7d80b75c17b1a025f4e566eb71181f884)

 elf/Makefile             | 2 +-
 elf/dl-find_object.c     | 5 ++---
 include/dlfcn.h          | 3 +--
 sysdeps/arm/find_exidx.c | 3 ++-
 4 files changed, 6 insertions(+), 7 deletions(-)

commit db4c71bc400224afabf8273596b46ef04ecec031
Author:     Davide Cavalca <davide@cavalca.name>
AuthorDate: Thu Jul 31 17:32:58 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Sat Aug 2 16:21:31 2025 +0200

    stdlib: resolve a double lock init issue after fork [BZ #32994]
    
    The __abort_fork_reset_child (introduced in
    d40ac01cbbc66e6d9dbd8e3485605c63b2178251) call resets the lock after the
    fork. This causes a DRD regression in valgrind
    (https://bugs.kde.org/show_bug.cgi?id=503668), as it's effectively a
    double initialization, despite it being actually ok in this case. As
    suggested in https://sourceware.org/bugzilla/show_bug.cgi?id=32994#c2
    we replace it here with a memcpy of another initialized lock instead,
    which makes valgrind happy.
    
    Reviewed-by: Florian Weimer <fweimer@redhat.com>
    (cherry picked from commit d9a348d0927c7a1aec5caf3df3fcd36956b3eb23)
    (cherry picked from commit 373408c19f8f7f32d2aebb29c684448c14273aad)

 NEWS           | 1 +
 stdlib/abort.c | 6 +++++-
 2 files changed, 6 insertions(+), 1 deletion(-)

commit 3d75acbe05e78763eca41e8e7e20ec17d7645a2d
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Thu Jul 17 14:44:05 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Sat Aug 2 16:21:11 2025 +0200

    iconv: iconv -o should not create executable files (bug 33164)
    
    The mistake is that open must use 0666 to pick up the umask,
    and not 0777 (which is required by mkdir).
    
    Fixes commit 8ef3cff9d1ceafe369f982d980678d749fb93bd2
    ("iconv: Support in-place conversions (bug 10460, bug 32033)").
    
    Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
    (cherry picked from commit cdcf24ee14c27b77744ff52ab3ae852821207eb0)
    (cherry picked from commit e7c419a2957590fb657900fc92a89708f41abd9d)

 NEWS                           | 1 +
 iconv/iconv_prog.c             | 4 ++--
 iconv/tst-iconv_prog-buffer.sh | 4 ++++
 3 files changed, 7 insertions(+), 2 deletions(-)

commit a0e48b78519b585d3f03a669d64201eb6b377721
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Mon Jul 21 21:43:49 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Sat Aug 2 16:20:53 2025 +0200

    posix: Fix double-free after allocation failure in regcomp (bug 33185)
    
    If a memory allocation failure occurs during bracket expression
    parsing in regcomp, a double-free error may result.
    
    Reported-by: Anastasia Belova <abelova@astralinux.ru>
    Co-authored-by: Paul Eggert <eggert@cs.ucla.edu>
    Reviewed-by: Andreas K. Huettel <dilfridge@gentoo.org>
    (cherry picked from commit 7ea06e994093fa0bcca0d0ee2c1db271d8d7885d)
    (cherry picked from commit 1e16d0096d80a6e12d5bfa8e0aafdd13c47efd65)

 NEWS                             |   1 +
 posix/Makefile                   |   1 +
 posix/regcomp.c                  |   4 +-
 posix/tst-regcomp-bracket-free.c | 176 +++++++++++++++++++++++++++++++++++++++
 4 files changed, 181 insertions(+), 1 deletion(-)

commit 43ed5a963935bb91ffb63146fdd214f9889d5872
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Thu May 22 14:36:37 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Sat Aug 2 16:20:35 2025 +0200

    Fix error reporting (false negatives) in SGID tests
    
    And simplify the interface of support_capture_subprogram_self_sgid.
    
    Use the existing framework for temporary directories (now with
    mode 0700) and directory/file deletion.  Handle all execution
    errors within support_capture_subprogram_self_sgid.  In particular,
    this includes test failures because the invoked program did not
    exit with exit status zero.  Existing tests that expect exit
    status 42 are adjusted to use zero instead.
    
    In addition, fix callers not to call exit (0) with test failures
    pending (which may mask them, especially when running with --direct).
    
    Fixes commit 35fc356fa3b4f485bd3ba3114c9f774e5df7d3c2
    ("elf: Fix subprocess status handling for tst-dlopen-sgid (bug 32987)").
    
    Reviewed-by: Carlos O'Donell <carlos@redhat.com>
    (cherry picked from commit 3a3fb2ed83f79100c116c824454095ecfb335ad7)
    (cherry picked from commit 6e489c17f827317bcf8544efefa65f13b5a079dc)

 elf/tst-dlopen-sgid.c                |   8 +--
 elf/tst-env-setuid-tunables.c        |  18 +-----
 elf/tst-env-setuid.c                 |  17 +-----
 stdlib/tst-secure-getenv.c           |   9 +--
 support/capture_subprocess.h         |  10 ++--
 support/support_capture_subprocess.c | 106 ++++++++---------------------------
 6 files changed, 36 insertions(+), 132 deletions(-)

commit 03c2274b6c601d32493ee35845b95041ea3b3f93
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Wed May 21 16:47:34 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Sat Aug 2 16:20:16 2025 +0200

    support: Pick group in support_capture_subprogram_self_sgid if UID == 0
    
    When running as root, it is likely that we can run under any group.
    Pick a harmless group from /etc/group in this case.
    
    Reviewed-by: Carlos O'Donell <carlos@redhat.com>
    (cherry picked from commit 2f769cec448d84a62b7dd0d4ff56978fe22c0cd6)
    (cherry picked from commit 11e634ccf32e777f1ceff2b33ead641900e244a7)

 support/support_capture_subprocess.c | 58 +++++++++++++++++++++++++++++++++---
 1 file changed, 54 insertions(+), 4 deletions(-)

commit 8b37c99ef19c79b2bfe84be3b5a4348ef09b0d76
Author:     Adhemerval Zanella <adhemerval.zanella@linaro.org>
AuthorDate: Fri Jun 13 11:23:44 2025 -0300
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Sat Aug 2 16:19:18 2025 +0200

    sparc: Fix sparc32 Fix argument passing to __libc_start_main (BZ 32981)
    
    Commit 404526ee2e58f3c075253943ddc9988f4bd6b80c changed _start to write
    the last argument to __libc_start_main without taking into consideration
    that the function did not create a full stack frame, which leads to
    overwriting the argv[0].
    
    (cherry picked from commit 8788bd77d68c6429c7f2dcbd22765525555c3cd8)
    (cherry picked from commit 61e461ed0c165c0bb9e935360dde73826124d150)

 sysdeps/sparc/sparc32/start.S | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit ccfae86ddd5b5a301281350a249e6dc413f1ef20
Author:     Andreas K. Hüttel <dilfridge@gentoo.org>
AuthorDate: Sat Aug 2 16:18:36 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Sat Aug 2 16:18:36 2025 +0200

    Revert "sparc: Fix argument passing to __libc_start_main on SPARC32"
    
    In the end a different approach was committed upstream.
    This reverts commit c8305ccf787df8b16a5db18254a3737069a390b7.
    
    Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>

 sysdeps/sparc/sparc32/start.S                      |  6 +++--
 sysdeps/unix/sysv/linux/sparc/sparc32/libc-start.c | 30 ----------------------
 2 files changed, 4 insertions(+), 32 deletions(-)

commit c8305ccf787df8b16a5db18254a3737069a390b7 (tag: gentoo/glibc-2.41-6)
Author:     Ludwig Rydberg <ludwig.rydberg@gaisler.com>
AuthorDate: Fri Jun 13 12:22:41 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Tue Jun 17 21:24:19 2025 +0200

    sparc: Fix argument passing to __libc_start_main on SPARC32
    
    Use a custom __libc_start_main function so the highest stack address can
    be provided to __libc_start_main_impl without altering the content of
    the stack (as there is no room for adding arguments to the stack).
    
    The __libc_stack_end was written to [%sp+23*4] but that address is
    already in use (holds the pointer to argv) which led to corruption.
    
    Fixes: d952c6efaa87 ("sparc: Fix argument passing to __libc_start_main (BZ 32981)")
    Signed-off-by: Ludwig Rydberg <ludwig.rydberg@gaisler.com>

 sysdeps/sparc/sparc32/start.S                      |  6 ++---
 sysdeps/unix/sysv/linux/sparc/sparc32/libc-start.c | 30 ++++++++++++++++++++++
 2 files changed, 32 insertions(+), 4 deletions(-)

commit a0223959301d8049541d73d6d571f2b2d434a3b1 (tag: gentoo/glibc-2.41-5)
Author:     Carlos O'Donell <carlos@redhat.com>
AuthorDate: Mon Jun 16 13:09:57 2025 -0400
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Tue Jun 17 19:30:47 2025 +0200

    ppc64le: Revert "powerpc: Optimized strcmp for power10" (CVE-2025-5702)
    
    This reverts commit 3367d8e180848030d1646f088759f02b8dfe0d6f
    
    Reason for revert: Power10 strcmp clobbers non-volatile vector
    registers (Bug 33056)
    
    Tested on ppc64le without regression.
    
    (cherry picked from commit 15808c77b35319e67ee0dc8f984a9a1a434701bc)
    (cherry picked from commit 0c76c951620f9e12df2a89b2c684878b55bb6795)

 sysdeps/powerpc/powerpc64/le/power10/strcmp.S      | 204 ---------------------
 sysdeps/powerpc/powerpc64/multiarch/Makefile       |   2 +-
 .../powerpc/powerpc64/multiarch/ifunc-impl-list.c  |   4 -
 .../powerpc/powerpc64/multiarch/strcmp-power10.S   |  26 ---
 sysdeps/powerpc/powerpc64/multiarch/strcmp.c       |   4 -
 5 files changed, 1 insertion(+), 239 deletions(-)

commit 0e80345cc8c754f5b5e25066d0b4206a40f5adfe
Author:     Carlos O'Donell <carlos@redhat.com>
AuthorDate: Wed Jun 11 09:33:45 2025 -0400
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Tue Jun 17 19:30:22 2025 +0200

    ppc64le: Revert "powerpc : Add optimized memchr for POWER10" (Bug 33059)
    
    This reverts commit b9182c793caa05df5d697427c0538936e6396d4b
    
    Reason for revert: Power10 memchr clobbers v20 vector register
    (Bug 33059)
    
    This is not a security issue, unlike CVE-2025-5745 and
    CVE-2025-5702.
    
    Tested on ppc64le without regression.
    
    (cherry picked from commit a7877bb6685300f159fa095c9f50b22b112cddb8)
    (cherry picked from commit b48d7ab03643afbe539aa02b25558ab39c351210)

 sysdeps/powerpc/powerpc64/le/power10/memchr.S      | 315 ---------------------
 sysdeps/powerpc/powerpc64/multiarch/Makefile       |  11 +-
 .../powerpc/powerpc64/multiarch/ifunc-impl-list.c  |   6 -
 .../powerpc/powerpc64/multiarch/memchr-power10.S   |  28 --
 sysdeps/powerpc/powerpc64/multiarch/memchr.c       |  20 +-
 5 files changed, 11 insertions(+), 369 deletions(-)

commit e1ba7d012e70a28b901cf3fc89c0d91c272120c0
Author:     Carlos O'Donell <carlos@redhat.com>
AuthorDate: Wed Jun 11 09:43:50 2025 -0400
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Tue Jun 17 19:30:04 2025 +0200

    ppc64le: Revert "powerpc: Fix performance issues of strcmp power10" (CVE-2025-5702)
    
    This reverts commit 90bcc8721ef82b7378d2b080141228660e862d56
    
    This change is in the chain of the final revert that fixes the CVE
    i.e. 3367d8e180848030d1646f088759f02b8dfe0d6f
    
    Reason for revert: Power10 strcmp clobbers non-volatile vector
    registers (Bug 33056)
    
    Tested on ppc64le with no regressions.
    
    (cherry picked from commit c22de63588df7a8a0edceea9bb02534064c9d201)
    (cherry picked from commit 55cdcadf7306c39a396f2dee7c6d42324ab53469)

 sysdeps/powerpc/powerpc64/le/power10/strcmp.S | 161 +++++++++++---------------
 1 file changed, 66 insertions(+), 95 deletions(-)

commit 444542909ea34b171b6258e12b439d6c861311d3
Author:     Carlos O'Donell <carlos@redhat.com>
AuthorDate: Wed Jun 11 09:19:17 2025 -0400
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Tue Jun 17 19:29:41 2025 +0200

    ppc64le: Revert "powerpc: Optimized strncmp for power10" (CVE-2025-5745)
    
    This reverts commit 23f0d81608d0ca6379894ef81670cf30af7fd081
    
    Reason for revert: Power10 strncmp clobbers non-volatile vector
    registers (Bug 33060)
    
    Tested on ppc64le with no regressions.
    
    (cherry picked from commit 63c60101ce7c5eac42be90f698ba02099b41b965)
    (cherry picked from commit 84bdbf8a6f2fdafd3661489dbb7f79835a52da82)

 sysdeps/powerpc/powerpc64/le/power10/strncmp.S     | 271 ---------------------
 sysdeps/powerpc/powerpc64/multiarch/Makefile       |   2 +-
 .../powerpc/powerpc64/multiarch/ifunc-impl-list.c  |   3 -
 .../powerpc/powerpc64/multiarch/strncmp-power10.S  |  25 --
 sysdeps/powerpc/powerpc64/multiarch/strncmp.c      |   4 -
 5 files changed, 1 insertion(+), 304 deletions(-)

commit 2ebba380a080a96d6e6047c72016eeffea8d0724 (tag: gentoo/glibc-2.41-4)
Author:     Adhemerval Zanella <adhemerval.zanella@linaro.org>
AuthorDate: Fri May 30 12:40:04 2025 -0300
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Sun Jun 15 18:18:07 2025 +0200

    sparc: Fix argument passing to __libc_start_main (BZ 32981)
    
    sparc start.S does not provide the final argument for
    __libc_start_main, which is the highest stack address used to
    update the __libc_stack_end.A
    
    This fixes elf/tst-execstack-prog-static-tunable on sparc64.
    On sparcv9 this does not happen because the kernel puts an
    auxv value, which turns to point to a value in the stack itself.
    
    Checked on sparc64-linux-gnu.
    
    Reviewed-by: Florian Weimer <fweimer@redhat.com>
    
    (cherry picked from commit 404526ee2e58f3c075253943ddc9988f4bd6b80c)
    (cherry picked from commit d952c6efaa87c6973819bcb74712b86fc35a033e)

 NEWS                          | 2 ++
 sysdeps/sparc/sparc32/start.S | 4 ++++
 sysdeps/sparc/sparc64/start.S | 4 ++++
 3 files changed, 10 insertions(+)

commit 1a6ddc04d417b0f506c8f59bb3b1177b70b808e1
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Wed May 21 08:43:32 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Sun Jun 15 18:17:43 2025 +0200

    elf: Fix subprocess status handling for tst-dlopen-sgid (bug 32987)
    
    This should really move into support_capture_subprogram_self_sgid.
    
    Reviewed-by: Sam James <sam@gentoo.org>
    (cherry picked from commit 35fc356fa3b4f485bd3ba3114c9f774e5df7d3c2)
    (cherry picked from commit 515d4166f4dbcf43b1568e3f63a19d9a92b2d50e)

 NEWS                  |  1 +
 elf/tst-dlopen-sgid.c | 12 ++++++++++--
 2 files changed, 11 insertions(+), 2 deletions(-)

commit 29f791fd6adc5b396d21e5a5f6eb93d844b48fb7
Author:     Sunil K Pandey <sunil.k.pandey@intel.com>
AuthorDate: Tue May 20 10:07:27 2025 -0700
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Sun Jun 15 18:17:27 2025 +0200

    x86_64: Fix typo in ifunc-impl-list.c.
    
    Fix wcsncpy and wcpncpy typo in ifunc-impl-list.c.
    
    Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
    (cherry picked from commit f2aeb6ff941dccc4c777b5621e77addea6cc076c)
    (cherry picked from commit 899dd3ab2fc2bff6b8d37345ee34b7b1ef23fa0c)

 sysdeps/x86_64/multiarch/ifunc-impl-list.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit bcdb07c52bd4b1b25f64fab6da2af60b619f9383
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Tue May 20 19:45:06 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Sun Jun 15 18:17:10 2025 +0200

    elf: Test case for bug 32976 (CVE-2025-4802)
    
    Check that LD_LIBRARY_PATH is ignored for AT_SECURE statically
    linked binaries, using support_capture_subprogram_self_sgid.
    
    Reviewed-by: Carlos O'Donell <carlos@redhat.com>
    (cherry picked from commit d8f7a79335b0d861c12c42aec94c04cd5bb181e2)
    
    (cherry picked from commit 624285af3bfc0d2a513cc921d21142a46e3cebb0)

 elf/Makefile              |   4 ++
 elf/tst-dlopen-sgid-mod.c |   1 +
 elf/tst-dlopen-sgid.c     | 104 ++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 109 insertions(+)

commit 74c629d04265ddab545a69e9a84a2d7f6aa4950a
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Tue May 20 19:36:02 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Sun Jun 15 18:16:53 2025 +0200

    support: Use const char * argument in support_capture_subprogram_self_sgid
    
    The function does not modify the passed-in string, so make this clear
    via the prototype.
    
    Reviewed-by: Carlos O'Donell <carlos@redhat.com>
    (cherry picked from commit f0c09fe61678df6f7f18fe1ebff074e62fa5ca7a)
    (cherry picked from commit 2ca34d76270d02d576e385db76ebb05ce54d443c)

 support/capture_subprocess.h         | 3 +--
 support/support_capture_subprocess.c | 6 +++---
 2 files changed, 4 insertions(+), 5 deletions(-)

commit 7a8d3c7967ee30b369581083000692e5ddabeb2b
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Thu Feb 13 21:56:52 2025 +0100
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Sun Jun 15 18:16:33 2025 +0200

    elf: Keep using minimal malloc after early DTV resize (bug 32412)
    
    If an auditor loads many TLS-using modules during startup, it is
    possible to trigger DTV resizing.  Previously, the DTV was marked
    as allocated by the main malloc afterwards, even if the minimal
    malloc was still in use.  With this change, _dl_resize_dtv marks
    the resized DTV as allocated with the minimal malloc.
    
    The new test reuses TLS-using modules from other auditing tests.
    
    Reviewed-by: DJ Delorie <dj@redhat.com>
    (cherry picked from commit aa3d7bd5299b33bffc118aa618b59bfa66059bcb)
    (cherry picked from commit dab44a3b2bb5e5f6cb911f4b5a30d19429a004c7)

 elf/Makefile                    |  5 ++++
 elf/dl-tls.c                    |  7 +++++
 elf/tst-audit-tlsdesc-dlopen2.c | 46 ++++++++++++++++++++++++++++++++
 elf/tst-auditmod-tlsdesc2.c     | 59 +++++++++++++++++++++++++++++++++++++++++
 4 files changed, 117 insertions(+)

commit f67f43c0e6472af5a9feaaacde76f83bc84fea6b (tag: gentoo/glibc-2.41-3)
Author:     Adhemerval Zanella <adhemerval.zanella@linaro.org>
AuthorDate: Fri May 9 10:19:37 2025 -0300
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Sat May 10 23:52:50 2025 +0200

    hurd: Fix tst-stack2 test build on Hurd
    
    It requires $(shared-thread-library).  Fixes 0c342594237.
    
    Checked on a i686-gnu build.
    
    (cherry picked from commit f66cb3c9ebcac80b3200c3aff0e3aed6111547ba)
    (cherry picked from commit 5cf17ebc659c875aff3c49d2a59ce15f46167389)

 sysdeps/pthread/Makefile | 1 +
 1 file changed, 1 insertion(+)

commit 73a881ed06f0b38ff4082892e3eaff55283713a3
Author:     Adhemerval Zanella <adhemerval.zanella@linaro.org>
AuthorDate: Thu Apr 24 12:27:44 2025 -0300
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Mon May 5 17:42:52 2025 +0200

    nptl: Fix pthread_getattr_np when modules with execstack are allowed (BZ 32897)
    
    The BZ 32653 fix (12a497c716f0a06be5946cabb8c3ec22a079771e) kept the
    stack pointer zeroing from make_main_stack_executable on
    _dl_make_stack_executable.  However, previously the 'stack_endp'
    pointed to temporary variable created before the call of
    _dl_map_object_from_fd; while now we use the __libc_stack_end
    directly.
    
    Since pthread_getattr_np relies on correct __libc_stack_end, if
    _dl_make_stack_executable is called (for instance, when
    glibc.rtld.execstack=2 is set) __libc_stack_end will be set to zero,
    and the call will always fail.
    
    The __libc_stack_end zero was used a mitigation hardening, but since
    52a01100ad011293197637e42b5be1a479a2f4ae it is used solely on
    pthread_getattr_np code.  So there is no point in zeroing anymore.
    
    Checked on x86_64-linux-gnu and i686-linux-gnu.
    Reviewed-by: Sam James <sam@gentoo.org>
    
    (cherry picked from commit 0c3425942374e72c3bcac28b2578117d36b0f9df)
    (cherry picked from commit 5b4c4617016d28569106549dff6f9fec73eed5ce)

 NEWS                                   |  2 ++
 elf/dl-execstack-tunable.c             |  2 +-
 elf/dl-execstack.c                     |  2 +-
 elf/dl-load.c                          |  4 +--
 sysdeps/generic/ldsodefs.h             |  2 +-
 sysdeps/mach/hurd/dl-execstack.c       |  5 ++--
 sysdeps/pthread/Makefile               |  9 +++++++
 sysdeps/pthread/tst-stack2-mod.c       | 39 ++++++++++++++++++++++++++++
 sysdeps/pthread/tst-stack2.c           | 47 ++++++++++++++++++++++++++++++++++
 sysdeps/unix/sysv/linux/dl-execstack.c |  7 ++---
 10 files changed, 106 insertions(+), 13 deletions(-)

commit d2658b989ad02fae7f667760026312d315e6712b
Author:     Aurelien Jarno <aurelien@aurel32.net>
AuthorDate: Sat Apr 19 20:45:07 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Mon May 5 17:42:27 2025 +0200

    elf: tst-audit10: split AVX512F code into dedicated functions [BZ #32882]
    
    "Recent" GCC versions (since commit fc62716fe8d1, backported to stable
    branches) emit a vzeroupper instruction at the end of functions
    containing AVX instructions. This causes the tst-audit10 test to fail
    on CPUs lacking AVX instructions, despite the AVX512F check. The crash
    occurs in the pltenter function of tst-auditmod10b.c.
    
    Fix that by moving the code guarded by the check_avx512 function into
    specific functions using the target ("avx512f") attribute. Note that
    since commit 5359c3bc91cc ("x86-64: Remove compiler -mavx512f check") it
    is safe to assume that the compiler has AVX512F support, thus the
    __AVX512F__ checks can be dropped.
    
    Tested on non-AVX, AVX2 and AVX512F machines.
    
    Reviewed-by: Florian Weimer <fweimer@redhat.com>
    (cherry picked from commit e78caeb4ff812ae19d24d65f4d4d48508154277b)
    (cherry picked from commit 5cb575ca9a3da045bc3e2f0dda81ad5804bde1e6)

 NEWS                             |   1 +
 sysdeps/x86_64/Makefile          |   1 -
 sysdeps/x86_64/tst-auditmod10b.c | 109 ++++++++++++++++++++-------------------
 3 files changed, 56 insertions(+), 55 deletions(-)

commit 1d86f75b18f3ffa451e9e85fdcaa934b09db6391
Author:     H.J. Lu <hjl.tools@gmail.com>
AuthorDate: Sat Apr 12 08:37:29 2025 -0700
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Mon May 5 17:42:11 2025 +0200

    x86: Detect Intel Diamond Rapids
    
    Detect Intel Diamond Rapids and tune it similar to Intel Granite Rapids.
    
    Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
    Reviewed-by: Sunil K Pandey <skpgkp2@gmail.com>
    (cherry picked from commit de14f1959ee5f9b845a7cae43bee03068b8136f0)
    (cherry picked from commit 046b33800c3e8c7ac21b48e3ce5dbed8901f7e37)

 sysdeps/x86/cpu-features.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

commit e7dae5a94a80a11f8b31d7ee63a29a18f352e49e
Author:     Sunil K Pandey <sunil.k.pandey@intel.com>
AuthorDate: Fri Apr 11 08:52:52 2025 -0700
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Mon May 5 17:41:55 2025 +0200

    x86: Handle unknown Intel processor with default tuning
    
    Enable default tuning for unknown Intel processor.
    
    Tested on x86, no regression.
    
    Co-Authored-By: H.J. Lu <hjl.tools@gmail.com>
    Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
    (cherry picked from commit 9f0deff558d1d6b08c425c157f50de85013ada9c)
    (cherry picked from commit a53e7646579109e3ab322b2c6d51cefb0a4ba774)

 sysdeps/x86/cpu-features.c | 287 ++++++++++++++++++++++-----------------------
 1 file changed, 143 insertions(+), 144 deletions(-)

commit 91dc856e2cb2625d01ced93df0ee5bfca048286d
Author:     Sunil K Pandey <skpgkp2@gmail.com>
AuthorDate: Thu Apr 3 18:14:20 2025 -0700
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Mon May 5 17:41:31 2025 +0200

    x86: Add ARL/PTL/CWF model detection support
    
    - Add ARROWLAKE model detection.
    - Add PANTHERLAKE model detection.
    - Add CLEARWATERFOREST model detection.
    
    Intel® Architecture Instruction Set Extensions Programming Reference
    https://cdrdv2.intel.com/v1/dl/getContent/671368 Section 1.2.
    
    No regression, validated model detection on SDE.
    
    Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
    (cherry picked from commit e53eb952b970ac94c97d74fb447418fb327ca096)
    (cherry picked from commit aca31d27123d437e6e33abff03c78a50d08567d2)

 sysdeps/x86/cpu-features.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit 0d3d3ebad7fb12b847448e736ca4d2f688a8252e
Author:     Sunil K Pandey <skpgkp2@gmail.com>
AuthorDate: Thu Apr 3 13:00:45 2025 -0700
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Mon May 5 17:41:14 2025 +0200

    x86: Optimize xstate size calculation
    
    Scan xstate IDs up to the maximum supported xstate ID.  Remove the
    separate AMX xstate calculation.  Instead, exclude the AMX space from
    the start of TILECFG to the end of TILEDATA in xsave_state_size.
    
    Completed validation on SKL/SKX/SPR/SDE and compared xsave state size
    with "ld.so --list-diagnostics" option, no regression.
    
    Co-Authored-By: H.J. Lu <hjl.tools@gmail.com>
    Reviewed-by: Sunil K Pandey <skpgkp2@gmail.com>
    (cherry picked from commit 70b648855185e967e54668b101d24704c3fb869d)
    (cherry picked from commit f68b407d4bc51f78716f7d8780017d7ccb8db0b5)

 sysdeps/x86/cpu-features.c | 74 +++++++++++-----------------------------------
 sysdeps/x86/sysdep.h       |  6 ++++
 2 files changed, 24 insertions(+), 56 deletions(-)

commit 3024df839bb93ad02ac6c60c08a9ac2b17fb815d
Author:     Adhemerval Zanella <adhemerval.zanella@linaro.org>
AuthorDate: Thu Apr 10 12:08:22 2025 +0000
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Mon May 5 17:40:57 2025 +0200

    elf: Fix arm-linux-gnueabihf build break from b861755a84
    
    (cherry picked from commit d6d56af6e78c6010dc812febc7dd4fd101e47168)

 elf/Makefile | 1 -
 1 file changed, 1 deletion(-)

commit 195d767aab9e4848afda1601151aa87bbfa70f98
Author:     Adhemerval Zanella <adhemerval.zanella@linaro.org>
AuthorDate: Thu Feb 13 14:02:38 2025 -0300
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Mon May 5 17:39:59 2025 +0200

    elf: Extend glibc.rtld.execstack tunable to force executable stack (BZ 32653)
    
    From the bug report [1], multiple programs still require to dlopen
    shared libraries with either missing PT_GNU_STACK or with the executable
    bit set.  Although, in some cases, it seems to be a hard-craft assembly
    source without the required .note.GNU-stack marking (so the static linker
    is forced to set the stack executable if the ABI requires it), other
    cases seem that the library uses trampolines [2].
    
    Unfortunately, READ_IMPLIES_EXEC is not an option since on some ABIs
    (x86_64), the kernel clears the bit, making it unsupported.  To avoid
    reinstating the broken code that changes stack permission on dlopen
    (0ca8785a28), this patch extends the glibc.rtld.execstack tunable to
    allow an option to force an executable stack at the program startup.
    
    The tunable is a security issue because it defeats the PT_GNU_STACK
    hardening.  It has the slight advantage of making it explicit by the
    caller, and, as for other tunables, this is disabled for setuid binaries.
    A tunable also allows us to eventually remove it, but from previous
    experiences, it would require some time.
    
    Checked on aarch64-linux-gnu, x86_64-linux-gnu, and i686-linux-gnu.
    
    [1] https://sourceware.org/bugzilla/show_bug.cgi?id=32653
    [2] https://github.com/conda-forge/ctng-compiler-activation-feedstock/issues/143
    Reviewed-by: Sam James <sam@gentoo.org>
    
    (cherry picked from commit 12a497c716f0a06be5946cabb8c3ec22a079771e)
    (cherry picked from commit b861755a84eeccdd9183989ca71b3b1251c83a74)

 NEWS                                    |  8 +++++++
 elf/Makefile                            | 14 +++++++++++-
 elf/dl-execstack-tunable.c              | 39 +++++++++++++++++++++++++++++++++
 elf/dl-support.c                        |  4 +---
 elf/dl-tunables.list                    |  2 +-
 elf/rtld.c                              |  6 ++---
 elf/tst-execstack-prog-static-tunable.c |  1 +
 elf/tst-execstack-tunable.c             |  1 +
 elf/tst-rtld-list-tunables.exp          |  2 +-
 manual/tunables.texi                    | 10 ++++++---
 sysdeps/generic/ldsodefs.h              | 13 +++++++++++
 11 files changed, 88 insertions(+), 12 deletions(-)

commit 880566fa48c2fd140fc3085a6bddd070003fe101
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Mon Mar 31 21:33:18 2025 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Mon May 5 17:39:34 2025 +0200

    x86: Link tst-gnu2-tls2-x86-noxsave{,c,xsavec} with libpthread
    
    This fixes a test build failure on Hurd.
    
    Fixes commit 145097dff170507fe73190e8e41194f5b5f7e6bf ("x86: Use separate
    variable for TLSDESC XSAVE/XSAVEC state size (bug 32810)").
    
    Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
    (cherry picked from commit c6e2895695118ab59c7b17feb0fcb75a53e3478c)
    (cherry picked from commit 200d20123cb8ee15ad5d15c9a4adcd2999acb9f1)

 sysdeps/x86/Makefile | 3 +++
 1 file changed, 3 insertions(+)

commit 8e58467e8ecc482a1dc1b368a36908d74263bcbd
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Fri Mar 28 09:26:59 2025 +0100
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Mon May 5 17:39:14 2025 +0200

    x86: Use separate variable for TLSDESC XSAVE/XSAVEC state size (bug 32810)
    
    Previously, the initialization code reused the xsave_state_full_size
    member of struct cpu_features for the TLSDESC state size.  However,
    the tunable processing code assumes that this member has the
    original XSAVE (non-compact) state size, so that it can use its
    value if XSAVEC is disabled via tunable.
    
    This change uses a separate variable and not a struct member because
    the value is only needed in ld.so and the static libc, but not in
    libc.so.  As a result, struct cpu_features layout does not change,
    helping a future backport of this change.
    
    Fixes commit 9b7091415af47082664717210ac49d51551456ab ("x86-64:
    Update _dl_tlsdesc_dynamic to preserve AMX registers").
    
    Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
    (cherry picked from commit 145097dff170507fe73190e8e41194f5b5f7e6bf)
    (cherry picked from commit 80cd6566496e513297bf1031cb164192fd8f81f6)

 NEWS                                          |  1 +
 sysdeps/x86/Makefile                          | 19 +++++++++++++++++++
 sysdeps/x86/cpu-features.c                    | 11 ++++++-----
 sysdeps/x86/cpu-tunables.c                    |  2 ++
 sysdeps/x86/dl-diagnostics-cpu.c              |  2 ++
 sysdeps/x86/include/cpu-features.h            |  9 +++++++--
 sysdeps/x86/tst-gnu2-tls2-x86-noxsave.c       |  1 +
 sysdeps/x86/tst-gnu2-tls2-x86-noxsavec.c      |  1 +
 sysdeps/x86/tst-gnu2-tls2-x86-noxsavexsavec.c |  1 +
 sysdeps/x86_64/dl-tlsdesc-dynamic.h           |  2 +-
 10 files changed, 41 insertions(+), 8 deletions(-)

commit 49721880c5e210c3fc3d617dddfaa90845cdd9a0
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Fri Mar 28 09:26:06 2025 +0100
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Mon May 5 17:38:52 2025 +0200

    x86: Skip XSAVE state size reset if ISA level requires XSAVE
    
    If we have to use XSAVE or XSAVEC trampolines, do not adjust the size
    information they need.  Technically, it is an operator error to try to
    run with -XSAVE,-XSAVEC on such builds, but this change here disables
    some unnecessary code with higher ISA levels and simplifies testing.
    
    Related to commit befe2d3c4dec8be2cdd01a47132e47bdb7020922
    ("x86-64: Don't use SSE resolvers for ISA level 3 or above").
    
    Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
    (cherry picked from commit 59585ddaa2d44f22af04bb4b8bd4ad1e302c4c02)
    (cherry picked from commit a282e2c0aee895ae47fa5b3b238e5abca3799cc6)

 sysdeps/x86/cpu-features.c | 5 +++++
 1 file changed, 5 insertions(+)

commit c37970792ca10f80f6a79f37fca8e4f8781c4a69
Author:     Sunil K Pandey <skpgkp2@gmail.com>
AuthorDate: Wed Mar 5 16:13:38 2025 -0800
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Mon May 5 17:38:20 2025 +0200

    x86_64: Add atanh with FMA
    
    On SPR, it improves atanh bench performance by:
    
                            Before          After           Improvement
    reciprocal-throughput   15.1715         14.8628         2%
    latency                 57.1941         56.1883         2%
    
    Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
    (cherry picked from commit c7c4a5906f326f1290b1c2413a83c530564ec4b8)
    (cherry picked from commit bcd4cf9d5ff22ed561ad72d0de072c95c0766470)

 benchtests/atanh-inputs                    |  1 +
 sysdeps/ieee754/dbl-64/e_atanh.c           |  8 +++++++
 sysdeps/x86_64/fpu/multiarch/Makefile      |  2 ++
 sysdeps/x86_64/fpu/multiarch/e_atanh-fma.c |  6 ++++++
 sysdeps/x86_64/fpu/multiarch/e_atanh.c     | 34 ++++++++++++++++++++++++++++++
 5 files changed, 51 insertions(+)

commit 0b35ae3096c123820f1b5b23683fd3732475dcc3
Author:     Sunil K Pandey <skpgkp2@gmail.com>
AuthorDate: Sat Mar 8 08:51:10 2025 -0800
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Mon May 5 17:38:04 2025 +0200

    x86_64: Add sinh with FMA
    
    On SPR, it improves sinh bench performance by:
    
                            Before          After           Improvement
    reciprocal-throughput   14.2017         11.815          17%
    latency                 36.4917         35.2114         4%
    
    Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
    (cherry picked from commit dded0d20f67ba1925ccbcb9cf28f0c75febe0dbe)
    (cherry picked from commit 7e72fa7577f2e24440a7d66a6646b872ae6c3684)

 benchtests/sinh-inputs                    |  1 +
 sysdeps/ieee754/dbl-64/e_sinh.c           |  8 +++++++
 sysdeps/x86_64/fpu/multiarch/Makefile     |  2 ++
 sysdeps/x86_64/fpu/multiarch/e_sinh-fma.c | 12 +++++++++++
 sysdeps/x86_64/fpu/multiarch/e_sinh.c     | 35 +++++++++++++++++++++++++++++++
 5 files changed, 58 insertions(+)

commit 39286c337fcd049a634dac3bc2de739330cabac3
Author:     Sunil K Pandey <skpgkp2@gmail.com>
AuthorDate: Mon Mar 10 10:24:07 2025 -0700
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Mon May 5 17:37:48 2025 +0200

    x86_64: Add tanh with FMA
    
    On Skylake, it improves tanh bench performance by:
    
            Before          After           Improvement
    max     110.89          95.826          14%
    min     20.966          20.157          4%
    mean    30.9601         29.8431         4%
    
    Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
    (cherry picked from commit c6352111c72a20b3588ae304dd99b63e25dd6d85)
    (cherry picked from commit 6a3a4a5e583ace9e43bd8bca44d576990e38d0df)

 sysdeps/ieee754/dbl-64/s_tanh.c           |  5 +++++
 sysdeps/x86_64/fpu/multiarch/Makefile     |  2 ++
 sysdeps/x86_64/fpu/multiarch/s_tanh-fma.c | 11 +++++++++++
 sysdeps/x86_64/fpu/multiarch/s_tanh.c     | 31 +++++++++++++++++++++++++++++++
 4 files changed, 49 insertions(+)

commit 241a42c9aa5e79bdae3a815766bd66944524656a (tag: gentoo/glibc-2.41-2)
Author:     Adhemerval Zanella <adhemerval.zanella@linaro.org>
AuthorDate: Wed Mar 12 10:59:17 2025 -0300
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Fri Mar 14 22:54:56 2025 +0100

    nptl: Check if thread is already terminated in sigcancel_handler (BZ 32782)
    
    The SIGCANCEL signal handler should not issue __syscall_do_cancel,
    which calls __do_cancel and __pthread_unwind, if the cancellation
    is already in proces (and libgcc unwind is not reentrant).  Any
    cancellation signal received after is ignored.
    
    Checked on x86_64-linux-gnu and aarch64-linux-gnu.
    
    Tested-by: Aurelien Jarno <aurelien@aurel32.net>
    Reviewed-by: Florian Weimer <fweimer@redhat.com>
    
    (cherry picked from commit 360cce0b066f34e85e473c04cdc16e6fa426021b)
    (cherry picked from commit ce9b765522f014daa0392099dd9ba1f7ddcc511d)

 NEWS                           |  1 +
 nptl/pthread_cancel.c          | 14 ++++----
 sysdeps/pthread/Makefile       |  1 +
 sysdeps/pthread/tst-cancel32.c | 73 ++++++++++++++++++++++++++++++++++++++++++
 4 files changed, 83 insertions(+), 6 deletions(-)

commit 220dc18854cdb4cd1bbd76ccb5f485b98c6e8509
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Thu Mar 13 06:07:07 2025 +0100
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Fri Mar 14 22:54:36 2025 +0100

    nptl: PTHREAD_COND_INITIALIZER compatibility with pre-2.41 versions (bug 32786)
    
    The new initializer and struct layout does not initialize the
    __g_signals field in the old struct layout before the change in
    commit c36fc50781995e6758cae2b6927839d0157f213c ("nptl: Remove
    g_refs from condition variables").  Bring back fields at the end
    of struct __pthread_cond_s, so that they are again zero-initialized.
    
    Reviewed-by: Sam James <sam@gentoo.org>
    (cherry picked from commit dbc5a50d12eff4cb3f782129029d04b8a76f58e7)
    (cherry picked from commit 98c712855d6606d078aaabaa7ef24b695c3f0349)

 NEWS                                    | 1 +
 sysdeps/nptl/bits/thread-shared-types.h | 2 ++
 sysdeps/nptl/pthread.h                  | 2 +-
 3 files changed, 4 insertions(+), 1 deletion(-)

commit d6167c1f90d905b9d724830971bd3e98a99d82fa
Author:     Michael Jeanson <mjeanson@efficios.com>
AuthorDate: Fri Feb 14 13:54:22 2025 -0500
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Fri Mar 14 22:54:12 2025 +0100

    nptl: clear the whole rseq area before registration
    
    Due to the extensible nature of the rseq area we can't explictly
    initialize fields that are not part of the ABI yet. It was agreed with
    upstream that all new fields will be documented as zero initialized by
    userspace. Future kernels configured with CONFIG_DEBUG_RSEQ will
    validate the content of all fields during registration.
    
    Replace the explicit field initialization with a memset of the whole
    rseq area which will cover fields as they are added to future kernels.
    
    Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
    Reviewed-by: Florian Weimer <fweimer@redhat.com>
    (cherry picked from commit 689a62a4217fae78b9ce0db781dc2a421f2b1ab4)
    (cherry picked from commit e22c132484ea49be0478e4dcbd108d433d70f64c)

 sysdeps/nptl/dl-tls_init_tp.c           |  1 +
 sysdeps/unix/sysv/linux/rseq-internal.h | 11 +++++------
 2 files changed, 6 insertions(+), 6 deletions(-)

commit a8ceead7f8a6523f09e2533d7d6104b078db2dea
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Wed Mar 12 10:23:47 2025 +0100
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Fri Mar 14 22:53:54 2025 +0100

    Linux: Remove attribute access from sched_getattr (bug 32781)
    
    The GCC attribute expects an element count, not bytes.
    
    (cherry picked from commit 74c68fa61b5ebf4c64605a3cc5e47154a66671ce)
    (cherry picked from commit 33bfd9020fdad925297c9e133055bd8804028f32)

 NEWS                                 | 1 +
 sysdeps/unix/sysv/linux/bits/sched.h | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

commit a819a35bb4b5e22d10cc7dd7e2f2dab18a6cc307
Author:     Aurelien Jarno <aurelien@aurel32.net>
AuthorDate: Thu Mar 6 19:34:15 2025 +0100
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Fri Mar 14 22:53:34 2025 +0100

    math: Remove an extra semicolon in math function declarations
    
    Commit 6bc301672bfbd ("math: Remove __XXX math functions from installed
    math.h [BZ #32418]") left an extra semicolon after macro expansion. For
    instance the ceil declaration after expansion is:
    
      extern double ceil (double __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));;
    
    This chokes very naive parsers like gauche c-wrapper. Fix that by
    removing that extra semicolon in the macro.
    
    Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
    (cherry picked from commit 443cb0b5f25129dd0f1e9f9101299d31c4700b7f)
    (cherry picked from commit 66fc3bd75871d7239245c767abf44fb96d772f66)

 math/bits/mathcalls-macros.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit eb4db403b00e4cf656152f2915bf363b74b1979d
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Fri Mar 7 21:40:55 2025 +0100
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Fri Mar 14 22:53:15 2025 +0100

    posix: Move environ helper variables next to environ definition (bug 32541)
    
    This helps with statically interposing getenv.
    
    Updates commit 7a61e7f557a97ab597d6fca5e2d1f13f65685c61
    ("stdlib: Make getenv thread-safe in more cases").
    
    Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
    (cherry picked from commit 6ef0bd02dbe34aab8b956ffa2db5679341d520f5)
    (cherry picked from commit 1a3083b999928d70b4889c889e38b1df32232fd2)

 posix/environ.c            |  4 ++++
 stdlib/Makefile            |  2 ++
 stdlib/getenv.c            |  3 ---
 stdlib/tst-getenv-static.c | 38 ++++++++++++++++++++++++++++++++++++++
 4 files changed, 44 insertions(+), 3 deletions(-)

commit fe070c584243c6d3df3575a89b8fc6da51b85b85
Author:     Florian Weimer <fweimer@redhat.com>
AuthorDate: Fri Mar 7 07:52:11 2025 +0100
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Fri Mar 14 22:52:58 2025 +0100

    configure: Fix spelling of -Wl,--no-error-execstack option
    
    BFD ld recognizes all -no-* options (with a single leading dash)
    unconditionally.
    
    Fixes commit a2bd5008a99032830add3e4005c25b61e3207112
    ("Pass -Wl,--no-error-execstack for tests where -Wl,-z,execstack
    is used [PR32717]").
    
    (cherry picked from commit 59dc232df277c21239c357e3519682c26e182cd7)
    (cherry picked from commit 91f8cff2c48f678d4ba7ed3b3845290c45a672b3)

 configure    | 4 ++--
 configure.ac | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

commit 72df14acb8794379c997a7a4c29b72d0bc587cc2
Author:     H.J. Lu <hjl.tools@gmail.com>
AuthorDate: Fri Mar 7 08:58:47 2025 +0800
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Fri Mar 14 22:52:39 2025 +0100

    elf: Check if __attribute__ ((aligned (65536))) is supported
    
    The BZ #32763 tests fail to build for MicroBlaze (which defines
    MAX_OFILE_ALIGNMENT to (32768*8) in GCC, so __attribute__ ((aligned
    (65536))) is unsupported).  Add a configure-time check to enable BZ #32763
    tests only if __attribute__ ((aligned (65536))) is supported.
    
    Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
    Reviewed-by: Sam James <sam@gentoo.org>
    (cherry picked from commit 9b91484bee8f6f1bf1e2d26a8df461b553784528)
    (cherry picked from commit fd202462c5f8ffa4dfb6b7c0c4cec2bce4bec408)

 configure    | 30 +++++++++++++++++++++++++++++-
 configure.ac | 11 +++++++++++
 elf/Makefile | 12 ++++++++----
 3 files changed, 48 insertions(+), 5 deletions(-)

commit 2867b5b53c06fa09ec2d879a375f29cecf738efd
Author:     H.J. Lu <hjl.tools@gmail.com>
AuthorDate: Wed Mar 5 10:19:59 2025 +0800
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Fri Mar 14 22:52:20 2025 +0100

    static-pie: Skip the empty PT_LOAD segment at offset 0 [BZ #32763]
    
    As shown in
    
    https://sourceware.org/bugzilla/show_bug.cgi?id=25237
    
    linker may generate an empty PT_LOAD segments at offset 0:
    
    Elf file type is EXEC (Executable file)
    Entry point 0x4000e8
    There are 3 program headers, starting at offset 64
    
    Program Headers:
      Type           Offset             VirtAddr           PhysAddr
                     FileSiz            MemSiz              Flags  Align
      LOAD           0x0000000000000000 0x0000000000400000 0x0000000000400000
                     0x00000000000000f0 0x00000000000000f0  R E    0x1000
      LOAD           0x0000000000000000 0x0000000000410000 0x0000000000410000
                     0x0000000000000000 0x0000000000b5dce8  RW     0x10000
      GNU_STACK      0x0000000000000000 0x0000000000000000 0x0000000000000000
                     0x0000000000000000 0x0000000000000000  RW     0x10
    
     Section to Segment mapping:
      Segment Sections...
       00     .text
       01     .bss
       02
    
    Skip the empty PT_LOAD segment at offset 0 to support such binaries.
    This fixes BZ #32763.
    
    Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
    Reviewed-by: Sam James <sam@gentoo.org>
    (cherry picked from commit 596130591ae4b058a529cc1318b95e624559054c)
    (cherry picked from commit 746ef8e93964a99db3e3fa4b8a7aba179185ef0a)

 elf/Makefile              |  5 +++++
 elf/dl-reloc-static-pie.c |  3 ++-
 elf/tst-pie-bss-static.c  | 19 +++++++++++++++++++
 elf/tst-pie-bss.c         | 30 ++++++++++++++++++++++++++++++
 4 files changed, 56 insertions(+), 1 deletion(-)

commit e24b9a76e47e26740329158bf6bf8d4fbdf5e99c
Author:     Sam James <sam@gentoo.org>
AuthorDate: Tue Feb 18 18:49:09 2025 +0000
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Fri Mar 14 22:51:50 2025 +0100

    Pass -Wl,--no-error-execstack for tests where -Wl,-z,execstack is used [PR32717]
    
    When GNU Binutils is configured with --enable-error-execstack=yes, a handful
    of our tests which rely on -Wl,-z,execstack fail. Pass --Wl,--no-error-execstack
    to override the behaviour and get a warning instead.
    
    Bug: https://sourceware.org/PR32717
    Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
    (cherry picked from commit a2bd5008a99032830add3e4005c25b61e3207112)
    (cherry picked from commit 56609f8df1fa05c3af13dbe8c84bf5ce62192cd2)

 config.make.in |  1 +
 configure      | 35 +++++++++++++++++++++++++++++++++++
 configure.ac   |  4 ++++
 elf/Makefile   |  6 ++++++
 nptl/Makefile  |  3 +++
 5 files changed, 49 insertions(+)

commit 222389b5274fa685139265a04c3e2a59f1a0aa1a
Author:     Wilco Dijkstra <wilco.dijkstra@arm.com>
AuthorDate: Thu Feb 27 16:28:52 2025 +0000
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Wed Mar 5 16:34:22 2025 +0100

    AArch64: Use prefer_sve_ifuncs for SVE memset
    
    Use prefer_sve_ifuncs for SVE memset just like memcpy.
    
    Reviewed-by: Yury Khrustalev <yury.khrustalev@arm.com>
    (cherry picked from commit 0f044be1dae5169d0e57f8d487b427863aeadab4)
    (cherry picked from commit 89be78704ed8d8159c20f7cdbc5f461a322ab884)

 sysdeps/aarch64/multiarch/memset.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2ac2f2406c04ac6d73a057e15604b6b0ff5594ae
Author:     Wilco Dijkstra <wilco.dijkstra@arm.com>
AuthorDate: Tue Dec 24 18:01:59 2024 +0000
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Wed Mar 5 16:34:11 2025 +0100

    AArch64: Add SVE memset
    
    Add SVE memset based on the generic memset with predicated load for sizes < 16.
    Unaligned memsets of 128-1024 are improved by ~20% on average by using aligned
    stores for the last 64 bytes.  Performance of random memset benchmark improves
    by ~2% on Neoverse V1.
    
    Reviewed-by: Yury Khrustalev <yury.khrustalev@arm.com>
    (cherry picked from commit 163b1bbb76caba4d9673c07940c5930a1afa7548)
    (cherry picked from commit c47c3890f15e82954a502cab7f7f1672ff3d7715)

 sysdeps/aarch64/multiarch/Makefile           |   1 +
 sysdeps/aarch64/multiarch/ifunc-impl-list.c  |   1 +
 sysdeps/aarch64/multiarch/memset.c           |   4 +
 sysdeps/aarch64/multiarch/memset_sve_zva64.S | 123 +++++++++++++++++++++++++++
 4 files changed, 129 insertions(+)

commit 81070cbe90d0c62c06a37e3b0e1ab4c1ec197ffd
Author:     Wilco Dijkstra <wilco.dijkstra@arm.com>
AuthorDate: Fri Dec 13 15:43:07 2024 +0000
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Wed Mar 5 16:33:57 2025 +0100

    math: Improve layout of exp/exp10 data
    
    GCC aligns global data to 16 bytes if their size is >= 16 bytes.  This patch
    changes the exp_data struct slightly so that the fields are better aligned
    and without gaps.  As a result on targets that support them, more load-pair
    instructions are used in exp.  Exp10 is improved by moving invlog10_2N later
    so that neglog10_2hiN and neglog10_2loN can be loaded using load-pair.
    
    The exp benchmark improves 2.5%, "144bits" by 7.2%, "768bits" by 12.7% on
    Neoverse V2.  Exp10 improves by 1.5%.
    
    Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
    (cherry picked from commit 5afaf99edb326fd9f36eb306a828d129a3a1d7f7)
    (cherry picked from commit e0bc5f64eaf75764db0f7972ac1763315f5eab81)

 sysdeps/ieee754/dbl-64/math_config.h | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 5b84b064ea85750fce47bee06ac64dfd7605cc5d
Author:     Yury Khrustalev <yury.khrustalev@arm.com>
AuthorDate: Thu Jan 23 10:36:36 2025 +0000
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Wed Mar 5 16:33:44 2025 +0100

    aarch64: Add GCS test with signal handler
    
    Test that when we return from a function that enabled GCS at runtime
    we get SIGSEGV. Also test that ucontext contains GCS block with the
    GCS pointer.
    
    Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
    (cherry picked from commit 009c5a2dca7cfc66b01b7217edb20996e25642da)

 sysdeps/unix/sysv/linux/aarch64/Makefile           |   5 +
 sysdeps/unix/sysv/linux/aarch64/tst-gcs-noreturn.c | 101 +++++++++++++++++++++
 2 files changed, 106 insertions(+)

commit f623d892a5f2863095475ad1f81547b48b3d78b0
Author:     Yury Khrustalev <yury.khrustalev@arm.com>
AuthorDate: Wed Jan 22 17:21:26 2025 +0000
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Wed Mar 5 16:33:33 2025 +0100

    aarch64: Add GCS tests for dlopen
    
    Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
    (cherry picked from commit 8d98ee8d70cd4bbbb2e7d3292600c8719e24a255)

 Makeconfig                                         |  2 +-
 sysdeps/unix/sysv/linux/aarch64/Makefile           | 23 ++++++++
 .../sysv/linux/aarch64/tst-gcs-dlopen-disabled.c   |  3 ++
 .../sysv/linux/aarch64/tst-gcs-dlopen-enforced.c   |  3 ++
 .../linux/aarch64/tst-gcs-dlopen-optional-off.c    |  3 ++
 .../linux/aarch64/tst-gcs-dlopen-optional-on.c     |  3 ++
 .../sysv/linux/aarch64/tst-gcs-dlopen-override.c   |  3 ++
 sysdeps/unix/sysv/linux/aarch64/tst-gcs-dlopen.c   | 62 ++++++++++++++++++++++
 8 files changed, 101 insertions(+), 1 deletion(-)

commit 0dee7e017a794e8dd4b0dda312550beba9d36b09
Author:     Yury Khrustalev <yury.khrustalev@arm.com>
AuthorDate: Wed Jan 22 15:06:18 2025 +0000
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Wed Mar 5 16:33:21 2025 +0100

    aarch64: Add GCS tests for transitive dependencies
    
    Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
    (cherry picked from commit 61ba3cdfa9e946fc91b0113a7a569cbe57fb46c1)

 sysdeps/unix/sysv/linux/aarch64/Makefile           | 29 +++++++++++++++
 sysdeps/unix/sysv/linux/aarch64/tst-gcs-helper.h   | 39 ++++++++++++++++++++
 sysdeps/unix/sysv/linux/aarch64/tst-gcs-mod1.c     | 27 ++++++++++++++
 sysdeps/unix/sysv/linux/aarch64/tst-gcs-mod2.c     | 25 +++++++++++++
 sysdeps/unix/sysv/linux/aarch64/tst-gcs-mod3.c     | 25 +++++++++++++
 .../sysv/linux/aarch64/tst-gcs-shared-disabled.c   |  2 ++
 .../linux/aarch64/tst-gcs-shared-enforced-abort.c  |  2 ++
 .../sysv/linux/aarch64/tst-gcs-shared-optional.c   |  2 ++
 .../sysv/linux/aarch64/tst-gcs-shared-override.c   |  2 ++
 sysdeps/unix/sysv/linux/aarch64/tst-gcs-shared.c   | 41 ++++++++++++++++++++++
 sysdeps/unix/sysv/linux/aarch64/tst-gcs-skeleton.c | 17 +--------
 11 files changed, 195 insertions(+), 16 deletions(-)

commit 592b33fdeb2f9e1f28bb214b044fabf77936b5e9
Author:     Yury Khrustalev <yury.khrustalev@arm.com>
AuthorDate: Tue Jan 21 13:33:20 2025 +0000
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Wed Mar 5 16:33:02 2025 +0100

    aarch64: Add tests for Guarded Control Stack
    
    These tests validate that GCS tunable works as expected depending
    on the GCS markings in the test binaries.
    
    Tests validate both static and dynamically linked binaries.
    
    These new tests are AArch64 specific. Moreover, they are included only
    if linker supports the "-z gcs=<value>" option. If built, these tests
    will run on systems with and without HWCAP_GCS. In the latter case the
    tests will be reported as UNSUPPORTED.
    
    Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
    (cherry picked from commit fda5730898bc36d637bf32588c16ea06dde81d81)

 sysdeps/unix/sysv/linux/aarch64/Makefile           | 72 +++++++++++++++++++++-
 sysdeps/unix/sysv/linux/aarch64/tst-gcs-abort.sh   | 39 ++++++++++++
 .../sysv/linux/aarch64/tst-gcs-disabled-static.c   |  1 +
 sysdeps/unix/sysv/linux/aarch64/tst-gcs-disabled.c |  2 +
 .../sysv/linux/aarch64/tst-gcs-enforced-abort.c    |  2 +
 .../linux/aarch64/tst-gcs-enforced-static-abort.c  |  1 +
 .../sysv/linux/aarch64/tst-gcs-enforced-static.c   |  1 +
 sysdeps/unix/sysv/linux/aarch64/tst-gcs-enforced.c |  2 +
 .../unix/sysv/linux/aarch64/tst-gcs-optional-off.c |  2 +
 .../unix/sysv/linux/aarch64/tst-gcs-optional-on.c  |  2 +
 .../linux/aarch64/tst-gcs-optional-static-off.c    |  1 +
 .../linux/aarch64/tst-gcs-optional-static-on.c     |  1 +
 .../sysv/linux/aarch64/tst-gcs-override-static.c   |  1 +
 sysdeps/unix/sysv/linux/aarch64/tst-gcs-override.c |  2 +
 sysdeps/unix/sysv/linux/aarch64/tst-gcs-skeleton.c | 58 +++++++++++++++++
 15 files changed, 186 insertions(+), 1 deletion(-)

commit fe5dd6603e0baeb744d874a174b210eca598fdb2
Author:     Yury Khrustalev <yury.khrustalev@arm.com>
AuthorDate: Tue Jan 28 16:13:51 2025 +0000
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Wed Mar 5 16:32:45 2025 +0100

    aarch64: Add configure checks for GCS support
    
     - Add check that linker supports -z gcs=...
     - Add checks that main and test compiler support
       -mbranch-protection=gcs
    
    Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
    (cherry picked from commit 6d1f97bb0667e35cbb4e656516b0b5f48afcabde)

 configure    | 99 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 configure.ac | 17 +++++++++++
 2 files changed, 116 insertions(+)

commit 25e97e446c3998d655ad8f1bbea2e33976834784
Author:     Yat Long Poon <yatlong.poon@arm.com>
AuthorDate: Thu Feb 13 18:03:04 2025 +0000
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Wed Mar 5 16:32:32 2025 +0100

    AArch64: Improve codegen for SVE powf
    
    Improve memory access with indexed/unpredicated instructions.
    Eliminate register spills.  Speedup on Neoverse V1: 3%.
    
    Reviewed-by: Wilco Dijkstra  <Wilco.Dijkstra@arm.com>
    (cherry picked from commit 95e807209b680257a9afe81a507754f1565dbb4d)
    (cherry picked from commit 7774a9d07ab2fa3704deb0ffa60588017cf990e7)

 sysdeps/aarch64/fpu/powf_sve.c | 117 +++++++++++++++++++++--------------------
 1 file changed, 59 insertions(+), 58 deletions(-)

commit 73c32fe519787a99b6060722155abee797db134c
Author:     Yat Long Poon <yatlong.poon@arm.com>
AuthorDate: Thu Feb 13 18:02:01 2025 +0000
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Wed Mar 5 16:32:17 2025 +0100

    AArch64: Improve codegen for SVE pow
    
    Move constants to struct.  Improve memory access with indexed/unpredicated
    instructions.  Eliminate register spills.  Speedup on Neoverse V1: 24%.
    
    Reviewed-by: Wilco Dijkstra  <Wilco.Dijkstra@arm.com>
    (cherry picked from commit 0b195651db3ae793187c7dd6d78b5a7a8da9d5e6)
    (cherry picked from commit 2025e27a817f99c64ddcd663b7861012893d7aab)

 sysdeps/aarch64/fpu/pow_sve.c | 245 ++++++++++++++++++++++++------------------
 1 file changed, 142 insertions(+), 103 deletions(-)

commit bbf48d89ba576c41dc6e6b7be197b5181c5e2a3b
Author:     Yat Long Poon <yatlong.poon@arm.com>
AuthorDate: Thu Feb 13 18:00:50 2025 +0000
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Wed Mar 5 16:32:01 2025 +0100

    AArch64: Improve codegen for SVE erfcf
    
    Reduce number of MOV/MOVPRFXs and use unpredicated FMUL.
    Replace MUL with LSL.  Speedup on Neoverse V1: 6%.
    
    Reviewed-by: Wilco Dijkstra  <Wilco.Dijkstra@arm.com>
    (cherry picked from commit f5ff34cb3c75ec1061c75bb9188b3c1176426947)
    (cherry picked from commit f3d9c116cb0a2efc3b7afafe2f966389526d5e70)

 sysdeps/aarch64/fpu/erfcf_sve.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit a360ec7f8b98a385c2615b110e95e74fdee1b400
Author:     Luna Lamb <luna.lamb@arm.com>
AuthorDate: Thu Feb 13 17:54:46 2025 +0000
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Wed Mar 5 16:31:44 2025 +0100

    Aarch64: Improve codegen in SVE exp and users, and update expf_inline
    
    Use unpredicted muls, and improve memory access.
    7%, 3% and 1% improvement in throughput microbenchmark on Neoverse V1,
    for exp, exp2 and cosh respectively.
    
    Reviewed-by: Wilco Dijkstra  <Wilco.Dijkstra@arm.com>
    (cherry picked from commit c0ff447edf19bd4630fe79adf5e8b896405b059f)
    (cherry picked from commit 94859e86807aff482f742ea650c32716f2780bdc)

 sysdeps/aarch64/fpu/cosh_sve.c       | 18 ++++++++++--------
 sysdeps/aarch64/fpu/exp10_sve.c      | 25 +++++++++++++++----------
 sysdeps/aarch64/fpu/exp2_sve.c       | 26 ++++++++++++++------------
 sysdeps/aarch64/fpu/exp_sve.c        | 36 +++++++++++++++++++-----------------
 sysdeps/aarch64/fpu/sv_expf_inline.h |  3 +--
 5 files changed, 59 insertions(+), 49 deletions(-)

commit c4698147cfc41c887d2f8872ce71b1d7dc2c48cd
Author:     Luna Lamb <luna.lamb@arm.com>
AuthorDate: Thu Feb 13 17:52:09 2025 +0000
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Wed Mar 5 16:31:29 2025 +0100

    Aarch64: Improve codegen in SVE asinh
    
    Use unpredicated muls, use lanewise mla's and improve memory access.
    1% regression in throughput microbenchmark on Neoverse V1.
    
    Reviewed-by: Wilco Dijkstra  <Wilco.Dijkstra@arm.com>
    (cherry picked from commit 8f0e7fe61e0a2ad5ed777933703ce09053810ec4)
    (cherry picked from commit 7c9a0868077c7e2cfed161ea47c40a96b269c773)

 sysdeps/aarch64/fpu/asinh_sve.c | 111 ++++++++++++++++++++++++++++------------
 1 file changed, 77 insertions(+), 34 deletions(-)

commit ded425166455867aaaba458e36ea266f59b05862
Author:     Yangyu Chen <cyy@cyyself.name>
AuthorDate: Tue Feb 25 01:12:19 2025 +0800
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Wed Mar 5 16:31:16 2025 +0100

    RISC-V: Fix IFUNC resolver cannot access gp pointer
    
    In some cases, an IFUNC resolver may need to access the gp pointer to
    access global variables. Such an object may have l_relocated == 0 at
    this time. In this case, an IFUNC resolver will fail to access a global
    variable and cause a SIGSEGV.
    
    This patch fixes this issue by relaxing the check of l_relocated in
    elf_machine_runtime_setup, but added a check for SHARED case to avoid
    using this code in static-linked executables. Such object have already
    set up the gp pointer in load_gp function and l->l_scope will be NULL if
    it is a pie object. So if we use these code to set up the gp pointer
    again for static-pie, it will causing a SIGSEGV in glibc as original bug
    on BZ #31317.
    
    I have also reproduced and checked BZ #31317 using the mold commit
    bed5b1731b ("illumos: Treat absolute symbols specially"), this patch can
    fix the issue.
    
    Also, we used the wrong gp pointer previously because ref->st_value is
    not the relocated address but just the offset from the base address of
    ELF. An edge case may happen if we reference gp pointer in a IFUNC
    resolver in a PIE object, but it will not happen in compiler-generated
    codes since -pie will disable relax to gp. In this case, the GP will be
    initialized incorrectly since the ref->st_value is not the address after
    relocation. This patch fixes this issue by adding the l->l_addr to
    ref->st_value to get the relocated address for the gp pointer. We don't
    use SYMBOL_ADDRESS macro here because __global_pointer$ is a special
    symbol that has SHN_ABS type, but it will use PC-relative addressing in
    the load_gp function using lla.
    
    Closes: BZ #32269
    Fixes: 96d1b9ac23 ("RISC-V: Fix the static-PIE non-relocated object check")
    
    Co-authored-by: Vivian Wang <dramforever@live.com>
    Signed-off-by: Yangyu Chen <cyy@cyyself.name>
    (cherry picked from commit 3fd2ff7685e3ee85c8cd2896f28ad62f67d7c483)
    (cherry picked from commit 30992cb5e9d713ab0f4135dd8776a201f7a53f24)

 NEWS                       |  1 +
 sysdeps/riscv/dl-machine.h | 17 +++++++++++------
 2 files changed, 12 insertions(+), 6 deletions(-)

commit 4ed5ce2f6b43fc3c5faee48b3b85abe302ef0df4
Author:     John David Anglin <danglin@gcc.gnu.org>
AuthorDate: Tue Feb 25 15:57:53 2025 -0500
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Wed Mar 5 16:30:58 2025 +0100

    math: Add optimization barrier to ensure a1 + u.d is not reused [BZ #30664]
    
    A number of fma tests started to fail on hppa when gcc was changed to
    use Ranger rather than EVRP.  Eventually I found that the value of
    a1 + u.d in this is block of code was being computed in FE_TOWARDZERO
    mode and not the original rounding mode:
    
        if (TININESS_AFTER_ROUNDING)
          {
            w.d = a1 + u.d;
            if (w.ieee.exponent == 109)
              return w.d * 0x1p-108;
          }
    
    This caused the exponent value to be wrong and the wrong return path
    to be used.
    
    Here we add an optimization barrier after the rounding mode is reset
    to ensure that the previous value of a1 + u.d is not reused.
    
    Signed-off-by: John David Anglin <dave.anglin@bell.net>
    (cherry picked from commit 07288c7445bba747f65380066b1b5bdb2df5b630)

 sysdeps/ieee754/dbl-64/s_fma.c | 3 +++
 1 file changed, 3 insertions(+)

commit 3e026aa703f59bbf75fe00176bf7d49197d8ecd2
Author:     koraynilay <koray.fra@gmail.com>
AuthorDate: Sat Feb 22 15:55:59 2025 +0100
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Wed Mar 5 16:30:37 2025 +0100

    math: Fix `unknown type name '__float128'` for clang 3.4 to 3.8.1 (bug 32694)
    
    When compiling a program that includes <bits/floatn.h> using a clang version
    between 3.4 (included) and 3.8.1 (included), clang will fail with `unknown type
    name '__float128'; did you mean '__cfloat128'?`. This changes fixes the clang
    prerequirements macro call in floatn.h to check for clang 3.9 instead of 3.4,
    since support for __float128 was actually enabled in 3.9 by:
    
    commit 50f29e06a1b6a38f0bba9360cbff72c82d46cdd4
    Author: Nemanja Ivanovic <nemanja.i.ibm@gmail.com>
    Date:   Wed Apr 13 09:49:45 2016 +0000
    
        Enable support for __float128 in Clang
    
    This fixes bug 32694.
    
    Signed-off-by: koraynilay <koray.fra@gmail.com>
    Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
    (cherry picked from commit 29803ed3ce420f01e7c567c97fc8945d5e5e5992)
    (cherry picked from commit 2cb04444b934e000a4e36c1876ef2bf03dd80d66)

 sysdeps/x86/bits/floatn.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit a9e18aa520afb1c4dd9f34e60937bd6efd367132
Author:     H.J. Lu <hjl.tools@gmail.com>
AuthorDate: Thu Feb 20 07:08:26 2025 +0800
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Wed Mar 5 16:30:20 2025 +0100

    x86 (__HAVE_FLOAT128): Defined to 0 for Intel SYCL compiler [BZ #32723]
    
    Intel compiler always defines __INTEL_LLVM_COMPILER.  When SYCL is
    enabled by -fsycl, it also defines SYCL_LANGUAGE_VERSION.  Since Intel
    SYCL compiler doesn't support _Float128:
    
    https://github.com/intel/llvm/issues/16903
    
    define __HAVE_FLOAT128 to 0 for Intel SYCL compiler.
    
    This fixes BZ #32723.
    
    Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
    Reviewed-by: Sam James <sam@gentoo.org>
    (cherry picked from commit 5a4573be6f96ff49111bb6cae767676b5aafa7a8)
    (cherry picked from commit a900dbaf70f0a957f56b52caa69173592ad7596e)

 sysdeps/x86/bits/floatn.h | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit b7e7ad6f2f571807027f57ec6d1e890a24c7822e
Author:     Aurelien Jarno <aurelien@aurel32.net>
AuthorDate: Sat Feb 15 11:08:33 2025 +0100
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Wed Mar 5 16:30:00 2025 +0100

    Fix tst-aarch64-pkey to handle ENOSPC as not supported
    
    The syscall pkey_alloc can return ENOSPC to indicate either that all
    keys are in use or that the system runs in a mode in which memory
    protection keys are disabled. In such case the test should not fail and
    just return unsupported.
    
    This matches the behaviour of the generic tst-pkey.
    
    Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
    Reviewed-by: Florian Weimer <fweimer@redhat.com>
    (cherry picked from commit 60f2d6be657aa8c663ee14bd266d343ae0f35afb)
    (cherry picked from commit 1e0e33e1b19a7634b364ac7b97c3c9612d5b776f)

 sysdeps/unix/sysv/linux/aarch64/tst-aarch64-pkey.c | 4 ++++
 1 file changed, 4 insertions(+)

commit af942a8ab41f82665ba74a8bea77689f18908e2f
Author:     Siddhesh Poyarekar <siddhesh@sourceware.org>
AuthorDate: Fri Jan 31 12:16:30 2025 -0500
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Wed Mar 5 16:29:44 2025 +0100

    assert: Add test for CVE-2025-0395
    
    Use the __progname symbol to override the program name to induce the
    failure that CVE-2025-0395 describes.
    
    This is related to BZ #32582
    
    Signed-off-by: Siddhesh Poyarekar <siddhesh@sourceware.org>
    Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
    (cherry picked from commit cdb9ba84191ce72e86346fb8b1d906e7cd930ea2)
    (cherry picked from commit 69fda28279b497bd405fdd442a6d8e4d3d5f681b)

 assert/Makefile                  |  1 +
 assert/tst-assert-sa-2025-0001.c | 92 ++++++++++++++++++++++++++++++++++++++++
 2 files changed, 93 insertions(+)

commit 91b9e3668f8dd5987d9c1dcadc5c4ffc72a8b97e
Author:     Adhemerval Zanella <adhemerval.zanella@linaro.org>
AuthorDate: Sun Feb 2 16:57:49 2025 -0300
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Fri Feb 7 19:03:36 2025 +0100

    math: Fix tanf for some inputs (BZ 32630)
    
    The logic was copied wrong from CORE-MATH.
    
    (cherry picked from commit 09e7f4d594b4308fbea18e3044148d67b59757c9)
    (cherry picked from commit cf88351b685da86667e17d344414a70696ac82f1)

 NEWS                            |  2 ++
 math/auto-libm-test-in          |  1 +
 math/auto-libm-test-out-tan     | 25 +++++++++++++++++++++++++
 sysdeps/ieee754/flt-32/s_tanf.c |  2 +-
 4 files changed, 29 insertions(+), 1 deletion(-)

commit 42338a894e66a3837217eb44279660596c54c59f
Author:     John David Anglin <danglin@gcc.gnu.org>
AuthorDate: Wed Jan 29 16:51:16 2025 -0500
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Fri Feb 7 19:03:19 2025 +0100

    nptl: Correct stack size attribute when stack grows up [BZ #32574]
    
    Set stack size attribute to the size of the mmap'd region only
    when the size of the remaining stack space is less than the size
    of the mmap'd region.
    
    This was reversed.  As a result, the initial stack size was only
    135168 bytes.  On architectures where the stack grows down, the
    initial stack size is approximately 8384512 bytes with the default
    rlimit settings.  The small main stack size on hppa broke
    applications like ruby that check for stack overflows.
    
    Signed-off-by: John David Anglin <dave.anglin@bell.net>
    (cherry picked from commit cb7f20653724029be89224ed3a35d627cc5b4163)

 nptl/pthread_getattr_np.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit accba8296bc8c5838b7780730a265cf17a9e90fc
Author:     Adhemerval Zanella <adhemerval.zanella@linaro.org>
AuthorDate: Fri Jan 31 10:34:32 2025 -0300
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Fri Feb 7 19:03:01 2025 +0100

    math: Fix sinhf for some inputs (BZ 32627)
    
    The logic was copied wrong from CORE-MATH.
    
    (cherry picked from commit d85a7719536f4892f2b53d4594e18f6d096c2882)

 math/auto-libm-test-in           |  1 +
 math/auto-libm-test-out-sinh     | 25 +++++++++++++++++++++++++
 sysdeps/ieee754/flt-32/e_sinhf.c |  2 +-
 3 files changed, 27 insertions(+), 1 deletion(-)

commit 76ef108ef178ad9f5d707f8579456c1bfb728c1c
Author:     Adhemerval Zanella <adhemerval.zanella@linaro.org>
AuthorDate: Fri Jan 31 10:27:39 2025 -0300
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Fri Feb 7 19:02:45 2025 +0100

    math: Fix log10p1f internal table value (BZ 32626)
    
    It was copied wrong from CORE-MATH.
    
    (cherry picked from commit c79277a16785c8ae96d821414f4d31d654a0177c)
    (cherry picked from commit bdccbfbc52d3f6957768a0b9d5bd7bc4c90f2744)

 NEWS                                |  3 ++-
 math/auto-libm-test-in              |  2 ++
 math/auto-libm-test-out-log10p1     | 25 +++++++++++++++++++++++++
 sysdeps/ieee754/flt-32/s_log10p1f.c |  2 +-
 4 files changed, 30 insertions(+), 2 deletions(-)

commit 0f06698e80cfbb7058ffd8bc91e6e165974ea56f (tag: gentoo/glibc-2.41-1)
Author:     Adhemerval Zanella <adhemerval.zanella@linaro.org>
AuthorDate: Mon Apr 13 18:09:20 2020 -0300
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Tue Jan 28 21:14:04 2025 +0100

    linux: Set internal DIR filepos as off64_t (BZ #23960, BZ #24050)
    
    It allows to obtain the expected entry offset on telldir and set
    it correctly on seekdir on platforms where long int is smaller
    than off64_t.
    
    On such cases opendir creates a map entry between the DIR d_off
    offset and the returned long int (the telldir return value).
    seekdir will then set the correct offset from the internal list
    using the telldir as the list key.
    
    It also removes the overflow check on readdir and the returned value
    will be truncated by the non-LFS off_t size.  As Joseph has noted
    in BZ #23960 comment #22, d_off is an opaque value and since
    telldir/seekdir works regardless of the returned dirent d_off value.
    
    Finally it removes the requirement to check for overflow values on
    telldir (BZ #24050).
    
    Checked on x86_64-linux-gnu, i686-linux-gnu, powerpc-linux-gnu,
    and arm-linux-gnueabihf.
    
    Rebased for glibc-2.41 by Andreas K. Hüttel <dilfridge@gentoo.org>

 include/dirent.h                            |   2 +-
 sysdeps/unix/sysv/linux/Makefile            |   2 +
 sysdeps/unix/sysv/linux/alpha/bits/dirent.h |   3 +
 sysdeps/unix/sysv/linux/bits/dirent.h       |   4 +
 sysdeps/unix/sysv/linux/closedir.c          |   4 +
 sysdeps/unix/sysv/linux/dirstream.h         |   9 +-
 sysdeps/unix/sysv/linux/opendir.c           |   3 +
 sysdeps/unix/sysv/linux/readdir.c           |  21 ++--
 sysdeps/unix/sysv/linux/readdir64.c         |  11 +++
 sysdeps/unix/sysv/linux/rewinddir.c         |   5 +
 sysdeps/unix/sysv/linux/seekdir.c           |  30 +++++-
 sysdeps/unix/sysv/linux/telldir.c           |  36 +++++++
 sysdeps/unix/sysv/linux/telldir.h           |  70 ++++++++++++++
 sysdeps/unix/sysv/linux/tst-opendir-lfs.c   |   2 +
 sysdeps/unix/sysv/linux/tst-opendir.c       | 145 ++++++++++++++++++++++++++++
 15 files changed, 329 insertions(+), 18 deletions(-)

commit d0789668ddcf204fbec7493c367e2e4a090b401a
Author:     Adhemerval Zanella <adhemerval.zanella@linaro.org>
AuthorDate: Wed Mar 1 14:41:23 2023 -0300
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Tue Jan 28 21:14:01 2025 +0100

    support: Add xreallocarray
    
    As a wrapper over reallocarray.

 support/Makefile        |  1 +
 support/support.h       |  2 ++
 support/xreallocarray.c | 29 +++++++++++++++++++++++++++++
 3 files changed, 32 insertions(+)

commit a94ae41cae4d4fe7376f5c266d21e9a7ad47218c
Author:     Adhemerval Zanella <adhemerval.zanella@linaro.org>
AuthorDate: Tue Oct 20 13:37:15 2020 -0300
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Tue Jan 28 21:13:58 2025 +0100

    linux: Use getdents64 on non-LFS readdir
    
    It is similar to what non-LFS getdents do (including overflow check).
    
    Checked on x86_64-linux-gnu and i686-linux-gnu.

 sysdeps/unix/sysv/linux/readdir.c | 97 +++++++++++++++++++++++++++++----------
 1 file changed, 73 insertions(+), 24 deletions(-)

commit 3b6cdca22636f806e1eb1b6d100928f19067d32b
Author:     Andreas K. Hüttel <dilfridge@gentoo.org>
AuthorDate: Fri Dec 14 20:43:04 2018 +0100
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Tue Jan 28 21:13:55 2025 +0100

    Force -O0 in conform tests to survive $CC changes
    
    In bug #659030 Gentoo started passing user's CFLAGS via $CC variable.
    conform tests should but are not ready to handle -O1/-O2 yet.
    Tests fail to validate headers due to inlining of weak symbol aliases
    and other problems. Let's force it back to -O0 until it's fixed upstream.
    
    Original patch by Sergei, ported to the new python test framework by Andreas
    
    Bug: https://bugs.gentoo.org/659030
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
    Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>

 conform/conformtest.py   | 6 ++++--
 conform/linknamespace.py | 4 +++-
 2 files changed, 7 insertions(+), 3 deletions(-)

commit d8878820bb92ac641ce4124477f678fd67a5fd1a
Author:     Andreas K. Hüttel <dilfridge@gentoo.org>
AuthorDate: Mon Oct 22 22:34:13 2018 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Tue Jan 28 21:13:52 2025 +0100

    Adapt to Gentoo-specific /etc/mail/aliases
    
    Patch by pacho2
    
    Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>
    (cherry picked from commit 4e616cda056f471b799beba2b1cedc787ad4ecc0)
    Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>

 nss/nss_files/files-alias.c    |  2 +-
 nss/tst-nss-files-alias-leak.c | 18 +++++++++---------
 support/support_chroot.c       |  8 +++++++-
 3 files changed, 17 insertions(+), 11 deletions(-)

commit 8207330fe7776e5dcd79d1686207741aa4f72e70
Author:     Mike Frysinger <vapier@gentoo.org>
AuthorDate: Tue Aug 3 00:34:59 2021 +0200
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Tue Jan 28 21:13:49 2025 +0100

    Disable ldconfig during install
    
    Do not bother running ldconfig on DESTDIR.  It's a waste of time as we
    won't use the result (portage will rebuild the cache after install).
    Also, the Gentoo sandbox does not currently catch chroot() behavior so
    we end up (incorrectly) flagging it as a violation as a write to /etc.
    
    http://sourceware.org/ml/libc-alpha/2012-08/msg00118.html
    https://bugs.gentoo.org/431038
    Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>

 Makefile | 1 +
 1 file changed, 1 insertion(+)

commit 0a7c7a3e283a55d1bfaa48fdef063a32a4689a2b
Author:     Andreas K. Hüttel <dilfridge@gentoo.org>
AuthorDate: Tue Jan 28 21:11:22 2025 +0100
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Tue Jan 28 21:11:22 2025 +0100

    NEWS: start new section
    
    Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>

 NEWS | 6 ++++++
 1 file changed, 6 insertions(+)

commit 9f48a8abb2b2762bf2fc8449bc5871a5b986f508
Author:     Andreas K. Hüttel <dilfridge@gentoo.org>
AuthorDate: Tue Jan 28 18:45:20 2025 +0100
Commit:     Andreas K. Hüttel <dilfridge@gentoo.org>
CommitDate: Tue Jan 28 18:45:20 2025 +0100

    Remove advisories from release branch
    
    Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>

 ADVISORIES                    |  2 ++
 advisories/GLIBC-SA-2023-0001 | 14 --------
 advisories/GLIBC-SA-2023-0002 | 15 ---------
 advisories/GLIBC-SA-2023-0003 | 15 ---------
 advisories/GLIBC-SA-2023-0004 | 16 ---------
 advisories/GLIBC-SA-2023-0005 | 18 ----------
 advisories/GLIBC-SA-2024-0001 | 15 ---------
 advisories/GLIBC-SA-2024-0002 | 15 ---------
 advisories/GLIBC-SA-2024-0003 | 13 --------
 advisories/GLIBC-SA-2024-0004 | 28 ----------------
 advisories/GLIBC-SA-2024-0005 | 22 -------------
 advisories/GLIBC-SA-2024-0006 | 32 ------------------
 advisories/GLIBC-SA-2024-0007 | 28 ----------------
 advisories/GLIBC-SA-2024-0008 | 26 ---------------
 advisories/GLIBC-SA-2025-0001 | 25 --------------
 advisories/README             | 77 -------------------------------------------
 16 files changed, 2 insertions(+), 359 deletions(-)
