From 303da223b1b7401623eaec418b22b7b80d5b16af Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Tue, 9 Apr 2024 06:43:36 -0700 Subject: mmap: Avoid the sanitizer configure check failure When -fsanitize=address,undefined is used to build, the mmap configure check failed with ================================================================= ==231796==ERROR: LeakSanitizer: detected memory leaks Direct leak of 4096 byte(s) in 1 object(s) allocated from: #0 0x7cdd3d0defdf in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:69 #1 0x5750c7f6d72b in main /home/alan/build/gas-san/all/bfd/conftest.c:239 Direct leak of 4096 byte(s) in 1 object(s) allocated from: #0 0x7cdd3d0defdf in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:69 #1 0x5750c7f6d2e1 in main /home/alan/build/gas-san/all/bfd/conftest.c:190 SUMMARY: AddressSanitizer: 8192 byte(s) leaked in 2 allocation(s). Replace AC_FUNC_MMAP with GCC_AC_FUNC_MMAP to avoid the sanitizer configure check failure. bfd/ * configure.ac: Replace AC_FUNC_MMAP with GCC_AC_FUNC_MMAP. * Makefile.in: Regenerated. * aclocal.m4: Likewise. * configure: Likewise. binutils/ * configure.ac: Replace AC_FUNC_MMAP with GCC_AC_FUNC_MMAP. * Makefile.in: Regenerated. * aclocal.m4: Likewise. * configure: Likewise. ld/ * configure.ac: Replace AC_FUNC_MMAP with GCC_AC_FUNC_MMAP. * Makefile.in: Regenerated. * aclocal.m4: Likewise. * configure: Likewise. libctf/ * configure.ac: Replace AC_FUNC_MMAP with GCC_AC_FUNC_MMAP. * Makefile.in: Regenerated. * aclocal.m4: Likewise. * configure: Likewise. libsframe/ * configure.ac: Replace AC_FUNC_MMAP with GCC_AC_FUNC_MMAP. * Makefile.in: Regenerated. * aclocal.m4: Likewise. * configure: Likewise. --- libctf/Makefile.in | 2 +- libctf/aclocal.m4 | 1 + libctf/configure | 5 +++++ libctf/configure.ac | 2 +- 4 files changed, 8 insertions(+), 2 deletions(-) (limited to 'libctf') diff --git a/libctf/Makefile.in b/libctf/Makefile.in index 1cdf105..54f5daa 100644 --- a/libctf/Makefile.in +++ b/libctf/Makefile.in @@ -145,7 +145,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../bfd/acinclude.m4 \ $(top_srcdir)/../config/lib-ld.m4 \ $(top_srcdir)/../config/lib-link.m4 \ $(top_srcdir)/../config/lib-prefix.m4 \ - $(top_srcdir)/../config/nls.m4 \ + $(top_srcdir)/../config/mmap.m4 $(top_srcdir)/../config/nls.m4 \ $(top_srcdir)/../config/override.m4 \ $(top_srcdir)/../config/po.m4 \ $(top_srcdir)/../config/progtest.m4 \ diff --git a/libctf/aclocal.m4 b/libctf/aclocal.m4 index e64180d..fc2b7d7 100644 --- a/libctf/aclocal.m4 +++ b/libctf/aclocal.m4 @@ -1240,6 +1240,7 @@ m4_include([../config/lead-dot.m4]) m4_include([../config/lib-ld.m4]) m4_include([../config/lib-link.m4]) m4_include([../config/lib-prefix.m4]) +m4_include([../config/mmap.m4]) m4_include([../config/nls.m4]) m4_include([../config/override.m4]) m4_include([../config/po.m4]) diff --git a/libctf/configure b/libctf/configure index 3701bd8..778c141 100755 --- a/libctf/configure +++ b/libctf/configure @@ -15989,6 +15989,9 @@ done +save_ASAN_OPTIONS="$ASAN_OPTIONS" + ASAN_OPTIONS=detect_leaks=0 + export ASAN_OPTIONS for ac_func in getpagesize do : @@ -16167,6 +16170,8 @@ $as_echo "#define HAVE_MMAP 1" >>confdefs.h fi rm -f conftest.mmap conftest.txt + ASAN_OPTIONS="$save_ASAN_OPTIONS" + # Needed for BFD capability checks. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing dlsym" >&5 $as_echo_n "checking for library containing dlsym... " >&6; } diff --git a/libctf/configure.ac b/libctf/configure.ac index e4e4306..f327d48 100644 --- a/libctf/configure.ac +++ b/libctf/configure.ac @@ -65,7 +65,7 @@ AM_MAINTAINER_MODE AM_INSTALL_LIBBFD ACX_PROG_CC_WARNING_OPTS([-Wall], [ac_libctf_warn_cflags]) -AC_FUNC_MMAP +GCC_AC_FUNC_MMAP # Needed for BFD capability checks. AC_SEARCH_LIBS(dlsym, dl) AM_ZLIB -- cgit v1.1