[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[hurd,commited] hurd: Fix restoring message to be retried
From: |
Samuel Thibault |
Subject: |
[hurd,commited] hurd: Fix restoring message to be retried |
Date: |
Sat, 13 Jul 2024 17:14:18 +0200 |
save_data stores the start of the original message to be retried,
overwritten by the EINTR reply. In 64b builds the overwrite is however
rounded up to the 64b pointer size, so we have to save more than just
the 32b err.
Thanks a lot to Luca Dariz for the investigation!
---
hurd/intr-msg.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/hurd/intr-msg.c b/hurd/intr-msg.c
index 2c2e7dc463..424c1fc700 100644
--- a/hurd/intr-msg.c
+++ b/hurd/intr-msg.c
@@ -42,7 +42,10 @@ _hurd_intr_rpc_mach_msg (mach_msg_header_t *msg,
struct clobber
{
mach_msg_type_t type;
- error_t err;
+ union {
+ error_t err;
+ uintptr_t align;
+ };
};
union msg
{
--
2.43.0
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [hurd,commited] hurd: Fix restoring message to be retried,
Samuel Thibault <=