From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1039) id 66D9D385843B; Wed, 10 Apr 2024 10:59:07 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 66D9D385843B DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1712746747; bh=Un/HVTlDtJT77phfB788/iV/f5ZdLk5wf6fNcfOam08=; h=From:To:Subject:Date:From; b=OQPjr1GacbX8PCSdeElb3X0gHs05YiBXSHfx5Hf3OKFPlRLxfB24YaaqJPZPhk7+R Ffz0o1YVx+uV8iV0Ze+HKLq+WIIjdyDMtPzVf19eUkBxwuuob3U66zkRgv9HxvLxOF 3Lc31QcEY9/KkAQHicXJdO4WefHtv60jZkkpa3KM= Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable From: H.J. Lu To: binutils-cvs@sourceware.org Subject: [binutils-gdb] mmap: Avoid the sanitizer configure check failure X-Act-Checkin: binutils-gdb X-Git-Author: H.J. Lu X-Git-Refname: refs/heads/master X-Git-Oldrev: 219822fd5db6305592b45677a3b38c02b523360e X-Git-Newrev: 303da223b1b7401623eaec418b22b7b80d5b16af Message-Id: <20240410105907.66D9D385843B@sourceware.org> Date: Wed, 10 Apr 2024 10:59:07 +0000 (GMT) List-Id: https://sourceware.org/git/gitweb.cgi?p=3Dbinutils-gdb.git;h=3D303da223b1b7= 401623eaec418b22b7b80d5b16af commit 303da223b1b7401623eaec418b22b7b80d5b16af Author: H.J. Lu Date: Tue Apr 9 06:43:36 2024 -0700 mmap: Avoid the sanitizer configure check failure =20 When -fsanitize=3Daddress,undefined is used to build, the mmap configure check failed with =20 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =3D=3D231796=3D=3DERROR: LeakSanitizer: detected memory leaks =20 Direct leak of 4096 byte(s) in 1 object(s) allocated from: #0 0x7cdd3d0defdf in __interceptor_malloc ../../../../src/libsaniti= zer/asan/asan_malloc_linux.cpp:69 #1 0x5750c7f6d72b in main /home/alan/build/gas-san/all/bfd/conftest= .c:239 =20 Direct leak of 4096 byte(s) in 1 object(s) allocated from: #0 0x7cdd3d0defdf in __interceptor_malloc ../../../../src/libsaniti= zer/asan/asan_malloc_linux.cpp:69 #1 0x5750c7f6d2e1 in main /home/alan/build/gas-san/all/bfd/conftest= .c:190 =20 SUMMARY: AddressSanitizer: 8192 byte(s) leaked in 2 allocation(s). =20 Replace AC_FUNC_MMAP with GCC_AC_FUNC_MMAP to avoid the sanitizer configure check failure. =20 bfd/ =20 * configure.ac: Replace AC_FUNC_MMAP with GCC_AC_FUNC_MMAP. * Makefile.in: Regenerated. * aclocal.m4: Likewise. * configure: Likewise. =20 binutils/ =20 * configure.ac: Replace AC_FUNC_MMAP with GCC_AC_FUNC_MMAP. * Makefile.in: Regenerated. * aclocal.m4: Likewise. * configure: Likewise. =20 ld/ =20 * configure.ac: Replace AC_FUNC_MMAP with GCC_AC_FUNC_MMAP. * Makefile.in: Regenerated. * aclocal.m4: Likewise. * configure: Likewise. =20 libctf/ =20 * configure.ac: Replace AC_FUNC_MMAP with GCC_AC_FUNC_MMAP. * Makefile.in: Regenerated. * aclocal.m4: Likewise. * configure: Likewise. =20 libsframe/ =20 * configure.ac: Replace AC_FUNC_MMAP with GCC_AC_FUNC_MMAP. * Makefile.in: Regenerated. * aclocal.m4: Likewise. * configure: Likewise. Diff: --- bfd/Makefile.in | 2 +- bfd/aclocal.m4 | 1 + bfd/configure | 5 +++++ bfd/configure.ac | 2 +- binutils/Makefile.in | 2 +- binutils/aclocal.m4 | 1 + binutils/configure | 5 +++++ binutils/configure.ac | 2 +- ld/Makefile.in | 2 +- ld/aclocal.m4 | 1 + ld/configure | 5 +++++ ld/configure.ac | 2 +- libctf/Makefile.in | 2 +- libctf/aclocal.m4 | 1 + libctf/configure | 5 +++++ libctf/configure.ac | 2 +- libsframe/Makefile.in | 1 + libsframe/aclocal.m4 | 1 + libsframe/configure | 5 +++++ libsframe/configure.ac | 2 +- 20 files changed, 40 insertions(+), 9 deletions(-) diff --git a/bfd/Makefile.in b/bfd/Makefile.in index faaa0c424b8..3092bff2935 100644 --- a/bfd/Makefile.in +++ b/bfd/Makefile.in @@ -125,7 +125,7 @@ am__aclocal_m4_deps =3D $(top_srcdir)/../config/acx.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/pkg.m4 \ $(top_srcdir)/../config/plugins.m4 \ diff --git a/bfd/aclocal.m4 b/bfd/aclocal.m4 index 4b3fd56cfc9..8364b5dba69 100644 --- a/bfd/aclocal.m4 +++ b/bfd/aclocal.m4 @@ -1180,6 +1180,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/pkg.m4]) diff --git a/bfd/configure b/bfd/configure index 210550ae042..89fe4388171 100755 --- a/bfd/configure +++ b/bfd/configure @@ -17332,6 +17332,9 @@ done =20 =20 =20 +save_ASAN_OPTIONS=3D"$ASAN_OPTIONS" + ASAN_OPTIONS=3Ddetect_leaks=3D0 + export ASAN_OPTIONS =20 for ac_func in getpagesize do : @@ -17510,6 +17513,8 @@ $as_echo "#define HAVE_MMAP 1" >>confdefs.h fi rm -f conftest.mmap conftest.txt =20 + ASAN_OPTIONS=3D"$save_ASAN_OPTIONS" + for ac_func in madvise mprotect do : as_ac_var=3D`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` diff --git a/bfd/configure.ac b/bfd/configure.ac index 02d8ba96318..29ede92b993 100644 --- a/bfd/configure.ac +++ b/bfd/configure.ac @@ -1029,7 +1029,7 @@ AC_MSG_RESULT($bfd_file_ptr) AC_SUBST(bfd_file_ptr) AC_SUBST(bfd_ufile_ptr) =20 -AC_FUNC_MMAP +GCC_AC_FUNC_MMAP AC_CHECK_FUNCS(madvise mprotect) case ${want_mmap}+${ac_cv_func_mmap_fixed_mapped} in true+yes ) AC_DEFINE(USE_MMAP, 1, [Use mmap if it's available?]) ;; diff --git a/binutils/Makefile.in b/binutils/Makefile.in index 842a6d99b54..67fa5b3b8d9 100644 --- a/binutils/Makefile.in +++ b/binutils/Makefile.in @@ -152,7 +152,7 @@ am__aclocal_m4_deps =3D $(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/pkg.m4 \ $(top_srcdir)/../config/plugins.m4 \ diff --git a/binutils/aclocal.m4 b/binutils/aclocal.m4 index 1238894b07b..eb1433a68bd 100644 --- a/binutils/aclocal.m4 +++ b/binutils/aclocal.m4 @@ -1200,6 +1200,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/pkg.m4]) diff --git a/binutils/configure b/binutils/configure index 2b9f52720c3..5d87b6b3e66 100755 --- a/binutils/configure +++ b/binutils/configure @@ -15231,6 +15231,9 @@ done =20 =20 =20 +save_ASAN_OPTIONS=3D"$ASAN_OPTIONS" + ASAN_OPTIONS=3Ddetect_leaks=3D0 + export ASAN_OPTIONS =20 for ac_func in getpagesize do : @@ -15409,6 +15412,8 @@ $as_echo "#define HAVE_MMAP 1" >>confdefs.h fi rm -f conftest.mmap conftest.txt =20 + ASAN_OPTIONS=3D"$save_ASAN_OPTIONS" + for ac_func in fseeko fseeko64 getc_unlocked mkdtemp mkstemp utimensat uti= mes do : as_ac_var=3D`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` diff --git a/binutils/configure.ac b/binutils/configure.ac index dac72c1bdd4..ac3e418392f 100644 --- a/binutils/configure.ac +++ b/binutils/configure.ac @@ -199,7 +199,7 @@ AC_SUBST(DEMANGLER_NAME) AC_CHECK_HEADERS(fcntl.h inttypes.h stdint.h sys/file.h \ sys/stat.h sys/time.h sys/types.h unistd.h) AC_HEADER_SYS_WAIT -AC_FUNC_MMAP +GCC_AC_FUNC_MMAP AC_CHECK_FUNCS(fseeko fseeko64 getc_unlocked mkdtemp mkstemp utimensat uti= mes) =20 AC_MSG_CHECKING([for mbstate_t]) diff --git a/ld/Makefile.in b/ld/Makefile.in index abb0565718f..8350f00a521 100644 --- a/ld/Makefile.in +++ b/ld/Makefile.in @@ -126,7 +126,7 @@ am__aclocal_m4_deps =3D $(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/pkg.m4 \ $(top_srcdir)/../config/plugins.m4 \ diff --git a/ld/aclocal.m4 b/ld/aclocal.m4 index d9feb988d64..01c2dc2694d 100644 --- a/ld/aclocal.m4 +++ b/ld/aclocal.m4 @@ -1202,6 +1202,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/pkg.m4]) diff --git a/ld/configure b/ld/configure index 96ef1f8bb65..ba0024699d4 100755 --- a/ld/configure +++ b/ld/configure @@ -18802,6 +18802,9 @@ done =20 =20 =20 +save_ASAN_OPTIONS=3D"$ASAN_OPTIONS" + ASAN_OPTIONS=3Ddetect_leaks=3D0 + export ASAN_OPTIONS =20 for ac_func in getpagesize do : @@ -18980,6 +18983,8 @@ $as_echo "#define HAVE_MMAP 1" >>confdefs.h fi rm -f conftest.mmap conftest.txt =20 + ASAN_OPTIONS=3D"$save_ASAN_OPTIONS" + =20 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing d= lopen" >&5 $as_echo_n "checking for library containing dlopen... " >&6; } diff --git a/ld/configure.ac b/ld/configure.ac index 4a11787ae71..0d4aa4c2373 100644 --- a/ld/configure.ac +++ b/ld/configure.ac @@ -401,7 +401,7 @@ BFD_BINARY_FOPEN =20 AC_CHECK_DECLS([asprintf, environ, stpcpy]) =20 -AC_FUNC_MMAP +GCC_AC_FUNC_MMAP =20 AC_SEARCH_LIBS([dlopen], [dl]) =20 diff --git a/libctf/Makefile.in b/libctf/Makefile.in index 1cdf105a323..54f5daa79ee 100644 --- a/libctf/Makefile.in +++ b/libctf/Makefile.in @@ -145,7 +145,7 @@ am__aclocal_m4_deps =3D $(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 e64180daf89..fc2b7d7ddcc 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 3701bd8e796..778c141571e 100755 --- a/libctf/configure +++ b/libctf/configure @@ -15989,6 +15989,9 @@ done =20 =20 =20 +save_ASAN_OPTIONS=3D"$ASAN_OPTIONS" + ASAN_OPTIONS=3Ddetect_leaks=3D0 + export ASAN_OPTIONS =20 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 =20 + ASAN_OPTIONS=3D"$save_ASAN_OPTIONS" + # Needed for BFD capability checks. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing d= lsym" >&5 $as_echo_n "checking for library containing dlsym... " >&6; } diff --git a/libctf/configure.ac b/libctf/configure.ac index e4e430615bd..f327d48f249 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]) =20 -AC_FUNC_MMAP +GCC_AC_FUNC_MMAP # Needed for BFD capability checks. AC_SEARCH_LIBS(dlsym, dl) AM_ZLIB diff --git a/libsframe/Makefile.in b/libsframe/Makefile.in index 9e3d268902b..111d6a30c98 100644 --- a/libsframe/Makefile.in +++ b/libsframe/Makefile.in @@ -126,6 +126,7 @@ am__aclocal_m4_deps =3D $(top_srcdir)/../bfd/acinclude.= m4 \ $(top_srcdir)/../config/depstand.m4 \ $(top_srcdir)/../config/jobserver.m4 \ $(top_srcdir)/../config/lead-dot.m4 \ + $(top_srcdir)/../config/mmap.m4 \ $(top_srcdir)/../config/override.m4 \ $(top_srcdir)/../config/warnings.m4 \ $(top_srcdir)/../libtool.m4 $(top_srcdir)/../ltoptions.m4 \ diff --git a/libsframe/aclocal.m4 b/libsframe/aclocal.m4 index b0cdd6b184d..8804d9fb42b 100644 --- a/libsframe/aclocal.m4 +++ b/libsframe/aclocal.m4 @@ -1233,6 +1233,7 @@ m4_include([../config/dejagnu.m4]) m4_include([../config/depstand.m4]) m4_include([../config/jobserver.m4]) m4_include([../config/lead-dot.m4]) +m4_include([../config/mmap.m4]) m4_include([../config/override.m4]) m4_include([../config/warnings.m4]) m4_include([../libtool.m4]) diff --git a/libsframe/configure b/libsframe/configure index 1d9e5e10695..8a9018c493e 100755 --- a/libsframe/configure +++ b/libsframe/configure @@ -12520,6 +12520,9 @@ done =20 =20 =20 +save_ASAN_OPTIONS=3D"$ASAN_OPTIONS" + ASAN_OPTIONS=3Ddetect_leaks=3D0 + export ASAN_OPTIONS =20 for ac_func in getpagesize do : @@ -12698,6 +12701,8 @@ $as_echo "#define HAVE_MMAP 1" >>confdefs.h fi rm -f conftest.mmap conftest.txt =20 + ASAN_OPTIONS=3D"$save_ASAN_OPTIONS" + for ac_header in byteswap.h endian.h do : as_ac_Header=3D`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` diff --git a/libsframe/configure.ac b/libsframe/configure.ac index 733517a978f..d63f27070eb 100644 --- a/libsframe/configure.ac +++ b/libsframe/configure.ac @@ -112,7 +112,7 @@ AM_CONDITIONAL(HAVE_LD_VERSION_SCRIPT, test "$have_ld_v= ersion_script" =3D "yes") AM_MAINTAINER_MODE AM_INSTALL_LIBBFD =20 -AC_FUNC_MMAP +GCC_AC_FUNC_MMAP AC_CHECK_HEADERS(byteswap.h endian.h) =20 dnl Check for bswap_{16,32,64}