diff mbox series

[libsanitizer] Fix sanitizer_common/sanitizer_posix_libcdep.cc compilation on Solaris 11.5

Message ID yddmui4pqm2.fsf@CeBiTec.Uni-Bielefeld.DE
State New
Headers show
Series [libsanitizer] Fix sanitizer_common/sanitizer_posix_libcdep.cc compilation on Solaris 11.5 | expand

Commit Message

Rainer Orth June 26, 2019, 10:50 a.m. UTC
A recent Solaris 11.5 Beta build (st_047) introduced MADV_DONTDUMP,
breaking the libsanitizer build.  The fix is already upstream

	https://reviews.llvm.org/D62892

and I've now installed it on mainline and the gcc-9 branch after testing
on i386-pc-solaris2.11 and sparc-sun-solaris2.11.

	Rainer
diff mbox series

Patch

# HG changeset patch
# Parent  c1cbe0c8b63f80662191072c1b6dbd599e42af53
Fix sanitizer_common/sanitizer_posix_libcdep.cc compilation on Solaris 11.5

diff --git a/libsanitizer/sanitizer_common/sanitizer_posix_libcdep.cc b/libsanitizer/sanitizer_common/sanitizer_posix_libcdep.cc
--- a/libsanitizer/sanitizer_common/sanitizer_posix_libcdep.cc
+++ b/libsanitizer/sanitizer_common/sanitizer_posix_libcdep.cc
@@ -69,7 +69,7 @@  void ReleaseMemoryPagesToOS(uptr beg, up
 
 bool NoHugePagesInRegion(uptr addr, uptr size) {
 #ifdef MADV_NOHUGEPAGE  // May not be defined on old systems.
-  return madvise((void *)addr, size, MADV_NOHUGEPAGE) == 0;
+  return madvise((char *)addr, size, MADV_NOHUGEPAGE) == 0;
 #else
   return true;
 #endif  // MADV_NOHUGEPAGE
@@ -77,9 +77,9 @@  bool NoHugePagesInRegion(uptr addr, uptr
 
 bool DontDumpShadowMemory(uptr addr, uptr length) {
 #if defined(MADV_DONTDUMP)
-  return madvise((void *)addr, length, MADV_DONTDUMP) == 0;
+  return madvise((char *)addr, length, MADV_DONTDUMP) == 0;
 #elif defined(MADV_NOCORE)
-  return madvise((void *)addr, length, MADV_NOCORE) == 0;
+  return madvise((char *)addr, length, MADV_NOCORE) == 0;
 #else
   return true;
 #endif  // MADV_DONTDUMP