Message ID | 20211217224510.7938-1-hjl.tools@gmail.com |
---|---|
State | New |
Headers | show |
Series | [GCC-11] libsanitizer: Cherry-pick LLVM release/13.x commit d96358a28193 | expand |
On Fri, Dec 17, 2021 at 11:45 PM H.J. Lu via Gcc-patches <gcc-patches@gcc.gnu.org> wrote: > > OK for release branches? OK - I assume the size is not leaked as ABI detail? > > H.J. > --- > Cherry-pick from LLVM release/13.x branch: > > commit d96358a2819399a2abb60ad3b26444ab7b4409cf > Author: Michał Górny <mgorny@moritz.systems> > Date: Mon Dec 13 22:28:26 2021 +0100 > > [compiler-rt] Increase kDlsymAllocPoolSize to fix test failures > > Increase kDlsymAllocPoolSize on the release branch as discussed on bug > 51620, as an alternative to backporting > cb0e14ce6dcdd614a7207f4ce6fcf81a164471ab and its dependencies. > The minimum size is 8192, as needed for the following test to pass: > > AddressSanitizer-i386-linux :: TestCases/Linux/long-object-path.cpp > > Fixes #51620 > > PR sanitizer/102911 > * asan/asan_malloc_linux.cpp (kDlsymAllocPoolSize): Set it to > 8192 on Linux. > --- > libsanitizer/asan/asan_malloc_linux.cpp | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/libsanitizer/asan/asan_malloc_linux.cpp b/libsanitizer/asan/asan_malloc_linux.cpp > index 9c3f0a5338e..7a5776b29ed 100644 > --- a/libsanitizer/asan/asan_malloc_linux.cpp > +++ b/libsanitizer/asan/asan_malloc_linux.cpp > @@ -31,7 +31,7 @@ using namespace __asan; > > static uptr allocated_for_dlsym; > static uptr last_dlsym_alloc_size_in_words; > -static const uptr kDlsymAllocPoolSize = SANITIZER_RTEMS ? 4096 : 1024; > +static const uptr kDlsymAllocPoolSize = SANITIZER_RTEMS ? 4096 : 8192; > static uptr alloc_memory_for_dlsym[kDlsymAllocPoolSize]; > > static inline bool IsInDlsymAllocPool(const void *ptr) { > -- > 2.33.1 >
On Mon, Jan 3, 2022 at 6:06 AM Richard Biener <richard.guenther@gmail.com> wrote: > > On Fri, Dec 17, 2021 at 11:45 PM H.J. Lu via Gcc-patches > <gcc-patches@gcc.gnu.org> wrote: > > > > OK for release branches? > > OK - I assume the size is not leaked as ABI detail? No, it is not. I am checking it into GCC 11 and will backport it to GCC 10/9 branches later. > > > > H.J. > > --- > > Cherry-pick from LLVM release/13.x branch: > > > > commit d96358a2819399a2abb60ad3b26444ab7b4409cf > > Author: Michał Górny <mgorny@moritz.systems> > > Date: Mon Dec 13 22:28:26 2021 +0100 > > > > [compiler-rt] Increase kDlsymAllocPoolSize to fix test failures > > > > Increase kDlsymAllocPoolSize on the release branch as discussed on bug > > 51620, as an alternative to backporting > > cb0e14ce6dcdd614a7207f4ce6fcf81a164471ab and its dependencies. > > The minimum size is 8192, as needed for the following test to pass: > > > > AddressSanitizer-i386-linux :: TestCases/Linux/long-object-path.cpp > > > > Fixes #51620 > > > > PR sanitizer/102911 > > * asan/asan_malloc_linux.cpp (kDlsymAllocPoolSize): Set it to > > 8192 on Linux. > > --- > > libsanitizer/asan/asan_malloc_linux.cpp | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/libsanitizer/asan/asan_malloc_linux.cpp b/libsanitizer/asan/asan_malloc_linux.cpp > > index 9c3f0a5338e..7a5776b29ed 100644 > > --- a/libsanitizer/asan/asan_malloc_linux.cpp > > +++ b/libsanitizer/asan/asan_malloc_linux.cpp > > @@ -31,7 +31,7 @@ using namespace __asan; > > > > static uptr allocated_for_dlsym; > > static uptr last_dlsym_alloc_size_in_words; > > -static const uptr kDlsymAllocPoolSize = SANITIZER_RTEMS ? 4096 : 1024; > > +static const uptr kDlsymAllocPoolSize = SANITIZER_RTEMS ? 4096 : 8192; > > static uptr alloc_memory_for_dlsym[kDlsymAllocPoolSize]; > > > > static inline bool IsInDlsymAllocPool(const void *ptr) { > > -- > > 2.33.1 > > Thanks.
diff --git a/libsanitizer/asan/asan_malloc_linux.cpp b/libsanitizer/asan/asan_malloc_linux.cpp index 9c3f0a5338e..7a5776b29ed 100644 --- a/libsanitizer/asan/asan_malloc_linux.cpp +++ b/libsanitizer/asan/asan_malloc_linux.cpp @@ -31,7 +31,7 @@ using namespace __asan; static uptr allocated_for_dlsym; static uptr last_dlsym_alloc_size_in_words; -static const uptr kDlsymAllocPoolSize = SANITIZER_RTEMS ? 4096 : 1024; +static const uptr kDlsymAllocPoolSize = SANITIZER_RTEMS ? 4096 : 8192; static uptr alloc_memory_for_dlsym[kDlsymAllocPoolSize]; static inline bool IsInDlsymAllocPool(const void *ptr) {