bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [RFC PATCH glibc 04/34] hurd: Make exception subcode a long


From: Samuel Thibault
Subject: Re: [RFC PATCH glibc 04/34] hurd: Make exception subcode a long
Date: Mon, 3 Apr 2023 00:52:00 +0200
User-agent: NeoMutt/20170609 (1.8.3)

Applied, thanks!

Sergey Bugaev, le dim. 19 mars 2023 18:09:47 +0300, a ecrit:
> On EXC_BAD_ACCESS, exception subcode is used to pass the faulting memory
> address, so it needs to be (at least) pointer-sized. Thus, make it into
> a long. This matches the corresponding change in GNU Mach.
> ---
>  hurd/catch-exc.c   | 2 +-
>  hurd/hurd/signal.h | 5 +++--
>  hurd/hurdfault.c   | 2 +-
>  3 files changed, 5 insertions(+), 4 deletions(-)
> 
> diff --git a/hurd/catch-exc.c b/hurd/catch-exc.c
> index e8a9c798..5ee2233a 100644
> --- a/hurd/catch-exc.c
> +++ b/hurd/catch-exc.c
> @@ -31,7 +31,7 @@ _S_catch_exception_raise (mach_port_t port,
>                         mach_msg_type_number_t codeCnt
>  #else                                /* Vanilla Mach 3.0 interface.  */
>                         integer_t exception,
> -                       integer_t code, integer_t subcode
> +                       integer_t code, long_integer_t subcode
>  #endif
>                         )
>  {
> diff --git a/hurd/hurd/signal.h b/hurd/hurd/signal.h
> index 4e9f79b1..c33f974b 100644
> --- a/hurd/hurd/signal.h
> +++ b/hurd/hurd/signal.h
> @@ -51,9 +51,10 @@ struct hurd_signal_preemptor;      /* <hurd/sigpreempt.h> 
> */
>  struct hurd_signal_detail
>    {
>      /* Codes from origination Mach exception_raise message.  */
> -    integer_t exc, exc_code, exc_subcode;
> +    integer_t exc, exc_code;
> +    long_integer_t exc_subcode;
>      /* Sigcode as passed or computed from exception codes.  */
> -    integer_t code;
> +    long_integer_t code;
>      /* Error code as passed or extracted from exception codes.  */
>      error_t error;
>    };
> diff --git a/hurd/hurdfault.c b/hurd/hurdfault.c
> index 069c1c26..a81e7280 100644
> --- a/hurd/hurdfault.c
> +++ b/hurd/hurdfault.c
> @@ -45,7 +45,7 @@ _hurdsig_fault_catch_exception_raise (mach_port_t port,
>                                     mach_msg_type_number_t codeCnt
>  #else                                /* Vanilla Mach 3.0 interface.  */
>                                     integer_t exception,
> -                                   integer_t code, integer_t subcode
> +                                   integer_t code, long_integer_t subcode
>  #endif
>                                     )
>  {
> -- 
> 2.39.2
> 

-- 
Samuel
---
Pour une évaluation indépendante, transparente et rigoureuse !
Je soutiens la Commission d'Évaluation de l'Inria.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]