unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
blob 5823a230fded9b061516e8f46fd102492ca05782 1118 bytes (raw)
name: gnu/packages/patches/glibc-hurd64-gcc-14.2-tls-bug.patch 	 # note: path name is non-authoritative(*)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
 
From 0b23ab98d25d880ee602af91e62aa39564510cac Mon Sep 17 00:00:00 2001
From: Janneke Nieuwenhuizen <janneke@gnu.org>
Date: Fri, 22 Nov 2024 16:26:08 +0100
Subject: [PATCH] x86_64-hurd: sigreturn: Hack around gcc-14.2 optimization
 bug.

See: <https://lists.gnu.org/archive/html/bug-hurd/2024-11/msg00143.html>.

* sysdeps/mach/hurd/x86_64/sigreturn.c (__sigreturn2): Add nop.
---
 sysdeps/mach/hurd/x86_64/sigreturn.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/sysdeps/mach/hurd/x86_64/sigreturn.c b/sysdeps/mach/hurd/x86_64/sigreturn.c
index 7a0193497d..256cc1268a 100644
--- a/sysdeps/mach/hurd/x86_64/sigreturn.c
+++ b/sysdeps/mach/hurd/x86_64/sigreturn.c
@@ -45,6 +45,7 @@ __sigreturn2 (struct hurd_sigstate *ss, uintptr_t *usp,
     (void) __mach_port_mod_refs (__mach_task_self (), reply_port,
                                  MACH_PORT_RIGHT_RECEIVE, -1);
   THREAD_SETMEM (THREAD_SELF, reply_port, sc_reply_port);
+  asm ("nop"); // See <https://lists.gnu.org/archive/html/bug-hurd/2024-11/msg00143.html>.
 
   asm volatile (
                 /* Point the stack to the register dump.  */
-- 
2.46.0


debug log:

solving 5823a230fd ...
found 5823a230fd in https://git.savannah.gnu.org/cgit/guix.git

(*) Git path names are given by the tree(s) the blob belongs to.
    Blobs themselves have no identifier aside from the hash of its contents.^

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).