Fix assertion failure in libsanitizer when using glibc 2.31 and later. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92154 https://reviews.llvm.org/D69104 Adapted from these upstream revision: https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=277981 https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=279653 diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc index 069d8d557de..c49c28c6e07 100644 --- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc +++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc @@ -1130,8 +1130,9 @@ CHECK_SIZE_AND_OFFSET(ipc_perm, cgid); #ifndef __GLIBC_PREREQ #define __GLIBC_PREREQ(x, y) 0 #endif -#if !defined(__aarch64__) || !SANITIZER_LINUX || __GLIBC_PREREQ (2, 21) -/* On aarch64 glibc 2.20 and earlier provided incorrect mode field. */ +#if !SANITIZER_LINUX || __GLIBC_PREREQ (2, 31) +/* glibc 2.30 and earlier provided 16-bit mode field instead of 32-bit + on many architectures. */ CHECK_SIZE_AND_OFFSET(ipc_perm, mode); #endif diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h index 304d04e3935..6dee89c97e1 100644 --- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h +++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h @@ -207,20 +207,13 @@ namespace __sanitizer { unsigned long __unused1; unsigned long __unused2; #elif defined(__sparc__) -# if defined(__arch64__) unsigned mode; - unsigned short __pad1; -# else - unsigned short __pad1; - unsigned short mode; unsigned short __pad2; -# endif unsigned short __seq; unsigned long long __unused1; unsigned long long __unused2; #else - unsigned short mode; - unsigned short __pad1; + unsigned int mode; unsigned short __seq; unsigned short __pad2; #if defined(__x86_64__) && !defined(_LP64) 9ad5a2c73fb913cc8d1'>root/doc/htmlxref.cnf
AgeCommit message (Expand)Author
2022-04-08doc: Fix cookbook URLs in htmlxref.cnf....Reported by Greg Hogan <code@greghogan.com>. * doc/htmlxref.cnf (GUIX_ROOT): New variable. (GUIX, GUIX_COOKBOOK): Adjust. Ludovic Courtès
2021-10-04doc: Update htmlxref.cnf....Update and fix broken references to cuirass, git, and guix-cookbook. * doc/htmlxref.cnf: Update from Texinfo. Factorize Guix manuals. (cuirass, git, guix-cookbook, guix-cookbook.de, guix-cookbook.fr): New entries. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Sarah Morgensen
2021-04-24doc: Fix cross-reference URL to translated manual....* doc/htmlxref.cnf: Fix translated manual URL. Julien Lepiller