From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from eggs.gnu.org (eggs.gnu.org [IPv6:2001:470:142:3::10]) by sourceware.org (Postfix) with ESMTPS id 225A93858CDB for ; Sun, 2 Apr 2023 22:52:02 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 225A93858CDB Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gnu.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gnu.org Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pj6YL-0006kB-IH; Sun, 02 Apr 2023 18:52:01 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=In-Reply-To:MIME-Version:References:Subject:To:From: Date; bh=0QHoQYIkJrFhkg5qmv+NDPMwxSra0CI35Ru7WcUlgd0=; b=rtD0a36YcmWqD6uaUhxi HjjVoBLidVoduRjCvFDvkWSBAED7BDfWZCnA24W8AOoSl9dm+h/1523UhIgFrZcWLcGuFlFQPjNeM zgNrprNX1DYqaweMctVVVq5bxzWIyPhQ37YQ+TRIsax50SXudLE/h5ZwqmkDFbTlVus0o64DtX6/N o5lZp9hchiPZ1FJ+g9f3+JRjTm5XqFjZkwwPQuwfNkkGyIcqGRrPbIpRTkn92wsj7aXMDfq22GKMW BSlWVGD+I2JLQqiGM1Y7KHquj7zB3Cxa8HqdwtZC1i6+id++o8BQfE4w3D9L/78QfGJijlpmG6bU+ 30C+sN8Hrlyu7g==; Received: from [2a01:cb19:4a:a400:de41:a9ff:fe47:ec49] (helo=begin) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pj6YL-00008N-Bu; Sun, 02 Apr 2023 18:52:01 -0400 Received: from samy by begin with local (Exim 4.96) (envelope-from ) id 1pj6YK-00Arlp-0T; Mon, 03 Apr 2023 00:52:00 +0200 Date: Mon, 3 Apr 2023 00:52:00 +0200 From: Samuel Thibault To: Sergey Bugaev Cc: libc-alpha@sourceware.org, bug-hurd@gnu.org Subject: Re: [RFC PATCH glibc 04/34] hurd: Make exception subcode a long Message-ID: <20230402225200.culetgydpmn7vlz2@begin> Mail-Followup-To: Sergey Bugaev , libc-alpha@sourceware.org, bug-hurd@gnu.org References: <20230319151017.531737-1-bugaevc@gmail.com> <20230319151017.531737-5-bugaevc@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20230319151017.531737-5-bugaevc@gmail.com> Organization: I am not organized User-Agent: NeoMutt/20170609 (1.8.3) X-Spam-Status: No, score=-12.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,SPF_HELO_PASS,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: 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; /* */ > 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.