https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100114

--- Comment #9 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-9 branch has been updated by Jakub Jelinek
<ja...@gcc.gnu.org>:

https://gcc.gnu.org/g:3d0135bf3be416bbe2531dc763d19b749eb2b856

commit r9-9450-g3d0135bf3be416bbe2531dc763d19b749eb2b856
Author: Jakub Jelinek <ja...@redhat.com>
Date:   Sat Apr 17 11:27:14 2021 +0200

    sanitizer: Fix asan against glibc 2.34 [PR100114]

    As mentioned in the PR, SIGSTKSZ is no longer a compile time constant in
    glibc 2.34 and later, so
    static const uptr kAltStackSize = SIGSTKSZ * 4;
    needs dynamic initialization, but is used by a function called indirectly
    from .preinit_array and therefore before the variable is constructed.
    This results in using 0 size instead and all asan instrumented programs
    die with:
    ==91==ERROR: AddressSanitizer failed to allocate 0x0 (0) bytes of
SetAlternateSignalStack (error code: 22)

    Here is a cherry-pick from upstream to fix this.

    2021-04-17  Jakub Jelinek  <ja...@redhat.com>

            PR sanitizer/100114
            * sanitizer_common/sanitizer_posix_libcdep.cc: Cherry-pick
            llvm-project revisions 82150606fb11d28813ae6da1101f5bda638165fe
            and b93629dd335ffee2fc4b9b619bf86c3f9e6b0023.

    (cherry picked from commit 950bac27d63c1c2ac3a6ed867692d6a13f21feb3)

Reply via email to