diff mbox series

x86_64 hurd: ensure we have a large enough buffer to receive exception_raise requests.

Message ID gtxd6s4s7fi7hdrlb7zayq3akij7x6jqawwq3zfl3v4nqspulo@euucuzeonrl6
State New
Headers show
Series x86_64 hurd: ensure we have a large enough buffer to receive exception_raise requests. | expand

Commit Message

Flavio Cruz July 30, 2024, 4:51 a.m. UTC
---

This is likely to help with some of the issues we are seeing with x86_64
related to signal handling but I don't know how to reproduce it.

 hurd/hurdfault.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

Comments

Samuel Thibault July 30, 2024, 2:59 p.m. UTC | #1
Applied, thanks!

Flavio Cruz, le mar. 30 juil. 2024 00:51:20 -0400, a ecrit:
> ---
> 
> This is likely to help with some of the issues we are seeing with x86_64
> related to signal handling but I don't know how to reproduce it.
> 
>  hurd/hurdfault.c | 9 ++++++++-
>  1 file changed, 8 insertions(+), 1 deletion(-)
> 
> diff --git a/hurd/hurdfault.c b/hurd/hurdfault.c
> index 5110c6030f..1fe973f54d 100644
> --- a/hurd/hurdfault.c
> +++ b/hurd/hurdfault.c
> @@ -121,7 +121,14 @@ faulted (void)
>    struct
>      {
>        mach_msg_header_t head;
> -      char buf[64];
> +        /* This is the size of the exception_raise request
> +         * including mach_msg_header_t.
> +         * See generated code in faultexc_server.c.  */
> +#ifdef __LP64__
> +        char buf[112];
> +#else
> +        char buf[64];
> +#endif
>      } request;
>    mig_reply_header_t reply;
>    extern int _hurdsig_fault_exc_server (mach_msg_header_t *,
> -- 
> 2.45.2
>
diff mbox series

Patch

diff --git a/hurd/hurdfault.c b/hurd/hurdfault.c
index 5110c6030f..1fe973f54d 100644
--- a/hurd/hurdfault.c
+++ b/hurd/hurdfault.c
@@ -121,7 +121,14 @@  faulted (void)
   struct
     {
       mach_msg_header_t head;
-      char buf[64];
+        /* This is the size of the exception_raise request
+         * including mach_msg_header_t.
+         * See generated code in faultexc_server.c.  */
+#ifdef __LP64__
+        char buf[112];
+#else
+        char buf[64];
+#endif
     } request;
   mig_reply_header_t reply;
   extern int _hurdsig_fault_exc_server (mach_msg_header_t *,