From 17cf909024397ffcdaaae2f9174f40f23f6e797e Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Mon, 8 Apr 2019 15:08:30 +0200 Subject: [PATCH] Add missing libsanitizer extra patch (r259664) (PR sanitizer/89941). 2019-04-08 Martin Liska PR sanitizer/89941 * sanitizer_common/sanitizer_platform_limits_linux.cc (defined): Reapply patch from r259664. * sanitizer_common/sanitizer_platform_limits_posix.h (defined): Likewise. From-SVN: r270208 --- libsanitizer/ChangeLog | 8 ++++++++ .../sanitizer_common/sanitizer_platform_limits_linux.cc | 7 +++++-- .../sanitizer_common/sanitizer_platform_limits_posix.h | 2 +- 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/libsanitizer/ChangeLog b/libsanitizer/ChangeLog index 8b599bb754c..a5b56c76b3f 100644 --- a/libsanitizer/ChangeLog +++ b/libsanitizer/ChangeLog @@ -1,3 +1,11 @@ +2019-04-08 Martin Liska + + PR sanitizer/89941 + * sanitizer_common/sanitizer_platform_limits_linux.cc (defined): + Reapply patch from r259664. + * sanitizer_common/sanitizer_platform_limits_posix.h (defined): + Likewise. + 2019-03-13 Eric Botcazou PR sanitizer/80953 diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_linux.cc b/libsanitizer/sanitizer_common/sanitizer_platform_limits_linux.cc index 23a014823c4..3a906538129 100644 --- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_linux.cc +++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_linux.cc @@ -25,9 +25,12 @@ // With old kernels (and even new kernels on powerpc) asm/stat.h uses types that // are not defined anywhere in userspace headers. Fake them. This seems to work -// fine with newer headers, too. +// fine with newer headers, too. Beware that with , struct stat +// takes the form of struct stat64 on 32-bit platforms if _FILE_OFFSET_BITS=64. +// Also, for some platforms (e.g. mips) there are additional members in the +// struct stat:s. #include -#if defined(__x86_64__) || defined(__mips__) +#if defined(__x86_64__) #include #else #define ino_t __kernel_ino_t diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h index 91f38918f35..73af92af1e8 100644 --- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h +++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h @@ -87,7 +87,7 @@ namespace __sanitizer { #elif defined(__mips__) const unsigned struct_kernel_stat_sz = SANITIZER_ANDROID ? FIRST_32_SECOND_64(104, 128) : - FIRST_32_SECOND_64(160, 216); + FIRST_32_SECOND_64(144, 216); const unsigned struct_kernel_stat64_sz = 104; #elif defined(__s390__) && !defined(__s390x__) const unsigned struct_kernel_stat_sz = 64; -- 2.30.2