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)
og/?id=ba23ca977e1d9511e0b5de7651786d9660f3d292'>root/gnu/packages/vnc.scm
Age | Commit message (Expand) | Author |
2023-12-08 | gnu: Make webkitgtk-next the new webkitgtk....As of version 2.42.0, the WebKit 6.0 typelib is considered stable.
With GNOME itself moving to GTK4 as time marches on, we should reflect
the fact that this is the preferred Webkit for future applications.
* gnu/packages/webkit.scm (webkitgtk-next): Remove variable. Inline logic…
(webkitgtk): … here. Move old value …
(webkitgtk-for-gtk3): … here.
(webkitgtk-with-libsoup2): Inherit from webkitgtk-for-gtk3.
* gnu/packages/geo.scm (gnome-maps): Adjust accordingly.
* gnu/packages/gnome.scm (gnome-initial-setup, sushi)
(cambalache, devhelp, devhelp-with-libsoup2, gnome-online-accounts)
(gnome-online-accounts-3.44, evolution-data-server, evolution-data-server-3.44)
(lollypop, evolution, gnome-boxes, geary, komikku): Likewise.
* gnu/packages/guile-xyz.scm (guile-gi, nomad): Likewise.
* gnu/packages/lisp-xyz.scm (sbcl-cl-webkit): Likewise.
* gnu/packages/mail.scm (balsa): Likewise.
* gnu/packages/mate.scm (atril): Likewise.
* gnu/packages/music.scm (ctrlr): Likewise.
* gnu/packages/rednotebook.scm (rednotebook): Likewise.
* gnu/packages/syndication.scm (gfeeds): Likewise.
* gnu/packages/telegram.scm (telegram-desktop): Likewise.
* gnu/packages/vnc.scm (remmina): Likewise.
* gnu/packages/web-browsers.scm (nyxt): Likewise.
| Liliana Marie Prikler |
2023-09-24 | gnu: remmina: Update to 1.4.32....* gnu/packages/vnc.scm (remmina): Update to 1.4.32.
[source]: Add ‘.git’ suffix to silence needless HTTP redirection.
| Tobias Geerinckx-Rice |
2023-08-18 | gnu: remmina: Build with librsvg-for-system....* gnu/packages/vnc.scm (remmina)[inputs]: Replace librsvg with
librsvg-for-system.
| Efraim Flashner |