GNU bug report logs - #76559
31.0.50; [-O3 + PGTK] Crash when 'copying as kill'/'killing word'

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: emacs; Reported by: Iurie Marian <marian.iurie@HIDDEN>; merged with #76729; dated Tue, 25 Feb 2025 17:34:01 UTC; Maintainer for emacs is bug-gnu-emacs@HIDDEN.
Merged 76559 76729. Request was from Paul Eggert <eggert@HIDDEN> to control <at> debbugs.gnu.org. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 3 Mar 2025 19:40:07 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Mar 03 14:40:07 2025
Received: from localhost ([127.0.0.1]:52136 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tpBe3-0006rd-9S
	for submit <at> debbugs.gnu.org; Mon, 03 Mar 2025 14:40:07 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:57566)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tpBdz-0006qs-Jb
 for 76559 <at> debbugs.gnu.org; Mon, 03 Mar 2025 14:40:05 -0500
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 <eliz@HIDDEN>)
 id 1tpBdp-0008Eu-4D; Mon, 03 Mar 2025 14:39:53 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=LoxRWZYe8v1mD2Sh2ACakOI/VU3rWCmbjdublF/0uvQ=; b=Db71E6cKfPb1
 CGRNdAix9HK2xDWmGxbyEbSWXve8YTuwNDEyAsSncH1yljmHx3iLWAQTCMEhO6sgP+mVJLFwoZCC1
 8O7w9fykHjhUbsORGmiev/kq+AVPwHBrFOS96DOXI8MSEqkqvzZIZ0g4yogAmjk8vi+1xtSGoR2BU
 4EFjoY0jTtBxLKeNVgSo3ePV+TpUwtTAODFwh4s1FPlQEzm8Kd+uqrSbh5sItJpKifh2kBIm7WKZ6
 5QCWi5XUqXaPJd7c0y3ICtjWqcOM7L1QFmOJGYRcpqFi1b4lGYCZSIzgihgsl4Y4gTcPAqrJnhUQC
 Nl+z1s9+xVN0SkvZtODiiw==;
Date: Mon, 03 Mar 2025 21:39:34 +0200
Message-Id: <86v7spkio9.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Paul Eggert <eggert@HIDDEN>
In-Reply-To: <5e7f9c19-30d1-4cbc-bd87-4a3cbb61481a@HIDDEN> (message from
 Paul Eggert on Mon, 3 Mar 2025 10:09:45 -0800)
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN> <86tt8fu6dh.fsf@HIDDEN>
 <87o6yn1st8.fsf@HIDDEN>
 <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN>
 <s1ra5a70vwv.fsf@HIDDEN>
 <2b5ac4cc-ea40-416a-9e12-9cedd8172a59@HIDDEN> <87ikoslvd4.fsf@HIDDEN>
 <fb2eeca2-6477-4bdb-b439-008f0b065441@HIDDEN> <87y0xoj9vz.fsf@HIDDEN>
 <9a194d94-ccb8-4238-be6b-8a995f3aa503@HIDDEN> <878qpmigxl.fsf@HIDDEN>
 <87senugoj1.fsf@HIDDEN> <86frjuku05.fsf@HIDDEN>
 <5e7f9c19-30d1-4cbc-bd87-4a3cbb61481a@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 76559
Cc: pipcet@HIDDEN, luangruo@HIDDEN, michael.albinus@HIDDEN,
 stefankangas@HIDDEN, iura.mail@HIDDEN, 76559 <at> debbugs.gnu.org,
 marian.iurie@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Date: Mon, 3 Mar 2025 10:09:45 -0800
> Cc: pipcet@HIDDEN, iura.mail@HIDDEN, stefankangas@HIDDEN,
>  michael.albinus@HIDDEN, Po Lu <luangruo@HIDDEN>, 76559 <at> debbugs.gnu.org,
>  marian.iurie@HIDDEN
> From: Paul Eggert <eggert@HIDDEN>
> 
> On 2025-03-03 07:34, Eli Zaretskii wrote:
> >> From: Po Lu <luangruo@HIDDEN>
> >> Date: Mon, 03 Mar 2025 22:46:42 +0800
> >> Which reminds me: what is to be done on the release branch, if any?
> >> Beyond directing users not to enable "-flto", which goes without saying.
> > 
> > Something simple and localized, if possible?  I believe one of the
> > previously-suggested patches was like that, even if it was not 110%
> > correct or safe.
> 
> The patch in <https://bugs.gnu.org/76559#71> won't work if neither 
> HAVE_X11 nor HAVE_PGTK is defined.

That didn't work on master, either, and I just fixed it, because it
broke the MinGW build.

> There's an obvious fix for that if somebody wants to take up the
> banner of writing a patch not to be merged to master. However, I
> hope the "don't use -O3" advice is enough.

OK.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 3 Mar 2025 18:09:58 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Mar 03 13:09:58 2025
Received: from localhost ([127.0.0.1]:51522 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tpAEo-0000Vb-0j
	for submit <at> debbugs.gnu.org; Mon, 03 Mar 2025 13:09:58 -0500
Received: from mail.cs.ucla.edu ([131.179.128.66]:49568)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eggert@HIDDEN>)
 id 1tpAEi-0000Ux-5j
 for 76559 <at> debbugs.gnu.org; Mon, 03 Mar 2025 13:09:55 -0500
Received: from localhost (localhost [127.0.0.1])
 by mail.cs.ucla.edu (Postfix) with ESMTP id 3DA393C00FAAC;
 Mon,  3 Mar 2025 10:09:46 -0800 (PST)
Received: from mail.cs.ucla.edu ([127.0.0.1])
 by localhost (mail.cs.ucla.edu [127.0.0.1]) (amavis, port 10032) with ESMTP
 id VfGLRIF3jF6J; Mon,  3 Mar 2025 10:09:45 -0800 (PST)
Received: from localhost (localhost [127.0.0.1])
 by mail.cs.ucla.edu (Postfix) with ESMTP id C361E3C01409D;
 Mon,  3 Mar 2025 10:09:45 -0800 (PST)
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.cs.ucla.edu C361E3C01409D
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs.ucla.edu;
 s=9D0B346E-2AEB-11ED-9476-E14B719DCE6C; t=1741025385;
 bh=61aYomVOfYHRaGsryT1jQ4+8XMi9ognPOKt6Q62Wqrw=;
 h=Message-ID:Date:MIME-Version:To:From;
 b=NDUrX+QBf+vrXMjIZKLUm61g6bFiGSa3QSX2TwexbciUbJ+C3nJotUhBlr1bF17yx
 zdr5jnEC9F3f0ej1eXN+U47K6KVCzW+C7UbOeaoKCjFR+zurrC9c7X3XXhyx/cl/1A
 140fB1X3Ad6DUxrtJK6havJxttXIVvljnalKwzRQKyZc3PbfckjcAZ4zL4C7aAB7R0
 FZHIqjUH1yGXdGhAr6/xfxw8eUIv+ZuBk3XOQWB7evmLaJPhYJkAXSGZ0Mf1fz7urq
 K7jfShGUZWckD+wzOkk4Pz/dpT1bfWyDQYcafdix18q2+riVxfxAONB2GLbCkoOEJN
 F9kFTMRLk3BwA==
X-Virus-Scanned: amavis at mail.cs.ucla.edu
Received: from mail.cs.ucla.edu ([127.0.0.1])
 by localhost (mail.cs.ucla.edu [127.0.0.1]) (amavis, port 10026) with ESMTP
 id ELvUZZSipAk9; Mon,  3 Mar 2025 10:09:45 -0800 (PST)
Received: from [192.168.254.12] (unknown [47.147.225.25])
 by mail.cs.ucla.edu (Postfix) with ESMTPSA id 8D2BC3C00FAAC;
 Mon,  3 Mar 2025 10:09:45 -0800 (PST)
Message-ID: <5e7f9c19-30d1-4cbc-bd87-4a3cbb61481a@HIDDEN>
Date: Mon, 3 Mar 2025 10:09:45 -0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
To: Eli Zaretskii <eliz@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN> <86tt8fu6dh.fsf@HIDDEN>
 <87o6yn1st8.fsf@HIDDEN>
 <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN>
 <s1ra5a70vwv.fsf@HIDDEN>
 <2b5ac4cc-ea40-416a-9e12-9cedd8172a59@HIDDEN> <87ikoslvd4.fsf@HIDDEN>
 <fb2eeca2-6477-4bdb-b439-008f0b065441@HIDDEN> <87y0xoj9vz.fsf@HIDDEN>
 <9a194d94-ccb8-4238-be6b-8a995f3aa503@HIDDEN> <878qpmigxl.fsf@HIDDEN>
 <87senugoj1.fsf@HIDDEN> <86frjuku05.fsf@HIDDEN>
Content-Language: en-US
From: Paul Eggert <eggert@HIDDEN>
Organization: UCLA Computer Science Department
In-Reply-To: <86frjuku05.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: pipcet@HIDDEN, Po Lu <luangruo@HIDDEN>, michael.albinus@HIDDEN,
 stefankangas@HIDDEN, iura.mail@HIDDEN, 76559 <at> debbugs.gnu.org,
 marian.iurie@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

On 2025-03-03 07:34, Eli Zaretskii wrote:
>> From: Po Lu <luangruo@HIDDEN>
>> Date: Mon, 03 Mar 2025 22:46:42 +0800
>> Which reminds me: what is to be done on the release branch, if any?
>> Beyond directing users not to enable "-flto", which goes without saying.
> 
> Something simple and localized, if possible?  I believe one of the
> previously-suggested patches was like that, even if it was not 110%
> correct or safe.

The patch in <https://bugs.gnu.org/76559#71> won't work if neither 
HAVE_X11 nor HAVE_PGTK is defined. There's an obvious fix for that if 
somebody wants to take up the banner of writing a patch not to be merged 
to master. However, I hope the "don't use -O3" advice is enough.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 3 Mar 2025 17:57:26 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Mar 03 12:57:26 2025
Received: from localhost ([127.0.0.1]:51374 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tpA2g-0007up-35
	for submit <at> debbugs.gnu.org; Mon, 03 Mar 2025 12:57:26 -0500
Received: from mail.cs.ucla.edu ([131.179.128.66]:50572)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eggert@HIDDEN>)
 id 1tpA2d-0007uC-1I
 for 76559 <at> debbugs.gnu.org; Mon, 03 Mar 2025 12:57:23 -0500
Received: from localhost (localhost [127.0.0.1])
 by mail.cs.ucla.edu (Postfix) with ESMTP id A58B53C00FAAC;
 Mon,  3 Mar 2025 09:57:16 -0800 (PST)
Received: from mail.cs.ucla.edu ([127.0.0.1])
 by localhost (mail.cs.ucla.edu [127.0.0.1]) (amavis, port 10032) with ESMTP
 id KWWnDk47gafB; Mon,  3 Mar 2025 09:57:16 -0800 (PST)
Received: from localhost (localhost [127.0.0.1])
 by mail.cs.ucla.edu (Postfix) with ESMTP id 5F5583C01409D;
 Mon,  3 Mar 2025 09:57:16 -0800 (PST)
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.cs.ucla.edu 5F5583C01409D
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs.ucla.edu;
 s=9D0B346E-2AEB-11ED-9476-E14B719DCE6C; t=1741024636;
 bh=TwTdWjfVTLTTuvCcYGBs/X02A05CB78cHFWzXs9M1e8=;
 h=Message-ID:Date:MIME-Version:To:From;
 b=HCB5xlnpEnZpSuXjkyH8SNyLm+tYI8cs/XvFM94OXlWpSeS/7jVXaaR/do0zgqMqr
 KMMfVj4Kl4o/BBPrgFHTSpfpzDe1jv9EqDfoe40bFrKC7617Ynt6mjhGmip+w+B1tU
 2dECQ8V9FoVweeWPQ4tCqi2hqXs5Mn5NgBuMYk6jNENPGsxFD1tl853xi317TSiBQ3
 MnRHThLLwr0Gtv5m3I+nUVaeav1YlxmhmNJY8Yh+57G6/eCxeAfGcmj9c+1/44LCf7
 04GOx62mkUPxA29z4sYXlQHscHVy0GGZK7s6l4g1GwCBJBN6r7wk/PT/oF3MbRYmhG
 PAiwNIeBXQecg==
X-Virus-Scanned: amavis at mail.cs.ucla.edu
Received: from mail.cs.ucla.edu ([127.0.0.1])
 by localhost (mail.cs.ucla.edu [127.0.0.1]) (amavis, port 10026) with ESMTP
 id bCvjaAAVQRAO; Mon,  3 Mar 2025 09:57:16 -0800 (PST)
Received: from [192.168.254.12] (unknown [47.147.225.25])
 by mail.cs.ucla.edu (Postfix) with ESMTPSA id 2A7723C00FAAC;
 Mon,  3 Mar 2025 09:57:16 -0800 (PST)
Message-ID: <ace5eeaa-bbc0-43dd-a595-197e6c3ac081@HIDDEN>
Date: Mon, 3 Mar 2025 09:57:15 -0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
To: Po Lu <luangruo@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN> <86tt8fu6dh.fsf@HIDDEN>
 <87o6yn1st8.fsf@HIDDEN>
 <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN>
 <s1ra5a70vwv.fsf@HIDDEN>
 <2b5ac4cc-ea40-416a-9e12-9cedd8172a59@HIDDEN> <87ikoslvd4.fsf@HIDDEN>
 <fb2eeca2-6477-4bdb-b439-008f0b065441@HIDDEN> <87y0xoj9vz.fsf@HIDDEN>
 <9a194d94-ccb8-4238-be6b-8a995f3aa503@HIDDEN> <878qpmigxl.fsf@HIDDEN>
Content-Language: en-US
From: Paul Eggert <eggert@HIDDEN>
Organization: UCLA Computer Science Department
In-Reply-To: <878qpmigxl.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Pip Cet <pipcet@HIDDEN>, iura.mail@HIDDEN,
 Stefan Kangas <stefankangas@HIDDEN>, michael.albinus@HIDDEN,
 Eli Zaretskii <eliz@HIDDEN>, 76559 <at> debbugs.gnu.org, marian.iurie@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

On 2025-03-03 01:47, Po Lu wrote:
> The patch is fine by me, but the line wrapping hereabouts is gruesome.
> Please delete the const qualifiers and wrap the parameter list after
> `event', since they probably will not assist code generation.

Thanks for the review. I installed it with those changes.


> Also, come to think of it, I doubt it's appropriate for selection event
> delivery (which is meant purely to be a transparent process to users) to
> be influenced by hold_quit at all.

Yeah, I noticed that too. Someone with more time and expertise than I 
should probably take a look at it. Maybe the intent is to make quits 
work even when a large selection is arriving, but I doubt whether the 
code is doing that in all cases, and it could well be I'm 
misunderstanding the intent.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 3 Mar 2025 15:35:08 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Mar 03 10:35:08 2025
Received: from localhost ([127.0.0.1]:50127 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tp7oy-0004h8-0p
	for submit <at> debbugs.gnu.org; Mon, 03 Mar 2025 10:35:08 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:42788)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tp7ov-0004gW-L6
 for 76559 <at> debbugs.gnu.org; Mon, 03 Mar 2025 10:35:06 -0500
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 <eliz@HIDDEN>)
 id 1tp7ol-00068y-8i; Mon, 03 Mar 2025 10:35:00 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=dsPiDrBcnNflMMifklMWBh7YWwprjEk/Vb1XAffLbYU=; b=Y3aIEbvKd5v9
 7IvRPM04HLP4/HmrLJHpW+lwvZIcAze9+Gta2i9Ml3DoZdE3GrPwycs9IYOg+FqI0/H13b0CcYJwq
 ca70A8cW8ZJHSQROWhSUAzkhUqoIB8ri5ywRU6kNEcDrn0gwN2/nGIPL/zBLYVL3yiSRnnvXQzV5p
 VKl+fvzCHiRKUsM/jwIAXWJQhstQXW11+wcHgPBY4QA8zD0hE54j7bkOFKXO9EnygG3b1LZJh8BsN
 l3HY9MIkybVBkGJRDH7qGu7Bhnoo/LQtHaMtBjH3p5NIbgZsRLVbBlUrzRoj+c0cBCNTwNYo+BzzY
 EVKAzLm84KNpL79P2cXteQ==;
Date: Mon, 03 Mar 2025 17:34:50 +0200
Message-Id: <86frjuku05.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Po Lu <luangruo@HIDDEN>
In-Reply-To: <87senugoj1.fsf@HIDDEN> (message from Po Lu on Mon, 03 Mar
 2025 22:46:42 +0800)
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN>
 <86tt8fu6dh.fsf@HIDDEN> <87o6yn1st8.fsf@HIDDEN>
 <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN>
 <s1ra5a70vwv.fsf@HIDDEN>
 <2b5ac4cc-ea40-416a-9e12-9cedd8172a59@HIDDEN>
 <87ikoslvd4.fsf@HIDDEN>
 <fb2eeca2-6477-4bdb-b439-008f0b065441@HIDDEN>
 <87y0xoj9vz.fsf@HIDDEN>
 <9a194d94-ccb8-4238-be6b-8a995f3aa503@HIDDEN>
 <878qpmigxl.fsf@HIDDEN> <87senugoj1.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 76559
Cc: pipcet@HIDDEN, eggert@HIDDEN, michael.albinus@HIDDEN,
 stefankangas@HIDDEN, iura.mail@HIDDEN, 76559 <at> debbugs.gnu.org,
 marian.iurie@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Po Lu <luangruo@HIDDEN>
> Cc: Pip Cet <pipcet@HIDDEN>,  iura.mail@HIDDEN,  Stefan Kangas
>  <stefankangas@HIDDEN>,  michael.albinus@HIDDEN,  Eli Zaretskii
>  <eliz@HIDDEN>,  76559 <at> debbugs.gnu.org,  marian.iurie@HIDDEN
> Date: Mon, 03 Mar 2025 22:46:42 +0800
> 
> Which reminds me: what is to be done on the release branch, if any?
> Beyond directing users not to enable "-flto", which goes without saying.

Something simple and localized, if possible?  I believe one of the
previously-suggested patches was like that, even if it was not 110%
correct or safe.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 3 Mar 2025 14:47:07 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Mar 03 09:47:07 2025
Received: from localhost ([127.0.0.1]:46996 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tp74U-0000CU-Lq
	for submit <at> debbugs.gnu.org; Mon, 03 Mar 2025 09:47:07 -0500
Received: from sonic303-21.consmr.mail.ne1.yahoo.com ([66.163.188.147]:39838)
 by debbugs.gnu.org with esmtps
 (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2)
 (envelope-from <luangruo@HIDDEN>) id 1tp74P-0000BP-Ka
 for 76559 <at> debbugs.gnu.org; Mon, 03 Mar 2025 09:47:04 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1741013215; bh=NKq5TEQhhj4IWN8AaToeiVAe0l/4/gisFCpJzrnmpmM=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To;
 b=Q9VAoHXbopo36KwxIKsae6f7eg/TQeiJlAZ+IWMpBKf6VuPiXb7wHBv0zTY35yfeiGS8srMBht5v1goVMIQ0FO0WM3z+FaqoLvlkqPXMEtTCr7JBkfkMZrcBOnB5I+UTwT2re/L7NZdDtcM5+O3VyAIWG96V4H320zCIJyYVTOu0vioWHNHTKBQk5KAlGE6BHJ9PfdHuBOrnnxyT8BAZA1rJnK6Xz3CEJybl8RgQ93X5sUo74YhUgZk8XnyJYpRjyWTaz8L0OCWT7Jvy49Ir+Ck5VforsMm8l9UNxZZRLCyhddScVQSoA6NKpbS7YBuUm8p0RI7vLzNR9jUd87mblA==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1741013215; bh=JSntjD0sigrWgsehifaqKVB0Ul4nw/OjCNGNJ0QOISN=;
 h=X-Sonic-MF:From:To:Subject:Date:From:Subject;
 b=XtlTaAz8Eg36aIqnK5NLE/RwCWvJ5INjhL0dL9PIm/TMUwpkm6kDbqt2DrPQeBIakjSQn9kH62S8BRwsWhkXzwLTJQJ6jSZR63ckQly32LvUIwQXQO3LHJF9QOOdWvA6xKjhUXl2lL5AzGiKaZUAyNYQeCK1OgJ/1ISXwgGHRxvQF+QrtLXpGBJwtDMz3e8Btfuhj6hrxc/SgVxtRHff2oZ72WMLzEMfSRpBENpkdAxJfSOcgN9BOnhNg3ZRaqxYkUIN8cZ08IEjQYFvW0yXsr9i3mH20Y0wwHl9kqFPG/C0unmLmq8rwFAPVDNjv00zH5xGZpd+im64h1Kr3sRbBw==
X-YMail-OSG: O1_ohAkVM1l7dQSij46FugfQgupNix_sEbAiN1Bu6_.hJn3_SzyO7tZsAJG3_Rp
 Re4nwyKjWCZhnfW2lCLpJrG7tgW0Ab5MVj_yfJi1lkbCjinUXUZpoTwQr9Li8QKzfWiuBjgj9X0f
 KmxxeKgF5KHhGKuMqvKPC.Tw07Pm4RpkRR_l50QmomDZVCovOnD.JRlAZ2oAwu6t8u3RvOA8CYv.
 Ljd7oLRkyGgPA_WZCo1XyDMHX9Sk3B8LsAtCke5scsH2_8uFpvXaIwYll7_OQoJdTJ83HfFdCIm2
 QxZInu3JI_SM7lDsKYFo8fIF.PGv4LcO6hrlV2MHqtGOvItwVCn1fDtxYMMabO4IOb056qqhlPtc
 EmuXE_34ZTBI2C4HatPXjhiTYiqsifpLxVJueCF7Zf9K7Zdcjp8t.oEjQZffRUzTuJVQKMQ0WUYH
 .ATjxSpUJvmoj7jv1PqImMMJjbJrJfbFD1Gwjmy8KpVXah5Fk4oQsj6wA3.95Sm3zop2o6z1bx03
 Ize.oKCkOB3xKOZ7EH5kcunxAQweBsZKBvEuGoEqOyPmPu.aW4QyD_BnuPrCktzIeWZulIGgmw6O
 1Xj0BqdJtOxfnQ77bRR_xJ5Xepd7c5eCCnfqH6d3irlWwAy41JoROv2Dm3w2zotyyqF6VxmbCkqu
 4F6A4QGV5kEgzfvtKUmXZWbLUglwm1ChucM_KxMvKF6XzRG_pwSCK5qDZRFZRzkdS3ztP5gNZO2t
 qJ_Y1VOcjZ5cREL_FtGWKVKSIqmg4y7KVHy5qE8ETEW3NjBYuxxtTFBWjBshqVwGphUDHVo4wyeq
 Ekbe3Guf2k8SpRfxPWHVwU1nkj95a1rPLT1qoinhdN88Vl.4v5zAymoEtGwC_QWbJjJmriW.TXZb
 Z5dW5dILJR1_PuyUDDKh11.j6PdQ.nccwp.iEz71GgUuEkMwFh0m5LVV8rHzUe4A57eZkGrFrR.d
 x3hC82BoceedW0CHepbo2_y_Mgi87J6Lp38YaZ9fTehA2D8euQ4wD0t3sa3mnJdPOvMYMisa1NYP
 TATO_f9.em0AeBbBdlfxDsVR7P5xKIi0qCvVkFMUNZZdXALTFrTwVfv4Nmz9nBG_ZRQRepKGrcBN
 z39Od4sVPNkkS2fBteNDFfOsl_RXlpW3NI4cb22F05UBBDkosS9LaJqegVY6ww9rVwK4rn7RMyxa
 9QjjTz6GOYm.JbOBQ3N9pHwjRfEMC4ZXxrIn.vgAha_IC2WOzZB9OwFk.9tO6DY4CIb3fLudgOUy
 jw8ncsljYYksf7madYdlH_JUFr7iMdnXP4jQYf.3_98x2dcnju_4QZN4LDhl639bWZSefblMd.38
 0Eeh38wM7d5FY3vOSJHGWPA.aSTCP9JmahdvUtqIQ1H5LOljFYVcghTwGE8xSsKptcSEvffxylZe
 hItkGi8IefThwwwZTf.OiR0VLBT_nD62f3RKZ0cEYgRpRn0c8KVf2C0hVZa6WsZ33LKxO21ygMAK
 dKApcMhjodjUANA_BjVdm0dJ5gwB3jt9YtMaqHB5ymb_gqnxCZGs_iQnNQQ.kmPgbGj6dd0pqypQ
 JuN0NHyIIzS4R2OzHXPHzV4praU4fp675dwnlf7I7ctWFPIWrRdOKHtPrPL7bvKCRz23HbXJabZg
 g8xgtxk1iVpMZSdyyaKCPWZHVebt7bmcEljQSU4hAhuzAwB17Yn6s4XNOlR51ay.r7VJ6hnq84Y1
 GqsUUgDWZKRdsgqQVxLp5bazB4wP1JtpiAbOEgBaqATTk2uLD6US_JSCyOcdMzX68wMmCv1f6_G.
 wVC7OtAL_73AQ8rLn5Iin3jKYlS..GbYsSRfoDZL9c8ztd2USNlIFkVrQjUmEArGNbF8.QulevVQ
 R8lAOzEtvKuUX2yvilnUC8AkUX3c3u9Rz8EAiV5mRcudnR8qkORqLdksZlFd.1LGeduk8bPawacC
 Hqia31jnb4v5RibhNnTLhLn2bs3ODb9Ynop8IGmipmoxiegOYiZrsR4HCEyt8IJrxP3hKukU7jTO
 mlb2A3mhQLclFgbSYM.zFgFAXPySx.ztoJaOJunyWswsitfQqWoANGk0d1NCPsNqcihf1LcOd1kM
 AbyMizoKAt1jptWBzfP1nuY941xvceWA3A65VlZvNAN0EjxIIc1BbLQIuqDn0xAmabUOAiQRUvgP
 2DUDETjZ0zf5TaU.0gbdL7OOmJLx6vhuGvG.Zz1Na6tJ441v1PQUAjNBAbMfVkZMFYAnSMPrXMrf
 uv2HerLJde9vVxmgUiJHStavdYnPcbs5CaKAf7VEyLnnEcHV6yzngvjHIg9my3xQ-
X-Sonic-MF: <luangruo@HIDDEN>
X-Sonic-ID: 78d4d510-f3e9-480a-b46a-99ea81e686c5
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic303.consmr.mail.ne1.yahoo.com with HTTP; Mon, 3 Mar 2025 14:46:55 +0000
Received: by hermes--production-sg3-9fc94b8df-lfmn2 (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID fbbd9cc8db4881eb2e5641da7d06374f; 
 Mon, 03 Mar 2025 14:46:48 +0000 (UTC)
From: Po Lu <luangruo@HIDDEN>
To: Paul Eggert <eggert@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
In-Reply-To: <878qpmigxl.fsf@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN>
 <86tt8fu6dh.fsf@HIDDEN> <87o6yn1st8.fsf@HIDDEN>
 <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN>
 <s1ra5a70vwv.fsf@HIDDEN>
 <2b5ac4cc-ea40-416a-9e12-9cedd8172a59@HIDDEN>
 <87ikoslvd4.fsf@HIDDEN>
 <fb2eeca2-6477-4bdb-b439-008f0b065441@HIDDEN>
 <87y0xoj9vz.fsf@HIDDEN>
 <9a194d94-ccb8-4238-be6b-8a995f3aa503@HIDDEN>
 <878qpmigxl.fsf@HIDDEN>
Date: Mon, 03 Mar 2025 22:46:42 +0800
Message-ID: <87senugoj1.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Mailer: WebService/1.1.23369
 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo
Content-Length: 1884
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Pip Cet <pipcet@HIDDEN>, michael.albinus@HIDDEN,
 Stefan Kangas <stefankangas@HIDDEN>, iura.mail@HIDDEN,
 Eli Zaretskii <eliz@HIDDEN>, 76559 <at> debbugs.gnu.org, marian.iurie@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Po Lu <luangruo@HIDDEN> writes:

> Paul Eggert <eggert@HIDDEN> writes:
>
>> On 2025-03-01 21:10, Po Lu wrote:
>>> It doesn't take control flow into account, but rather _every statement
>>> operand_ in the current procedure that addresses an aggregate declared
>>> in the same procedure.
>>
>> Although, as you mentioned, we could work around this wrong-code GCC
>> bug by using -fno-tree-sra (something we already do for GCC pre-SSE2
>> x86), we should avoid the tricky union locals that trigger the bug on
>> x86-64 with gcc -flto. After all, these union locals make the code
>> harder for humans to read, so removing them is a win regardless of the
>> GCC bug. And if removing the union locals happens to work around the
>> GCC bug then so much the better.
>
> [...]
>
>> +/* Store EVENT obtained at interrupt level into kbd_buffer, fifo.
>> +   This is like kbd_buffer_store_event_hold, but for struct
>> +   selection_input_event instead of struct input_event.
>> +
>> +   If HOLD_QUIT && HOLD_QUIT->kind != NO_EVENT, discard EVENT.
>> +
>> +   This is used to postpone the processing of the quit event until all
>> +   subsequent input events have been parsed (and discarded).  */
>> +
>> +void
>> +kbd_buffer_store_selection_event_hold
>> +  (struct selection_input_event const *event,
>> +   struct input_event const *hold_quit)
>
> The patch is fine by me, but the line wrapping hereabouts is gruesome.
> Please delete the const qualifiers and wrap the parameter list after
> `event', since they probably will not assist code generation.
>
> Also, come to think of it, I doubt it's appropriate for selection event
> delivery (which is meant purely to be a transparent process to users) to
> be influenced by hold_quit at all.

Which reminds me: what is to be done on the release branch, if any?
Beyond directing users not to enable "-flto", which goes without saying.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 3 Mar 2025 09:48:11 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Mar 03 04:48:11 2025
Received: from localhost ([127.0.0.1]:44793 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tp2PD-0000Dc-91
	for submit <at> debbugs.gnu.org; Mon, 03 Mar 2025 04:48:11 -0500
Received: from sonic315-22.consmr.mail.ne1.yahoo.com ([66.163.190.148]:42142)
 by debbugs.gnu.org with esmtps
 (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2)
 (envelope-from <luangruo@HIDDEN>) id 1tp2PA-0000Cv-Gm
 for 76559 <at> debbugs.gnu.org; Mon, 03 Mar 2025 04:48:09 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740995282; bh=/5HGBosDEvYZ/BGbX00Ca3GcnzeqIkSgFVy7LBPqU3M=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To;
 b=rDuLxv084bFRgraBnm61Xd4SPmFZW46OCK+gyUEeXY1pHHPAWGbkzibKsOaJ0n2thAoyVY0Bsr5bh5TjWxcQmrUppPokJo5dqFmxLj3YmgkD/93vBxPxWVagFt1z8Ad9101XS5R9Py6uQQxPvNynsNgYEE+tz9pKiqr5jm5WxGvy+ir4yDovv4LUtdL8Ql2F006Dot5MCVzbDfjPtFRjc5HBnQY+1O0V95NCcyfNTj4uSJgBM1U5+qdhS/tNa3GT6RmjWeGzC80tb4usK2t9fucP1Uqh+A7BkRqpMfh9O7lI9XQTcgrggafPEKzv0+oN6NTCKOdCrxFSZeiYoTur+A==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740995282; bh=54yvSuYRPDm9STwNxo5AOC08cpb3JUFStQZ/Aw390Rq=;
 h=X-Sonic-MF:From:To:Subject:Date:From:Subject;
 b=p/kWbhFfUffqZ7VZyD20ujmLjymba0cP/tIDXP2z00jRWDlqSyhBgWlukqGsy9+dHCOCfeKNhDM2+4MtUpqMv+JxkjNn76DFS0Ursb8X9uVq90XFx+fB9JMk1ToXKBNp7ag8SowCDsBsb+NnpvGpiwWnLimeVkQ1IyuoCSk840qKWInRuVoqXGOd/KruWSBm9oPMIgidecqrGXPjxWew0xPRmRykvyc+fzylmYImd7V7INpePaPmXKPmp0s7+vvsrdFJxcPU+tlCUUl/y0Gh6Y4D5FnEQO3XJXRFeouydbhz6BZS5aDDd/kisEaGlhqOf2AaGjMGjUYRAJXz6Ob3Lw==
X-YMail-OSG: qxCUVRgVM1n0vxmCsgApiKRGoCwnfKQE6_7ktsCgTZqwvrNbRO8oxnTo2Fs9Yr9
 RkmoWr9tyR6aaPUQooOdDeNRvMQ5O_Qeer02VS6MLx1NmFwsrIHXUL1ZONHt6dnuzIU.QfyHy84.
 y.XENvS0637iXTvfS9w0jNS6n4Al1zbnTtm2qG.iPkvTIRuPUb33A8DgNOE.zon_tLNODm5yIML8
 pIcP6RWXFMwZYCR2rtyqRrZ9.mokX1ffozCLuk5diEUcXNh1tdZzVuDA.ciNmjk7wByG5xJERRS1
 spd5NvK.O0vTiYVSOYyIon002AuvaVFkjidNdwt4Dy4QKMN18CJUa2oZIu9uRKFTqVv6ek_HlKyG
 Sj.0EYhu4oEN24jn5PLz1c.u5XR1f4d6CEvQs1S2EnEMgwhaZ0LMTFr87CLG6eSaS2Muv1L7LfzD
 0bfhxwsJK2gGVSp8n_Gr_qv5MQVnG8n0mvqmEFo_qsBf5ASs18cPFGczGWQKhFGBsOg.OL8vTybg
 TVcy8dryM83OibmGfrszXi1rgUKpxYkTIxV7a7MIYThuSUa.EuLocGP579CvTiIeaNDXuq7nulBu
 j_Qvinqc6F2dAQeNj9tc7FfZ2PJskyi4U1jS9My.K6DtP1va4WC_Rz01FIsX6nnkkYp9hzm25rNw
 E1bH_F5wQFoQtKtA0Fz9USeZU_PbJFfYZPescdooP4DuFf0811NxL.sVcgVhzh2DD841HYf.49Y1
 YLwjxvailNNBUj5O6whtnBC6fTL09tzZ0iwkyl5CI.bhas23ysgcYxvNAze_zAw1xNC8HcDAgpDm
 3skJ7DkVkzgKc7xzdNsJXUhcnTfYkrZi_V4uwiRt3TF.Rk8i7AWodwzEUbeqjCng4pDs7bkyXm11
 P2i_6uWb3wIMXkGKKE73uMBz1yorOOtcnj0v1J0vJaH5iOam6hlXh3HVdNFLrVRV4QM0PhofZlFA
 7gInGhg6NMZH7JZ.vRWLIEJ997b6VaFo53FA9ntvg9aiIra0vi_X2VQi4CxV9SM1eyx53zd.gd7T
 EKhLWt_uIE8yVIz7WElnV3M9T20yz0WLsr1emt4U5DnzosSer1KSq4iKneGAPZgGMwXNp51725Dd
 TuKyR1qgqwELTjtGwTww9m87EHFkANFrLmAv.1yFE3R38J6KL_EUnTa1h90FWSPeslllLA0b5IWE
 LvVKtPN1o1uBB.qWxUegbDUaJMZwT0pKuBGg5r2_wSoFTvc5zTBZPLJd0Li8RtzLEnu5_BbHLzvB
 .2RzUWcc_XwoSfeIJS6qUEWPl4BUsxu9rRZywbFp4sQKvRqmAwR0EzSYTGoFtYB8DUh_VVd_snz6
 HgTJt0a3QgBbAZ5q1GSlY6LLbmnIe.Y3FNa8TMU2uU0TRSjVuV05EatEPcnsBdps7_YoesNaRQag
 cXLlq4lSiv.zs89t5hqL50muJ2RbdJRm5BhORoYXh3wN7K0lEQ4oBPeOysJyifFZ2kD3HC7bOMfe
 GtuTeAVbXzsYKRmQz9L3gVqxlFRVlvbGibLVLBomxr4G57aYzF0nQoQD6SVE17QiKzl.Xxbf.O_j
 xLocvHRT9oaP.6BilajxVJDs.y4uvZvA6k9w46tCk9Fjp1lQ6WpP_AAn5rIFIUWBvlukQo5jtGi4
 Np5S2LVlA2c4oOwgaQlCU8pH8IFatWbXI5jQL8pa0_WcIvVa_YVvpxnXfzhJ2Efa3WGeDtgJKR5P
 Yy9n52G1PPMMZmrSOamJAMto4XiNeNyE.umgUBlz_QidvUTGI.wfy91veOnGeJMW90CW9MZojvR1
 wAOCrqRV40BW3ShJyJiWLq5ee8AuMJ32hHsGa4Vi9_pVxtEvKYXMzgtE4oXiYhUtKqpL9rZgcmF_
 u86qCz.LCM5CssdGyChJccjLqoLEM7gdeqLYnkASv3YLtVajLEU6jlWoSje.vfxrsp2Z230iSvX.
 ycDx2AaHdprWg083lGMuywTCZUHzhWWNPqzT2oHd7hnsawqFkAYN8vdG7M6uY8Db7TYAU6aOLugB
 yUBjayuDavDzWr_QpBWoUxGZOTPWMhIT.iwUKugw0LPjgZe.AhS.A.EHw_BqlFvLNdEddLZPYzso
 cowF0FiesGZpgx7AEImVdeuX0yk2.vFVzbbDtsBD3b1rHyaKbhPFYQ3qv6HcCR288zOIYBgSU5u.
 bthP502Yt7H3VhuutHp1S4xbFOSRe1U.vkSkiJ8EOom8_CL4Ls7t2Rm4PZODHUs4V9XpjI7j1ahN
 3sRfOWP3E37043rEx.fEoXg0UspsQJerbASJSPZfyjNTMux3NKNDk3Fg1JRk-
X-Sonic-MF: <luangruo@HIDDEN>
X-Sonic-ID: 0b1e52af-4be9-4f0f-8449-c0df0252d4fd
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic315.consmr.mail.ne1.yahoo.com with HTTP; Mon, 3 Mar 2025 09:48:02 +0000
Received: by hermes--production-sg3-9fc94b8df-4rthq (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID d2afedd23a6e0002a30fe7e65ff9d9a7; 
 Mon, 03 Mar 2025 09:47:56 +0000 (UTC)
From: Po Lu <luangruo@HIDDEN>
To: Paul Eggert <eggert@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
In-Reply-To: <9a194d94-ccb8-4238-be6b-8a995f3aa503@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN>
 <86tt8fu6dh.fsf@HIDDEN> <87o6yn1st8.fsf@HIDDEN>
 <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN>
 <s1ra5a70vwv.fsf@HIDDEN>
 <2b5ac4cc-ea40-416a-9e12-9cedd8172a59@HIDDEN>
 <87ikoslvd4.fsf@HIDDEN>
 <fb2eeca2-6477-4bdb-b439-008f0b065441@HIDDEN>
 <87y0xoj9vz.fsf@HIDDEN>
 <9a194d94-ccb8-4238-be6b-8a995f3aa503@HIDDEN>
Date: Mon, 03 Mar 2025 17:47:50 +0800
Message-ID: <878qpmigxl.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Mailer: WebService/1.1.23369
 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo
Content-Length: 1660
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Pip Cet <pipcet@HIDDEN>, iura.mail@HIDDEN,
 Stefan Kangas <stefankangas@HIDDEN>, michael.albinus@HIDDEN,
 Eli Zaretskii <eliz@HIDDEN>, 76559 <at> debbugs.gnu.org, marian.iurie@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Paul Eggert <eggert@HIDDEN> writes:

> On 2025-03-01 21:10, Po Lu wrote:
>> It doesn't take control flow into account, but rather _every statement
>> operand_ in the current procedure that addresses an aggregate declared
>> in the same procedure.
>
> Although, as you mentioned, we could work around this wrong-code GCC
> bug by using -fno-tree-sra (something we already do for GCC pre-SSE2
> x86), we should avoid the tricky union locals that trigger the bug on
> x86-64 with gcc -flto. After all, these union locals make the code
> harder for humans to read, so removing them is a win regardless of the
> GCC bug. And if removing the union locals happens to work around the
> GCC bug then so much the better.

[...]

> +/* Store EVENT obtained at interrupt level into kbd_buffer, fifo.
> +   This is like kbd_buffer_store_event_hold, but for struct
> +   selection_input_event instead of struct input_event.
> +
> +   If HOLD_QUIT && HOLD_QUIT->kind != NO_EVENT, discard EVENT.
> +
> +   This is used to postpone the processing of the quit event until all
> +   subsequent input events have been parsed (and discarded).  */
> +
> +void
> +kbd_buffer_store_selection_event_hold
> +  (struct selection_input_event const *event,
> +   struct input_event const *hold_quit)

The patch is fine by me, but the line wrapping hereabouts is gruesome.
Please delete the const qualifiers and wrap the parameter list after
`event', since they probably will not assist code generation.

Also, come to think of it, I doubt it's appropriate for selection event
delivery (which is meant purely to be a transparent process to users) to
be influenced by hold_quit at all.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 3 Mar 2025 08:02:25 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Mar 03 03:02:25 2025
Received: from localhost ([127.0.0.1]:44144 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tp0kr-0000mF-68
	for submit <at> debbugs.gnu.org; Mon, 03 Mar 2025 03:02:25 -0500
Received: from mail.cs.ucla.edu ([131.179.128.66]:55270)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eggert@HIDDEN>)
 id 1tp0kn-0000lh-PZ
 for 76559 <at> debbugs.gnu.org; Mon, 03 Mar 2025 03:02:22 -0500
Received: from localhost (localhost [127.0.0.1])
 by mail.cs.ucla.edu (Postfix) with ESMTP id F40473C00FA86;
 Mon,  3 Mar 2025 00:02:15 -0800 (PST)
Received: from mail.cs.ucla.edu ([127.0.0.1])
 by localhost (mail.cs.ucla.edu [127.0.0.1]) (amavis, port 10032) with ESMTP
 id otbk7JpWHrUL; Mon,  3 Mar 2025 00:02:14 -0800 (PST)
Received: from localhost (localhost [127.0.0.1])
 by mail.cs.ucla.edu (Postfix) with ESMTP id 17D5C3C00FA88;
 Mon,  3 Mar 2025 00:02:14 -0800 (PST)
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.cs.ucla.edu 17D5C3C00FA88
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs.ucla.edu;
 s=9D0B346E-2AEB-11ED-9476-E14B719DCE6C; t=1740988934;
 bh=M5awaEvSFUkRBB5BFifjO2lXpJW4t6qUxJYYGcfsUaQ=;
 h=Message-ID:Date:MIME-Version:To:From;
 b=NK1T9vosGyBjQ4jqyMN6AzuMHkTp4jrCbleXG8N+SXiPfFADyagH616y8U73i8hHa
 gfgpcOj9nvUtpTqAoxWe4SwpiCfN5/FnpZFsdU/5BrPek1QB0yNS2NhiYCYlAqTHgZ
 uNsmt8F+k2ofEeEW6I6lHBmXG3BM6xTDHfT5mfpbdlbBaCs51x+A97tefrXeiaOezC
 +UTt2qTmrxLqYQb50gncICJ5CgiXbI2GUNSRDu94JT0L/owD4pDihzukQGixRXAG0T
 IZhOFybxL5SxuR0lvCFeifNFIxbvD1UA2bfDE1INjDFbIodZLUY9Dg42iwsdMisL4d
 KiClGeA5CEpZQ==
X-Virus-Scanned: amavis at mail.cs.ucla.edu
Received: from mail.cs.ucla.edu ([127.0.0.1])
 by localhost (mail.cs.ucla.edu [127.0.0.1]) (amavis, port 10026) with ESMTP
 id ABwpFFEzLwKN; Mon,  3 Mar 2025 00:02:13 -0800 (PST)
Received: from [192.168.254.12] (unknown [47.147.225.25])
 by mail.cs.ucla.edu (Postfix) with ESMTPSA id C34923C00FA86;
 Mon,  3 Mar 2025 00:02:13 -0800 (PST)
Content-Type: multipart/mixed; boundary="------------6CEHqd6aPgp0PJXDuFj20sDf"
Message-ID: <9a194d94-ccb8-4238-be6b-8a995f3aa503@HIDDEN>
Date: Mon, 3 Mar 2025 00:02:13 -0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
To: Po Lu <luangruo@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN> <86tt8fu6dh.fsf@HIDDEN>
 <87o6yn1st8.fsf@HIDDEN>
 <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN>
 <s1ra5a70vwv.fsf@HIDDEN>
 <2b5ac4cc-ea40-416a-9e12-9cedd8172a59@HIDDEN> <87ikoslvd4.fsf@HIDDEN>
 <fb2eeca2-6477-4bdb-b439-008f0b065441@HIDDEN> <87y0xoj9vz.fsf@HIDDEN>
Content-Language: en-US
From: Paul Eggert <eggert@HIDDEN>
Organization: UCLA Computer Science Department
In-Reply-To: <87y0xoj9vz.fsf@HIDDEN>
X-Debbugs-Envelope-To: 76559
Cc: Pip Cet <pipcet@HIDDEN>, iura.mail@HIDDEN,
 Stefan Kangas <stefankangas@HIDDEN>, michael.albinus@HIDDEN,
 Eli Zaretskii <eliz@HIDDEN>, 76559 <at> debbugs.gnu.org, marian.iurie@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>

This is a multi-part message in MIME format.
--------------6CEHqd6aPgp0PJXDuFj20sDf
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 2025-03-01 21:10, Po Lu wrote:
> It doesn't take control flow into account, but rather _every statement
> operand_ in the current procedure that addresses an aggregate declared
> in the same procedure.

Although, as you mentioned, we could work around this wrong-code GCC bug 
by using -fno-tree-sra (something we already do for GCC pre-SSE2 x86), 
we should avoid the tricky union locals that trigger the bug on x86-64 
with gcc -flto. After all, these union locals make the code harder for 
humans to read, so removing them is a win regardless of the GCC bug. And 
if removing the union locals happens to work around the GCC bug then so 
much the better.

Proposed patch attached.
--------------6CEHqd6aPgp0PJXDuFj20sDf
Content-Type: text/x-patch; charset=UTF-8;
 name="0001-Avoid-some-union-buffered_input_event-uses.patch"
Content-Disposition: attachment;
 filename="0001-Avoid-some-union-buffered_input_event-uses.patch"
Content-Transfer-Encoding: base64

RnJvbSA3M2EwNDI3NmY5Y2NiNTNhNjAwMmYzNzM5M2EwNjczYjQ2M2ZjMDE0IE1vbiBTZXAg
MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEVnZ2VydCA8ZWdnZXJ0QGNzLnVjbGEuZWR1
PgpEYXRlOiBTdW4sIDIgTWFyIDIwMjUgMjI6MDc6MDggLTA4MDAKU3ViamVjdDogW1BBVENI
XSBBdm9pZCBzb21lIHVuaW9uIGJ1ZmZlcmVkX2lucHV0X2V2ZW50IHVzZXMKClNpbXBsaWZ5
IGJ5IHVzaW5nIHNlcGFyYXRlIGxvY2FsIHZhcnMgZm9yIHN0cnVjdCBpbnB1dF9ldmVudCBh
bmQKc3RydWN0IHNlbGVjdGlvbl9pbnB1dF9ldmVudCwgcmF0aGVyIHRoYW4gYSBzaW5nbGUg
bG9jYWwgdmFyIHRoYXQKaXMgdGhlIHVuaW9uIG9mIHRoZSB0d28uICBUaGlzIG1ha2VzIHRo
ZSBjb2RlIGVhc2llciB0byBmb2xsb3cgYnkKdGhlIGh1bWFuIHJlYWRlciwgYW5kIHNob3Vs
ZCBoZWxwIGF2b2lkIEdDQyBidWcgMTE3NDIzCjxodHRwczovL2djYy5nbnUub3JnL2J1Z3pp
bGxhL3Nob3dfYnVnLmNnaT9pZD0xMTc0MjM+IGFuZAp0aGVyZWZvcmUgd29yayBhcm91bmQg
RW1hY3MgYnVnIDc2NTU5IDxodHRwczovL2J1Z3MuZ251Lm9yZy83NjU1OT4uCiogc3JjL2Fu
ZHJvaWR0ZXJtLmMgKGhhbmRsZV9vbmVfYW5kcm9pZF9ldmVudCk6Ciogc3JjL2d0a3V0aWwu
YyAoeGdfd2lkZ2V0X2tleV9wcmVzc19ldmVudF9jYik6Ciogc3JjL3BndGt0ZXJtLmMgKGV2
cV9mbHVzaCk6Ciogc3JjL3h0ZXJtLmMgKGhhbmRsZV9vbmVfeGV2ZW50KTogVXNlIHN0cnVj
dCBpbnB1dF9ldmVudCBhbmQKa2JkX2J1ZmZlcl9zdG9yZV9ldmVudF9ob2xkLCBvciBzdHJ1
Y3Qgc2VsZWN0aW9uX2lucHV0X2V2ZW50IGFuZAprYmRfYnVmZmVyX3N0b3JlX3NlbGVjdGlv
bl9ldmVudF9ob2xkLCByYXRoZXIgdGhhbiB1bmlvbgpidWZmZXJlZF9pbnB1dF9ldmVudCBh
bmQgdW5pb24gYnVmZmVyZWRfaW5wdXRfZXZlbnQuCiogc3JjL2tleWJvYXJkLmMgKGJld2Fy
ZV9sb25nX3Bhc3RlLCBtYXliZV9xdWl0X3doaWxlX25vX2lucHV0KToKTmV3IGZ1bmN0aW9u
cywgYnJva2VuIG91dCBmcm9tIGtiZF9idWZmZXJfc3RvcmVfYnVmZmVyZWRfZXZlbnQuCihr
YmRfYnVmZmVyX3N0b3JlX2V2ZW50X2hvbGQpOiBEZWZpbmUgaGVyZSwgd2l0aCBhIHNpbXBs
aWZpZWQKdmVyc2lvbiBvZiB0aGUgYm9keSBvZiB0aGUgb2xkIGtiZF9idWZmZXJfc3RvcmVf
YnVmZmVyZWRfZXZlbnQsCnJhdGhlciB0aGFuIGRlZmluaW5nIGluIGtleWJvYXJkLmguICBT
cGVjaWFsaXplIHRvIHN0cnVjdAppbnB1dF9ldmVudC4gIEZpcnN0IGFyZyBpcyBub3cgcG9p
bnRlci10by1jb25zdCwgZm9yIGNsYXJpdHkuCihrYmRfYnVmZmVyX3N0b3JlX3NlbGVjdGlv
bl9ldmVudF9ob2xkKTogTmV3IGZ1bmN0aW9uOyBpdCBpcwphIHNpbXBsaWZpZWQgdmVyc2lv
biBvZiB0aGUgb2xkIGtiZF9idWZmZXJfc3RvcmVfYnVmZmVyZWRfZXZlbnQsCnNwZWNpYWxp
emVkIHRvIHN0cnVjdCBzZWxlY3Rpb25faW5wdXRfZXZlbnQgYW5kIHdpdGggYSBmaXJzdAph
cmcgbm93IHBvaW50ZXItdG8tY29uc3QgZm9yIGNsYXJpdHkuCihpc19pZ25vcmVkX2V2ZW50
X2tpbmQpOiBBY2NlcHQgZW51bSBldmVudF9raW5kIGluc3RlYWQgb2YKdW5pb24gYnVmZmVy
ZWRfaW5wdXRfZXZlbnQuICBBbGwgY2FsbGVycyBjaGFuZ2VkLgoqIHNyYy9rZXlib2FyZC5o
IChrYmRfYnVmZmVyX3N0b3JlX2V2ZW50X2hvbGQpOgpSZW1vdmUgZGVmaW5pdGlvbiwgYXMg
a2V5Ym9hcmQuYyBub3cgZGVmaW5lcyBpdC4KKiBzcmMvcGd0a3Rlcm0uYyAoZXZxX2dyb3df
aWZfbmVlZGVkKTogTmV3IGZ1bmN0aW9uLgooZXZxX2VucXVldWUsIGV2cV9zZWxlY3Rpb25f
ZW5xdWV1ZSk6IFR3byBmdW5jdGlvbnMgbm93LApub3Qgb25lLiAgQXJncyBhcmUgbm93IHN0
cnVjdCBpbnB1dF9ldmVudCBjb25zdCAqIG9yCnN0cnVjdCBzZWxlY3Rpb25faW5wdXRfZXZl
bnQgY29uc3QgKiwgbm90CnVuaW9uIGJ1ZmZlcmVkX2lucHV0X2V2ZW50ICouICBBbGwgY2Fs
bGVycyBjaGFuZ2VkLgpUaGlzIGxldHMgdXMgc2ltcGxpZnkgdGhlIGNhbGxlcnMgc28gdGhh
dCB0aGV5IG5lZWQKbm90IHVzZSB0aGUgdW5pb24uCi0tLQogc3JjL2FuZHJvaWR0ZXJtLmMg
fCAxNzEgKysrKysrKy0tLS0tLS0KIHNyYy9ndGt1dGlsLmMgICAgIHwgIDQyICsrLS0KIHNy
Yy9rZXlib2FyZC5jICAgIHwgMTA1ICsrKysrKy0tLQogc3JjL2tleWJvYXJkLmggICAgfCAg
MTUgKy0KIHNyYy9wZ3RrdGVybS5jICAgIHwgNTgyICsrKysrKysrKysrKysrKysrKysrKysr
Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIHNyYy94dGVybS5jICAgICAgIHwgNDAyICsrKysr
KysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tCiA2IGZpbGVzIGNoYW5nZWQsIDY4NyBpbnNl
cnRpb25zKCspLCA2MzAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjL2FuZHJvaWR0
ZXJtLmMgYi9zcmMvYW5kcm9pZHRlcm0uYwppbmRleCAzY2I5ZWFiMzYwNi4uNzllZTM3NGYy
Y2EgMTAwNjQ0Ci0tLSBhL3NyYy9hbmRyb2lkdGVybS5jCisrKyBiL3NyYy9hbmRyb2lkdGVy
bS5jCkBAIC04MjcsNyArODI3LDcgQEAgaGFuZGxlX29uZV9hbmRyb2lkX2V2ZW50IChzdHJ1
Y3QgYW5kcm9pZF9kaXNwbGF5X2luZm8gKmRweWluZm8sCiAgIHVuaW9uIGFuZHJvaWRfZXZl
bnQgY29uZmlndXJlRXZlbnQ7CiAgIHN0cnVjdCBmcmFtZSAqZiwgKmFueSwgKm1vdXNlX2Zy
YW1lOwogICBNb3VzZV9ITEluZm8gKmhsaW5mbzsKLSAgdW5pb24gYnVmZmVyZWRfaW5wdXRf
ZXZlbnQgaW5ldjsKKyAgc3RydWN0IGlucHV0X2V2ZW50IGluZXY7CiAgIGludCBtb2RpZmll
cnMsIGNvdW50LCBkb19oZWxwOwogICBzdHJ1Y3QgYW5kcm9pZF90b3VjaF9wb2ludCAqdG91
Y2hwb2ludCwgKipsYXN0OwogICBMaXNwX09iamVjdCB3aW5kb3c7CkBAIC04NTEsNyArODUx
LDcgQEAgaGFuZGxlX29uZV9hbmRyb2lkX2V2ZW50IChzdHJ1Y3QgYW5kcm9pZF9kaXNwbGF5
X2luZm8gKmRweWluZm8sCiAgIGlmIChhbnkgJiYgYW55LT53YWl0X2V2ZW50X3R5cGUgPT0g
ZXZlbnQtPnR5cGUpCiAgICAgYW55LT53YWl0X2V2ZW50X3R5cGUgPSAwOyAvKiBJbmRpY2F0
ZXMgd2UgZ290IGl0LiAgKi8KIAotICBFVkVOVF9JTklUIChpbmV2LmllKTsKKyAgRVZFTlRf
SU5JVCAoaW5ldik7CiAKICAgc3dpdGNoIChldmVudC0+dHlwZSkKICAgICB7CkBAIC05MjIs
OCArOTIyLDggQEAgaGFuZGxlX29uZV9hbmRyb2lkX2V2ZW50IChzdHJ1Y3QgYW5kcm9pZF9k
aXNwbGF5X2luZm8gKmRweWluZm8sCiAJaWYgKCFGUkFNRV9UT09MVElQX1AgKGYpCiAJICAg
ICYmIChvbGRfbGVmdCAhPSBmLT5sZWZ0X3BvcyB8fCBvbGRfdG9wICE9IGYtPnRvcF9wb3Mp
KQogCSAgewotCSAgICBpbmV2LmllLmtpbmQgPSBNT1ZFX0ZSQU1FX0VWRU5UOwotCSAgICBY
U0VURlJBTUUgKGluZXYuaWUuZnJhbWVfb3Jfd2luZG93LCBmKTsKKwkgICAgaW5ldi5raW5k
ID0gTU9WRV9GUkFNRV9FVkVOVDsKKwkgICAgWFNFVEZSQU1FIChpbmV2LmZyYW1lX29yX3dp
bmRvdywgZik7CiAJICB9CiAKIAlpZiAoZiAmJiBGUkFNRV9PVVRQVVRfREFUQSAoZiktPm5l
ZWRfY3Vyc29yX3VwZGF0ZXMpCkBAIC05ODIsMTAgKzk4MiwxMCBAQCBoYW5kbGVfb25lX2Fu
ZHJvaWRfZXZlbnQgKHN0cnVjdCBhbmRyb2lkX2Rpc3BsYXlfaW5mbyAqZHB5aW5mbywKIAlt
ZW1zZXQgKCZjb21wb3NlX3N0YXR1cywgMCwgc2l6ZW9mIChjb21wb3NlX3N0YXR1cykpOwog
CiAgICAgICAvKiBDb21tb24gZm9yIGFsbCBrZXlzeW0gaW5wdXQgZXZlbnRzLiAgKi8KLSAg
ICAgIFhTRVRGUkFNRSAoaW5ldi5pZS5mcmFtZV9vcl93aW5kb3csIGFueSk7Ci0gICAgICBp
bmV2LmllLm1vZGlmaWVycworICAgICAgWFNFVEZSQU1FIChpbmV2LmZyYW1lX29yX3dpbmRv
dywgYW55KTsKKyAgICAgIGluZXYubW9kaWZpZXJzCiAJPSBhbmRyb2lkX2FuZHJvaWRfdG9f
ZW1hY3NfbW9kaWZpZXJzIChkcHlpbmZvLCBtb2RpZmllcnMpOwotICAgICAgaW5ldi5pZS50
aW1lc3RhbXAgPSBldmVudC0+eGtleS50aW1lOworICAgICAgaW5ldi50aW1lc3RhbXAgPSBl
dmVudC0+eGtleS50aW1lOwogCiAgICAgICBrZXlzeW0gPSBldmVudC0+eGtleS5rZXljb2Rl
OwogCkBAIC0xMDE5LDggKzEwMTksOCBAQCBoYW5kbGVfb25lX2FuZHJvaWRfZXZlbnQgKHN0
cnVjdCBhbmRyb2lkX2Rpc3BsYXlfaW5mbyAqZHB5aW5mbywKIAogCWlmIChldmVudC0+eGtl
eS5rZXljb2RlID09ICh1aW50MzJfdCkgLTEpCiAJICB7Ci0JICAgIGluZXYuaWUua2luZCA9
IFBSRUVESVRfVEVYVF9FVkVOVDsKLQkgICAgaW5ldi5pZS5hcmcgPSBRbmlsOworCSAgICBp
bmV2LmtpbmQgPSBQUkVFRElUX1RFWFRfRVZFTlQ7CisJICAgIGluZXYuYXJnID0gUW5pbDsK
IAogCSAgICAvKiBJZiB0ZXh0IHdhcyBsb29rZWQgdXAsIGRlY29kZSBpdCBhbmQgbWFrZSBp
dCB0aGUKIAkgICAgICAgcHJlZWRpdCB0ZXh0LiAgKi8KQEAgLTEwMjgsNyArMTAyOCw3IEBA
IGhhbmRsZV9vbmVfYW5kcm9pZF9ldmVudCAoc3RydWN0IGFuZHJvaWRfZGlzcGxheV9pbmZv
ICpkcHlpbmZvLAogCSAgICBpZiAoc3RhdHVzX3JldHVybiA9PSBBTkRST0lEX0xPT0tVUF9D
SEFSUyAmJiBuY2hhcnMpCiAJICAgICAgewogCQljb3B5X2J1ZnB0cltuY2hhcnNdID0gMDsK
LQkJaW5ldi5pZS5hcmcgPSBmcm9tX3VuaWNvZGVfYnVmZmVyIChjb3B5X2J1ZnB0cik7CisJ
CWluZXYuYXJnID0gZnJvbV91bmljb2RlX2J1ZmZlciAoY29weV9idWZwdHIpOwogCSAgICAg
IH0KIAogCSAgICBnb3RvIGRvbmVfa2V5c3ltOwpAQCAtMTA0NywxMSArMTA0NywxMSBAQCBo
YW5kbGVfb25lX2FuZHJvaWRfZXZlbnQgKHN0cnVjdCBhbmRyb2lkX2Rpc3BsYXlfaW5mbyAq
ZHB5aW5mbywKIAkgIC8qIERlYWwgd2l0aCBjaGFyYWN0ZXJzLiAgKi8KIAogCSAgaWYgKGNv
cHlfYnVmcHRyWzBdIDwgMTI4KQotCSAgICBpbmV2LmllLmtpbmQgPSBBU0NJSV9LRVlTVFJP
S0VfRVZFTlQ7CisJICAgIGluZXYua2luZCA9IEFTQ0lJX0tFWVNUUk9LRV9FVkVOVDsKIAkg
IGVsc2UKLQkgICAgaW5ldi5pZS5raW5kID0gTVVMVElCWVRFX0NIQVJfS0VZU1RST0tFX0VW
RU5UOworCSAgICBpbmV2LmtpbmQgPSBNVUxUSUJZVEVfQ0hBUl9LRVlTVFJPS0VfRVZFTlQ7
CiAKLQkgIGluZXYuaWUuY29kZSA9IGNvcHlfYnVmcHRyWzBdOworCSAgaW5ldi5jb2RlID0g
Y29weV9idWZwdHJbMF07CiAJfQogICAgICAgZWxzZSBpZiAobmNoYXJzIDwgMiAmJiBrZXlz
eW0pCiAJewpAQCAtMTA2MSw4ICsxMDYxLDggQEAgaGFuZGxlX29uZV9hbmRyb2lkX2V2ZW50
IChzdHJ1Y3QgYW5kcm9pZF9kaXNwbGF5X2luZm8gKmRweWluZm8sCiAKIAkgIC8qIE5leHQs
IGRlYWwgd2l0aCBzcGVjaWFsIGBgY2hhcmFjdGVycycnIGJ5IGdpdmluZyB0aGUKIAkgICAg
IGtleWNvZGUgdG8ga2V5Ym9hcmQuYy4gICovCi0JICBpbmV2LmllLmtpbmQgPSBOT05fQVND
SUlfS0VZU1RST0tFX0VWRU5UOwotCSAgaW5ldi5pZS5jb2RlID0ga2V5c3ltOworCSAgaW5l
di5raW5kID0gTk9OX0FTQ0lJX0tFWVNUUk9LRV9FVkVOVDsKKwkgIGluZXYuY29kZSA9IGtl
eXN5bTsKIAl9CiAgICAgICBlbHNlCiAJewpAQCAtMTA3MCwyNSArMTA3MCwyNSBAQCBoYW5k
bGVfb25lX2FuZHJvaWRfZXZlbnQgKHN0cnVjdCBhbmRyb2lkX2Rpc3BsYXlfaW5mbyAqZHB5
aW5mbywKIAogCSAgZm9yIChpID0gMDsgaSA8IG5jaGFyczsgKytpKQogCSAgICB7Ci0JICAg
ICAgaW5ldi5pZS5raW5kID0gKFNJTkdMRV9CWVRFX0NIQVJfUCAoY29weV9idWZwdHJbaV0p
Ci0JCQkgICAgICA/IEFTQ0lJX0tFWVNUUk9LRV9FVkVOVAotCQkJICAgICAgOiBNVUxUSUJZ
VEVfQ0hBUl9LRVlTVFJPS0VfRVZFTlQpOwotCSAgICAgIGluZXYuaWUuY29kZSA9IGNvcHlf
YnVmcHRyW2ldOworCSAgICAgIGluZXYua2luZCA9IChTSU5HTEVfQllURV9DSEFSX1AgKGNv
cHlfYnVmcHRyW2ldKQorCQkJICAgPyBBU0NJSV9LRVlTVFJPS0VfRVZFTlQKKwkJCSAgIDog
TVVMVElCWVRFX0NIQVJfS0VZU1RST0tFX0VWRU5UKTsKKwkgICAgICBpbmV2LmNvZGUgPSBj
b3B5X2J1ZnB0cltpXTsKIAogCSAgICAgIC8qIElmIHRoZSBjaGFyYWN0ZXIgaXMgYWN0dWFs
bHkgJ1xuJywgdGhlbiBjaGFuZ2UgdGhpcwogCQkgdG8gUkVULiAgKi8KIAogCSAgICAgIGlm
IChjb3B5X2J1ZnB0cltpXSA9PSAnXG4nKQogCQl7Ci0JCSAgaW5ldi5pZS5raW5kID0gTk9O
X0FTQ0lJX0tFWVNUUk9LRV9FVkVOVDsKLQkJICBpbmV2LmllLmNvZGUgPSA2NjsKKwkJICBp
bmV2LmtpbmQgPSBOT05fQVNDSUlfS0VZU1RST0tFX0VWRU5UOworCQkgIGluZXYuY29kZSA9
IDY2OwogCQl9CiAKLQkgICAgICBrYmRfYnVmZmVyX3N0b3JlX2J1ZmZlcmVkX2V2ZW50ICgm
aW5ldiwgaG9sZF9xdWl0KTsKKwkgICAgICBrYmRfYnVmZmVyX3N0b3JlX2V2ZW50X2hvbGQg
KCZpbmV2LCBob2xkX3F1aXQpOwogCSAgICB9CiAKIAkgIGNvdW50ICs9IG5jaGFyczsKLQkg
IGluZXYuaWUua2luZCA9IE5PX0VWRU5UOyAgLyogQWxyZWFkeSBzdG9yZWQgYWJvdmUuICAq
LworCSAgaW5ldi5raW5kID0gTk9fRVZFTlQ7ICAvKiBBbHJlYWR5IHN0b3JlZCBhYm92ZS4g
ICovCiAJfQogCiAgICAgICBnb3RvIGRvbmVfa2V5c3ltOwpAQCAtMTEwOCw3ICsxMTA4LDcg
QEAgaGFuZGxlX29uZV9hbmRyb2lkX2V2ZW50IChzdHJ1Y3QgYW5kcm9pZF9kaXNwbGF5X2lu
Zm8gKmRweWluZm8sCiAKICAgICBjYXNlIEFORFJPSURfRk9DVVNfSU46CiAgICAgY2FzZSBB
TkRST0lEX0ZPQ1VTX09VVDoKLSAgICAgIGFuZHJvaWRfZGV0ZWN0X2ZvY3VzX2NoYW5nZSAo
ZHB5aW5mbywgYW55LCBldmVudCwgJmluZXYuaWUpOworICAgICAgYW5kcm9pZF9kZXRlY3Rf
Zm9jdXNfY2hhbmdlIChkcHlpbmZvLCBhbnksIGV2ZW50LCAmaW5ldik7CiAgICAgICBnb3Rv
IE9USEVSOwogCiAgICAgY2FzZSBBTkRST0lEX1dJTkRPV19BQ1RJT046CkBAIC0xMTM2LDgg
KzExMzYsOCBAQCBoYW5kbGVfb25lX2FuZHJvaWRfZXZlbnQgKHN0cnVjdCBhbmRyb2lkX2Rp
c3BsYXlfaW5mbyAqZHB5aW5mbywKIAkgICAgICBpZiAoIWYpCiAJCWdvdG8gT1RIRVI7CiAK
LQkgICAgICBpbmV2LmllLmtpbmQgPSBERUxFVEVfV0lORE9XX0VWRU5UOwotCSAgICAgIFhT
RVRGUkFNRSAoaW5ldi5pZS5mcmFtZV9vcl93aW5kb3csIGYpOworCSAgICAgIGluZXYua2lu
ZCA9IERFTEVURV9XSU5ET1dfRVZFTlQ7CisJICAgICAgWFNFVEZSQU1FIChpbmV2LmZyYW1l
X29yX3dpbmRvdywgZik7CiAJICAgIH0KIAl9CiAKQEAgLTExOTYsOCArMTE5Niw4IEBAIGhh
bmRsZV9vbmVfYW5kcm9pZF9ldmVudCAoc3RydWN0IGFuZHJvaWRfZGlzcGxheV9pbmZvICpk
cHlpbmZvLAogCQkgICYmICFFUSAod2luZG93LCBsYXN0X21vdXNlX3dpbmRvdykKIAkJICAm
JiAhRVEgKHdpbmRvdywgc2VsZWN0ZWRfd2luZG93KSkKIAkJewotCQkgIGluZXYuaWUua2lu
ZCA9IFNFTEVDVF9XSU5ET1dfRVZFTlQ7Ci0JCSAgaW5ldi5pZS5mcmFtZV9vcl93aW5kb3cg
PSB3aW5kb3c7CisJCSAgaW5ldi5raW5kID0gU0VMRUNUX1dJTkRPV19FVkVOVDsKKwkJICBp
bmV2LmZyYW1lX29yX3dpbmRvdyA9IHdpbmRvdzsKIAkJfQogCiAJICAgICAgLyogUmVtZW1i
ZXIgdGhlIGxhc3Qgd2luZG93IHdoZXJlIHdlIHNhdyB0aGUgbW91c2UuICAqLwpAQCAtMTM3
OCwxMCArMTM3OCwxMCBAQCBoYW5kbGVfb25lX2FuZHJvaWRfZXZlbnQgKHN0cnVjdCBhbmRy
b2lkX2Rpc3BsYXlfaW5mbyAqZHB5aW5mbywKIAkgIGlmICghKHRhYl9iYXJfcCAmJiBOSUxQ
ICh0YWJfYmFyX2FyZykpICYmICF0b29sX2Jhcl9wKQogCSAgICBpZiAoISBwb3B1cF9hY3Rp
dmF0ZWQgKCkpCiAJICAgICAgewotCQlhbmRyb2lkX2NvbnN0cnVjdF9tb3VzZV9jbGljayAo
JmluZXYuaWUsICZldmVudC0+eGJ1dHRvbiwgZik7CisJCWFuZHJvaWRfY29uc3RydWN0X21v
dXNlX2NsaWNrICgmaW5ldiwgJmV2ZW50LT54YnV0dG9uLCBmKTsKIAogCQlpZiAoIU5JTFAg
KHRhYl9iYXJfYXJnKSkKLQkJICBpbmV2LmllLmFyZyA9IHRhYl9iYXJfYXJnOworCQkgIGlu
ZXYuYXJnID0gdGFiX2Jhcl9hcmc7CiAJICAgICAgfQogCX0KIApAQCAtMTQyNCw4ICsxNDI0
LDggQEAgaGFuZGxlX29uZV9hbmRyb2lkX2V2ZW50IChzdHJ1Y3QgYW5kcm9pZF9kaXNwbGF5
X2luZm8gKmRweWluZm8sCiAJICAvKiBTaW1wbHkgdXBkYXRlIHRoZSB0b29sIHBvc2l0aW9u
IGFuZCBzZW5kIGFuIHVwZGF0ZS4gICovCiAJICB0b3VjaHBvaW50LT54ID0gZXZlbnQtPnRv
dWNoLng7CiAJICB0b3VjaHBvaW50LT55ID0gZXZlbnQtPnRvdWNoLnk7Ci0JICBhbmRyb2lk
X3VwZGF0ZV90b29scyAoYW55LCAmaW5ldi5pZSk7Ci0JICBpbmV2LmllLnRpbWVzdGFtcCA9
IGV2ZW50LT50b3VjaC50aW1lOworCSAgYW5kcm9pZF91cGRhdGVfdG9vbHMgKGFueSwgJmlu
ZXYpOworCSAgaW5ldi50aW1lc3RhbXAgPSBldmVudC0+dG91Y2gudGltZTsKIAogCSAgZ290
byBPVEhFUjsKIAl9CkBAIC0xNDk4LDEyICsxNDk4LDEyIEBAIGhhbmRsZV9vbmVfYW5kcm9p
ZF9ldmVudCAoc3RydWN0IGFuZHJvaWRfZGlzcGxheV9pbmZvICpkcHlpbmZvLAogCX0KIAog
ICAgICAgLyogTm93IGdlbmVyYXRlIHRoZSBFbWFjcyBldmVudC4gICovCi0gICAgICBpbmV2
LmllLmtpbmQgPSBUT1VDSFNDUkVFTl9CRUdJTl9FVkVOVDsKLSAgICAgIGluZXYuaWUudGlt
ZXN0YW1wID0gZXZlbnQtPnRvdWNoLnRpbWU7Ci0gICAgICBYU0VURlJBTUUgKGluZXYuaWUu
ZnJhbWVfb3Jfd2luZG93LCBhbnkpOwotICAgICAgWFNFVElOVCAoaW5ldi5pZS54LCBldmVu
dC0+dG91Y2gueCk7Ci0gICAgICBYU0VUSU5UIChpbmV2LmllLnksIGV2ZW50LT50b3VjaC55
KTsKLSAgICAgIFhTRVRJTlQgKGluZXYuaWUuYXJnLCBldmVudC0+dG91Y2gucG9pbnRlcl9p
ZCk7CisgICAgICBpbmV2LmtpbmQgPSBUT1VDSFNDUkVFTl9CRUdJTl9FVkVOVDsKKyAgICAg
IGluZXYudGltZXN0YW1wID0gZXZlbnQtPnRvdWNoLnRpbWU7CisgICAgICBYU0VURlJBTUUg
KGluZXYuZnJhbWVfb3Jfd2luZG93LCBhbnkpOworICAgICAgWFNFVElOVCAoaW5ldi54LCBl
dmVudC0+dG91Y2gueCk7CisgICAgICBYU0VUSU5UIChpbmV2LnksIGV2ZW50LT50b3VjaC55
KTsKKyAgICAgIFhTRVRJTlQgKGluZXYuYXJnLCBldmVudC0+dG91Y2gucG9pbnRlcl9pZCk7
CiAKICAgICAgIGdvdG8gT1RIRVI7CiAKQEAgLTE1MjYsOCArMTUyNiw4IEBAIGhhbmRsZV9v
bmVfYW5kcm9pZF9ldmVudCAoc3RydWN0IGFuZHJvaWRfZGlzcGxheV9pbmZvICpkcHlpbmZv
LAogCiAgICAgICB0b3VjaHBvaW50LT54ID0gZXZlbnQtPnRvdWNoLng7CiAgICAgICB0b3Vj
aHBvaW50LT55ID0gZXZlbnQtPnRvdWNoLnk7Ci0gICAgICBhbmRyb2lkX3VwZGF0ZV90b29s
cyAoYW55LCAmaW5ldi5pZSk7Ci0gICAgICBpbmV2LmllLnRpbWVzdGFtcCA9IGV2ZW50LT50
b3VjaC50aW1lOworICAgICAgYW5kcm9pZF91cGRhdGVfdG9vbHMgKGFueSwgJmluZXYpOwor
ICAgICAgaW5ldi50aW1lc3RhbXAgPSBldmVudC0+dG91Y2gudGltZTsKIAogICAgICAgZ290
byBPVEhFUjsKIApAQCAtMTU2OSwxOCArMTU2OSwxOCBAQCBoYW5kbGVfb25lX2FuZHJvaWRf
ZXZlbnQgKHN0cnVjdCBhbmRyb2lkX2Rpc3BsYXlfaW5mbyAqZHB5aW5mbywKIAkJIGdyYWJi
ZWQgYnkgdGhlIHRvb2wgYmFyKS4gICovCiAJICAgICAgeGZyZWUgKHRvdWNocG9pbnQpOwog
Ci0JICAgICAgaW5ldi5pZS5raW5kID0gVE9VQ0hTQ1JFRU5fRU5EX0VWRU5UOwotCSAgICAg
IGluZXYuaWUudGltZXN0YW1wID0gZXZlbnQtPnRvdWNoLnRpbWU7CisJICAgICAgaW5ldi5r
aW5kID0gVE9VQ0hTQ1JFRU5fRU5EX0VWRU5UOworCSAgICAgIGluZXYudGltZXN0YW1wID0g
ZXZlbnQtPnRvdWNoLnRpbWU7CiAKIAkgICAgICAvKiBSZXBvcnQgd2hldGhlciB0aGUgc2Vx
dWVuY2UgaGFzIGJlZW4gY2FuY2VsZWQuICAqLwogCiAJICAgICAgaWYgKGV2ZW50LT50b3Vj
aC5mbGFncyAmIEFORFJPSURfVE9VQ0hfU0VRVUVOQ0VfQ0FOQ0VMRUQpCi0JCWluZXYuaWUu
bW9kaWZpZXJzID0gMTsKKwkJaW5ldi5tb2RpZmllcnMgPSAxOwogCi0JICAgICAgWFNFVEZS
QU1FIChpbmV2LmllLmZyYW1lX29yX3dpbmRvdywgYW55KTsKLQkgICAgICBYU0VUSU5UIChp
bmV2LmllLngsIGV2ZW50LT50b3VjaC54KTsKLQkgICAgICBYU0VUSU5UIChpbmV2LmllLnks
IGV2ZW50LT50b3VjaC55KTsKLQkgICAgICBYU0VUSU5UIChpbmV2LmllLmFyZywgZXZlbnQt
PnRvdWNoLnBvaW50ZXJfaWQpOworCSAgICAgIFhTRVRGUkFNRSAoaW5ldi5mcmFtZV9vcl93
aW5kb3csIGFueSk7CisJICAgICAgWFNFVElOVCAoaW5ldi54LCBldmVudC0+dG91Y2gueCk7
CisJICAgICAgWFNFVElOVCAoaW5ldi55LCBldmVudC0+dG91Y2gueSk7CisJICAgICAgWFNF
VElOVCAoaW5ldi5hcmcsIGV2ZW50LT50b3VjaC5wb2ludGVyX2lkKTsKIAogCSAgICAgIC8q
IEJyZWFrIG91dCBvZiB0aGUgbG9vcC4gICovCiAJICAgICAgZ290byBPVEhFUjsKQEAgLTE2
MjksMjQgKzE2MjksMjQgQEAgaGFuZGxlX29uZV9hbmRyb2lkX2V2ZW50IChzdHJ1Y3QgYW5k
cm9pZF9kaXNwbGF5X2luZm8gKmRweWluZm8sCiAJICAgIH0KIAogCSAgLyogRGV0ZXJtaW5l
IHdoYXQga2luZCBvZiBldmVudCB0byBzZW5kLiAgKi8KLQkgIGluZXYuaWUua2luZCA9ICgo
ZmFicyAod2hlZWxfZXZlbnRfeSkKKwkgIGluZXYua2luZCA9ICgoZmFicyAod2hlZWxfZXZl
bnRfeSkKIAkJCSAgID49IGZhYnMgKHdoZWVsX2V2ZW50X3gpKQogCQkJICA/IFdIRUVMX0VW
RU5UIDogSE9SSVpfV0hFRUxfRVZFTlQpOwotCSAgaW5ldi5pZS50aW1lc3RhbXAgPSBldmVu
dC0+d2hlZWwudGltZTsKKwkgIGluZXYudGltZXN0YW1wID0gZXZlbnQtPndoZWVsLnRpbWU7
CiAKIAkgIC8qIFNldCB0aGUgZXZlbnQgY29vcmRpbmF0ZXMuICAqLwotCSAgWFNFVElOVCAo
aW5ldi5pZS54LCBldmVudC0+d2hlZWwueCk7Ci0JICBYU0VUSU5UIChpbmV2LmllLnksIGV2
ZW50LT53aGVlbC55KTsKKwkgIFhTRVRJTlQgKGluZXYueCwgZXZlbnQtPndoZWVsLngpOwor
CSAgWFNFVElOVCAoaW5ldi55LCBldmVudC0+d2hlZWwueSk7CiAKIAkgIC8qIFNldCB0aGUg
ZnJhbWUuICAqLwotCSAgWFNFVEZSQU1FIChpbmV2LmllLmZyYW1lX29yX3dpbmRvdywgYW55
KTsKKwkgIFhTRVRGUkFNRSAoaW5ldi5mcmFtZV9vcl93aW5kb3csIGFueSk7CiAKIAkgIC8q
IEZpZ3VyZSBvdXQgdGhlIHNjcm9sbCBkaXJlY3Rpb24uICAqLwotCSAgaW5ldi5pZS5tb2Rp
ZmllcnMgPSAoc2lnbmJpdCAoKGZhYnMgKHdoZWVsX2V2ZW50X3gpCi0JCQkJCSA+PSBmYWJz
ICh3aGVlbF9ldmVudF95KSkKLQkJCQkJPyB3aGVlbF9ldmVudF94Ci0JCQkJCTogd2hlZWxf
ZXZlbnRfeSkKLQkJCSAgICAgICA/IGRvd25fbW9kaWZpZXIgOiB1cF9tb2RpZmllcik7CisJ
ICBpbmV2Lm1vZGlmaWVycyA9IChzaWduYml0ICgoZmFicyAod2hlZWxfZXZlbnRfeCkKKwkJ
CQkgICAgICA+PSBmYWJzICh3aGVlbF9ldmVudF95KSkKKwkJCQkgICAgID8gd2hlZWxfZXZl
bnRfeAorCQkJCSAgICAgOiB3aGVlbF9ldmVudF95KQorCQkJICAgID8gZG93bl9tb2RpZmll
ciA6IHVwX21vZGlmaWVyKTsKIAogCSAgLyogRmlndXJlIG91dCBob3cgbXVjaCB0byBzY2Fs
ZSB0aGUgZGVsdGFzIGJ5LiAgKi8KIAkgIHdpbmRvdyA9IHdpbmRvd19mcm9tX2Nvb3JkaW5h
dGVzIChhbnksIGV2ZW50LT53aGVlbC54LApAQCAtMTY2NCwxNiArMTY2NCwxNCBAQCBoYW5k
bGVfb25lX2FuZHJvaWRfZXZlbnQgKHN0cnVjdCBhbmRyb2lkX2Rpc3BsYXlfaW5mbyAqZHB5
aW5mbywKIAkgIHNjcm9sbF91bml0ID0gcG93IChzY3JvbGxfaGVpZ2h0LCAyLjAgLyAzLjAp
OwogCiAJICAvKiBBZGQgdGhlIGtleWJvYXJkIG1vZGlmaWVycy4gICovCi0JICBpbmV2Lmll
Lm1vZGlmaWVycworCSAgaW5ldi5tb2RpZmllcnMKIAkgICAgfD0gYW5kcm9pZF9hbmRyb2lk
X3RvX2VtYWNzX21vZGlmaWVycyAoZHB5aW5mbywKIAkJCQkJCSAgIGV2ZW50LT53aGVlbC5z
dGF0ZSk7CiAKIAkgIC8qIEZpbmFsbHkgaW5jbHVkZSB0aGUgc2Nyb2xsIGRlbHRhcy4gICov
Ci0JICBpbmV2LmllLmFyZyA9IGxpc3QzIChRbmlsLAotCQkJICAgICAgIG1ha2VfZmxvYXQg
KHdoZWVsX2V2ZW50X3gKLQkJCQkJICAgKiBzY3JvbGxfdW5pdCksCi0JCQkgICAgICAgbWFr
ZV9mbG9hdCAod2hlZWxfZXZlbnRfeQotCQkJCQkgICAqIHNjcm9sbF91bml0KSk7CisJICBp
bmV2LmFyZyA9IGxpc3QzIChRbmlsLAorCQkJICAgIG1ha2VfZmxvYXQgKHdoZWVsX2V2ZW50
X3ggKiBzY3JvbGxfdW5pdCksCisJCQkgICAgbWFrZV9mbG9hdCAod2hlZWxfZXZlbnRfeSAq
IHNjcm9sbF91bml0KSk7CiAKIAkgIHdoZWVsX2V2ZW50X3ggPSAwLjA7CiAJICB3aGVlbF9l
dmVudF95ID0gMC4wOwpAQCAtMTY5Myw4ICsxNjkxLDggQEAgaGFuZGxlX29uZV9hbmRyb2lk
X2V2ZW50IChzdHJ1Y3QgYW5kcm9pZF9kaXNwbGF5X2luZm8gKmRweWluZm8sCiAgICAgICBT
RVRfRlJBTUVfVklTSUJMRSAoYW55LCBmYWxzZSk7CiAgICAgICBTRVRfRlJBTUVfSUNPTklG
SUVEIChhbnksIHRydWUpOwogCi0gICAgICBpbmV2LmllLmtpbmQgPSBJQ09OSUZZX0VWRU5U
OwotICAgICAgWFNFVEZSQU1FIChpbmV2LmllLmZyYW1lX29yX3dpbmRvdywgYW55KTsKKyAg
ICAgIGluZXYua2luZCA9IElDT05JRllfRVZFTlQ7CisgICAgICBYU0VURlJBTUUgKGluZXYu
ZnJhbWVfb3Jfd2luZG93LCBhbnkpOwogICAgICAgZ290byBPVEhFUjsKIAogICAgIGNhc2Ug
QU5EUk9JRF9ERUlDT05JRklFRDoKQEAgLTE3MDgsOCArMTcwNiw4IEBAIGhhbmRsZV9vbmVf
YW5kcm9pZF9ldmVudCAoc3RydWN0IGFuZHJvaWRfZGlzcGxheV9pbmZvICpkcHlpbmZvLAog
ICAgICAgU0VUX0ZSQU1FX1ZJU0lCTEUgKGFueSwgdHJ1ZSk7CiAgICAgICBTRVRfRlJBTUVf
SUNPTklGSUVEIChhbnksIGZhbHNlKTsKIAotICAgICAgaW5ldi5pZS5raW5kID0gREVJQ09O
SUZZX0VWRU5UOwotICAgICAgWFNFVEZSQU1FIChpbmV2LmllLmZyYW1lX29yX3dpbmRvdywg
YW55KTsKKyAgICAgIGluZXYua2luZCA9IERFSUNPTklGWV9FVkVOVDsKKyAgICAgIFhTRVRG
UkFNRSAoaW5ldi5mcmFtZV9vcl93aW5kb3csIGFueSk7CiAgICAgICBnb3RvIE9USEVSOwog
CiAgICAgICAvKiBDb250ZXh0IG1lbnUgaGFuZGxpbmcuICAqLwpAQCAtMTc1NywxMiArMTc1
NSwxMiBAQCBoYW5kbGVfb25lX2FuZHJvaWRfZXZlbnQgKHN0cnVjdCBhbmRyb2lkX2Rpc3Bs
YXlfaW5mbyAqZHB5aW5mbywKIAlnb3RvIE9USEVSOwogCiAgICAgICAvKiBHZW5lcmF0ZSBh
IGRyYWcgYW5kIGRyb3AgZXZlbnQgdG8gY29udmV5IGl0cyBwb3NpdGlvbi4gICovCi0gICAg
ICBpbmV2LmllLmtpbmQgPSBEUkFHX05fRFJPUF9FVkVOVDsKLSAgICAgIFhTRVRGUkFNRSAo
aW5ldi5pZS5mcmFtZV9vcl93aW5kb3csIGFueSk7Ci0gICAgICBpbmV2LmllLnRpbWVzdGFt
cCA9IEFORFJPSURfQ1VSUkVOVF9USU1FOwotICAgICAgWFNFVElOVCAoaW5ldi5pZS54LCBl
dmVudC0+ZG5kLngpOwotICAgICAgWFNFVElOVCAoaW5ldi5pZS55LCBldmVudC0+ZG5kLnkp
OwotICAgICAgaW5ldi5pZS5hcmcgPSBGY29ucyAoaW5ldi5pZS54LCBpbmV2LmllLnkpOwor
ICAgICAgaW5ldi5raW5kID0gRFJBR19OX0RST1BfRVZFTlQ7CisgICAgICBYU0VURlJBTUUg
KGluZXYuZnJhbWVfb3Jfd2luZG93LCBhbnkpOworICAgICAgaW5ldi50aW1lc3RhbXAgPSBB
TkRST0lEX0NVUlJFTlRfVElNRTsKKyAgICAgIFhTRVRJTlQgKGluZXYueCwgZXZlbnQtPmRu
ZC54KTsKKyAgICAgIFhTRVRJTlQgKGluZXYueSwgZXZlbnQtPmRuZC55KTsKKyAgICAgIGlu
ZXYuYXJnID0gRmNvbnMgKGluZXYueCwgaW5ldi55KTsKICAgICAgIGdvdG8gT1RIRVI7CiAK
ICAgICBjYXNlIEFORFJPSURfRE5EX1VSSV9FVkVOVDoKQEAgLTE3NzgsMTUgKzE3NzYsMTUg
QEAgaGFuZGxlX29uZV9hbmRyb2lkX2V2ZW50IChzdHJ1Y3QgYW5kcm9pZF9kaXNwbGF5X2lu
Zm8gKmRweWluZm8sCiAJIGNvbnRlbnQgb3IgZmlsZSBVUkkgb3IgYSBzdHJpbmcgdG8gYmUg
aW5zZXJ0ZWQuICBHZW5lcmF0ZSBhbgogCSBldmVudCB3aXRoIHRoaXMgaW5mb3JtYXRpb24u
ICAqLwogCi0gICAgICBpbmV2LmllLmtpbmQgPSBEUkFHX05fRFJPUF9FVkVOVDsKLSAgICAg
IFhTRVRGUkFNRSAoaW5ldi5pZS5mcmFtZV9vcl93aW5kb3csIGFueSk7Ci0gICAgICBpbmV2
LmllLnRpbWVzdGFtcCA9IEFORFJPSURfQ1VSUkVOVF9USU1FOwotICAgICAgWFNFVElOVCAo
aW5ldi5pZS54LCBldmVudC0+ZG5kLngpOwotICAgICAgWFNFVElOVCAoaW5ldi5pZS55LCBl
dmVudC0+ZG5kLnkpOwotICAgICAgaW5ldi5pZS5hcmcgPSBGY29ucyAoKGV2ZW50LT50eXBl
ID09IEFORFJPSURfRE5EX1RFWFRfRVZFTlQKLQkJCSAgICA/IFF0ZXh0IDogUXVyaSksCi0J
CQkgICBhbmRyb2lkX2RlY29kZV91dGYxNiAoZXZlbnQtPmRuZC51cmlfb3Jfc3RyaW5nLAot
CQkJCQkJIGV2ZW50LT5kbmQubGVuZ3RoKSk7CisgICAgICBpbmV2LmtpbmQgPSBEUkFHX05f
RFJPUF9FVkVOVDsKKyAgICAgIFhTRVRGUkFNRSAoaW5ldi5mcmFtZV9vcl93aW5kb3csIGFu
eSk7CisgICAgICBpbmV2LnRpbWVzdGFtcCA9IEFORFJPSURfQ1VSUkVOVF9USU1FOworICAg
ICAgWFNFVElOVCAoaW5ldi54LCBldmVudC0+ZG5kLngpOworICAgICAgWFNFVElOVCAoaW5l
di55LCBldmVudC0+ZG5kLnkpOworICAgICAgaW5ldi5hcmcgPSBGY29ucyAoKGV2ZW50LT50
eXBlID09IEFORFJPSURfRE5EX1RFWFRfRVZFTlQKKwkJCSA/IFF0ZXh0IDogUXVyaSksCisJ
CQlhbmRyb2lkX2RlY29kZV91dGYxNiAoZXZlbnQtPmRuZC51cmlfb3Jfc3RyaW5nLAorCQkJ
CQkgICAgICBldmVudC0+ZG5kLmxlbmd0aCkpOwogICAgICAgZnJlZSAoZXZlbnQtPmRuZC51
cmlfb3Jfc3RyaW5nKTsKICAgICAgIGdvdG8gT1RIRVI7CiAKQEAgLTE3OTQsMTUgKzE3OTIs
MTQgQEAgaGFuZGxlX29uZV9hbmRyb2lkX2V2ZW50IChzdHJ1Y3QgYW5kcm9pZF9kaXNwbGF5
X2luZm8gKmRweWluZm8sCiAgICAgY2FzZSBBTkRST0lEX05PVElGSUNBVElPTl9BQ1RJT046
CiAKICAgICAgIGlmIChldmVudC0+bm90aWZpY2F0aW9uLnR5cGUgPT0gQU5EUk9JRF9OT1RJ
RklDQVRJT05fREVMRVRFRCkKLQlhbmRyb2lkX25vdGlmaWNhdGlvbl9kZWxldGVkICgmZXZl
bnQtPm5vdGlmaWNhdGlvbiwgJmluZXYuaWUpOworCWFuZHJvaWRfbm90aWZpY2F0aW9uX2Rl
bGV0ZWQgKCZldmVudC0+bm90aWZpY2F0aW9uLCAmaW5ldik7CiAgICAgICBlbHNlCiAJewog
CSAgTGlzcF9PYmplY3QgYWN0aW9uOwogCiAJICBhY3Rpb24gPSBhbmRyb2lkX2RlY29kZV91
dGYxNiAoZXZlbnQtPm5vdGlmaWNhdGlvbi5hY3Rpb24sCiAJCQkJCSBldmVudC0+bm90aWZp
Y2F0aW9uLmxlbmd0aCk7Ci0JICBhbmRyb2lkX25vdGlmaWNhdGlvbl9hY3Rpb24gKCZldmVu
dC0+bm90aWZpY2F0aW9uLCAmaW5ldi5pZSwKLQkJCQkgICAgICAgYWN0aW9uKTsKKwkgIGFu
ZHJvaWRfbm90aWZpY2F0aW9uX2FjdGlvbiAoJmV2ZW50LT5ub3RpZmljYXRpb24sICZpbmV2
LCBhY3Rpb24pOwogCX0KIAogICAgICAgLyogRnJlZSBkeW5hbWljYWxseSBhbGxvY2F0ZWQg
ZGF0YS4gICovCkBAIC0xODE1LDkgKzE4MTIsOSBAQCBoYW5kbGVfb25lX2FuZHJvaWRfZXZl
bnQgKHN0cnVjdCBhbmRyb2lkX2Rpc3BsYXlfaW5mbyAqZHB5aW5mbywKICAgICB9CiAKICBP
VEhFUjoKLSAgaWYgKGluZXYuaWUua2luZCAhPSBOT19FVkVOVCkKKyAgaWYgKGluZXYua2lu
ZCAhPSBOT19FVkVOVCkKICAgICB7Ci0gICAgICBrYmRfYnVmZmVyX3N0b3JlX2J1ZmZlcmVk
X2V2ZW50ICgmaW5ldiwgaG9sZF9xdWl0KTsKKyAgICAgIGtiZF9idWZmZXJfc3RvcmVfZXZl
bnRfaG9sZCAoJmluZXYsIGhvbGRfcXVpdCk7CiAgICAgICBjb3VudCsrOwogICAgIH0KIApk
aWZmIC0tZ2l0IGEvc3JjL2d0a3V0aWwuYyBiL3NyYy9ndGt1dGlsLmMKaW5kZXggMDc3MDg3
NGViNDAuLjE2NDUzMWFhZWIzIDEwMDY0NAotLS0gYS9zcmMvZ3RrdXRpbC5jCisrKyBiL3Ny
Yy9ndGt1dGlsLmMKQEAgLTYzODIsNyArNjM4Miw3IEBAIHhnX3dpZGdldF9rZXlfcHJlc3Nf
ZXZlbnRfY2IgKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtFdmVudCAqZXZlbnQsCiB7CiAgIExp
c3BfT2JqZWN0IHRhaWwsIHRlbTsKICAgc3RydWN0IGZyYW1lICpmID0gTlVMTDsKLSAgdW5p
b24gYnVmZmVyZWRfaW5wdXRfZXZlbnQgaW5ldjsKKyAgc3RydWN0IGlucHV0X2V2ZW50IGlu
ZXY7CiAgIGd1aW50IGtleXN5bSA9IGV2ZW50LT5rZXkua2V5dmFsOwogICB1bnNpZ25lZCBp
bnQgeHN0YXRlOwogICBndW5pY2hhciB1YzsKQEAgLTY0MTksMTUgKzY0MTksMTUgQEAgeGdf
d2lkZ2V0X2tleV9wcmVzc19ldmVudF9jYiAoR3RrV2lkZ2V0ICp3aWRnZXQsIEdka0V2ZW50
ICpldmVudCwKICAgICAgICYmICFGUkFNRV9ESVNQTEFZX0lORk8gKGYpLT5wcmVmZXJfbmF0
aXZlX2lucHV0KQogICAgIHJldHVybiB0cnVlOwogCi0gIEVWRU5UX0lOSVQgKGluZXYuaWUp
OwotICBYU0VURlJBTUUgKGluZXYuaWUuZnJhbWVfb3Jfd2luZG93LCBmKTsKKyAgRVZFTlRf
SU5JVCAoaW5ldik7CisgIFhTRVRGUkFNRSAoaW5ldi5mcmFtZV9vcl93aW5kb3csIGYpOwog
CiAgIHhzdGF0ZSA9IHhnX3ZpcnR1YWxfbW9kc190b194IChGUkFNRV9ESVNQTEFZX0lORk8g
KGYpLAogCQkJCSBldmVudC0+a2V5LnN0YXRlKTsKIAotICBpbmV2LmllLm1vZGlmaWVycwor
ICBpbmV2Lm1vZGlmaWVycwogICAgIHw9IHhfeF90b19lbWFjc19tb2RpZmllcnMgKEZSQU1F
X0RJU1BMQVlfSU5GTyAoZiksIHhzdGF0ZSk7Ci0gIGluZXYuaWUudGltZXN0YW1wID0gZXZl
bnQtPmtleS50aW1lOworICBpbmV2LnRpbWVzdGFtcCA9IGV2ZW50LT5rZXkudGltZTsKIAog
I2lmZGVmIEhBVkVfWElOUFVUMgogICBpZiAoZXZlbnQtPmtleS50aW1lID09IHBlbmRpbmdf
a2V5c3Ryb2tlX3RpbWUpCkBAIC02NDM2LDcgKzY0MzYsNyBAQCB4Z193aWRnZXRfa2V5X3By
ZXNzX2V2ZW50X2NiIChHdGtXaWRnZXQgKndpZGdldCwgR2RrRXZlbnQgKmV2ZW50LAogCQkJ
CSAgRlJBTUVfRElTUExBWV9JTkZPIChmKS0+cGVuZGluZ19rZXlzdHJva2Vfc291cmNlKTsK
IAogICAgICAgaWYgKHNvdXJjZSkKLQlpbmV2LmllLmRldmljZSA9IHNvdXJjZS0+bmFtZTsK
KwlpbmV2LmRldmljZSA9IHNvdXJjZS0+bmFtZTsKICAgICB9CiAjZW5kaWYKIApAQCAtNjQ1
NSw4ICs2NDU1LDggQEAgeGdfd2lkZ2V0X2tleV9wcmVzc19ldmVudF9jYiAoR3RrV2lkZ2V0
ICp3aWRnZXQsIEdka0V2ZW50ICpldmVudCwKICAgaWYgKGtleXN5bSA+PSAzMiAmJiBrZXlz
eW0gPCAxMjgpCiAgICAgLyogQXZvaWQgZXhwbGljaXRseSBkZWNvZGluZyBlYWNoIEFTQ0lJ
IGNoYXJhY3Rlci4gICovCiAgICAgewotICAgICAgaW5ldi5pZS5raW5kID0gQVNDSUlfS0VZ
U1RST0tFX0VWRU5UOwotICAgICAgaW5ldi5pZS5jb2RlID0ga2V5c3ltOworICAgICAgaW5l
di5raW5kID0gQVNDSUlfS0VZU1RST0tFX0VWRU5UOworICAgICAgaW5ldi5jb2RlID0ga2V5
c3ltOwogICAgICAgZ290byBkb25lOwogICAgIH0KIApAQCAtNjQ2NCwxMCArNjQ2NCwxMCBA
QCB4Z193aWRnZXRfa2V5X3ByZXNzX2V2ZW50X2NiIChHdGtXaWRnZXQgKndpZGdldCwgR2Rr
RXZlbnQgKmV2ZW50LAogICBpZiAoa2V5c3ltID49IDB4MDEwMDAwMDAgJiYga2V5c3ltIDw9
IDB4MDExMEZGRkYpCiAgICAgewogICAgICAgaWYgKGtleXN5bSA8IDB4MDEwMDAwODApCi0J
aW5ldi5pZS5raW5kID0gQVNDSUlfS0VZU1RST0tFX0VWRU5UOworCWluZXYua2luZCA9IEFT
Q0lJX0tFWVNUUk9LRV9FVkVOVDsKICAgICAgIGVsc2UKLQlpbmV2LmllLmtpbmQgPSBNVUxU
SUJZVEVfQ0hBUl9LRVlTVFJPS0VfRVZFTlQ7Ci0gICAgICBpbmV2LmllLmNvZGUgPSBrZXlz
eW0gJiAweEZGRkZGRjsKKwlpbmV2LmtpbmQgPSBNVUxUSUJZVEVfQ0hBUl9LRVlTVFJPS0Vf
RVZFTlQ7CisgICAgICBpbmV2LmNvZGUgPSBrZXlzeW0gJiAweEZGRkZGRjsKICAgICAgIGdv
dG8gZG9uZTsKICAgICB9CiAKQEAgLTY1MjMsOCArNjUyMyw4IEBAIHhnX3dpZGdldF9rZXlf
cHJlc3NfZXZlbnRfY2IgKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtFdmVudCAqZXZlbnQsCiAg
ICAgICAgLyogQW55ICJ2ZW5kb3Itc3BlY2lmaWMiIGtleSBpcyBvay4gICovCiAgICAgICAg
fHwgKGtleXN5bSAmICgxIDw8IDI4KSkpKQogICAgIHsKLSAgICAgIGluZXYuaWUua2luZCA9
IE5PTl9BU0NJSV9LRVlTVFJPS0VfRVZFTlQ7Ci0gICAgICBpbmV2LmllLmNvZGUgPSBrZXlz
eW07CisgICAgICBpbmV2LmtpbmQgPSBOT05fQVNDSUlfS0VZU1RST0tFX0VWRU5UOworICAg
ICAgaW5ldi5jb2RlID0ga2V5c3ltOwogICAgICAgZ290byBkb25lOwogICAgIH0KIApAQCAt
NjUzMiwyMiArNjUzMiwyMiBAQCB4Z193aWRnZXRfa2V5X3ByZXNzX2V2ZW50X2NiIChHdGtX
aWRnZXQgKndpZGdldCwgR2RrRXZlbnQgKmV2ZW50LAogCiAgIGlmICh1YykKICAgICB7Ci0g
ICAgICBpbmV2LmllLmtpbmQgPSAoU0lOR0xFX0JZVEVfQ0hBUl9QICh1YykKLQkJICAgICAg
PyBBU0NJSV9LRVlTVFJPS0VfRVZFTlQKLQkJICAgICAgOiBNVUxUSUJZVEVfQ0hBUl9LRVlT
VFJPS0VfRVZFTlQpOwotICAgICAgaW5ldi5pZS5jb2RlID0gdWM7CisgICAgICBpbmV2Lmtp
bmQgPSAoU0lOR0xFX0JZVEVfQ0hBUl9QICh1YykKKwkJICAgPyBBU0NJSV9LRVlTVFJPS0Vf
RVZFTlQKKwkJICAgOiBNVUxUSUJZVEVfQ0hBUl9LRVlTVFJPS0VfRVZFTlQpOworICAgICAg
aW5ldi5jb2RlID0gdWM7CiAgICAgfQogICBlbHNlCiAgICAgewotICAgICAgaW5ldi5pZS5r
aW5kID0gTk9OX0FTQ0lJX0tFWVNUUk9LRV9FVkVOVDsKLSAgICAgIGluZXYuaWUuY29kZSA9
IGtleXN5bTsKKyAgICAgIGluZXYua2luZCA9IE5PTl9BU0NJSV9LRVlTVFJPS0VfRVZFTlQ7
CisgICAgICBpbmV2LmNvZGUgPSBrZXlzeW07CiAgICAgfQogCiAgZG9uZToKLSAgaWYgKGlu
ZXYuaWUua2luZCAhPSBOT19FVkVOVCkKKyAgaWYgKGluZXYua2luZCAhPSBOT19FVkVOVCkK
ICAgICB7CiAgICAgICB4Z19wZW5kaW5nX3F1aXRfZXZlbnQua2luZCA9IE5PX0VWRU5UOwot
ICAgICAga2JkX2J1ZmZlcl9zdG9yZV9idWZmZXJlZF9ldmVudCAoJmluZXYsICZ4Z19wZW5k
aW5nX3F1aXRfZXZlbnQpOworICAgICAga2JkX2J1ZmZlcl9zdG9yZV9ldmVudF9ob2xkICgm
aW5ldiwgJnhnX3BlbmRpbmdfcXVpdF9ldmVudCk7CiAgICAgfQogCiAgIFhOb09wIChGUkFN
RV9YX0RJU1BMQVkgKGYpKTsKZGlmZiAtLWdpdCBhL3NyYy9rZXlib2FyZC5jIGIvc3JjL2tl
eWJvYXJkLmMKaW5kZXggYjIyODE0ZDcwMmQuLmVmODRiZGE5NjY0IDEwMDY0NAotLS0gYS9z
cmMva2V5Ym9hcmQuYworKysgYi9zcmMva2V5Ym9hcmQuYwpAQCAtNDA4LDcgKzQwOCw3IEBA
ICNkZWZpbmUgUkVBREFCTEVfRVZFTlRTX0lHTk9SRV9TUVVFRVpBQkxFUwkoMSA8PCAyKQog
c3RhdGljIHZvaWQgZGVsaXZlcl91c2VyX3NpZ25hbCAoaW50KTsKIHN0YXRpYyBjaGFyICpm
aW5kX3VzZXJfc2lnbmFsX25hbWUgKGludCk7CiBzdGF0aWMgdm9pZCBzdG9yZV91c2VyX3Np
Z25hbF9ldmVudHMgKHZvaWQpOwotc3RhdGljIGJvb2wgaXNfaWdub3JlZF9ldmVudCAodW5p
b24gYnVmZmVyZWRfaW5wdXRfZXZlbnQgKik7CitzdGF0aWMgYm9vbCBpc19pZ25vcmVkX2V2
ZW50X2tpbmQgKGVudW0gZXZlbnRfa2luZCk7CiAKIC8qIEFkdmFuY2Ugb3IgcmV0cmVhdCBh
IGJ1ZmZlcmVkIGlucHV0IGV2ZW50IHBvaW50ZXIuICAqLwogCkBAIC0zNjI5LDcgKzM2Mjks
NyBAQCByZWFkYWJsZV9ldmVudHMgKGludCBmbGFncykKIAkJICAgICAgJiYgKGV2ZW50LT5r
aW5kID09IEZPQ1VTX0lOX0VWRU5UCiAJCQkgIHx8IGV2ZW50LT5raW5kID09IEZPQ1VTX09V
VF9FVkVOVCkpCiAJCSAgICAgfHwgKGlucHV0X3BlbmRpbmdfcF9maWx0ZXJfZXZlbnRzCi0J
CQkgJiYgaXNfaWdub3JlZF9ldmVudCAoZXZlbnQpKSkpCisJCQkgJiYgaXNfaWdub3JlZF9l
dmVudF9raW5kIChldmVudC0+a2luZCkpKSkKICNpZmRlZiBVU0VfVE9PTEtJVF9TQ1JPTExf
QkFSUwogCQkgICYmICEoKGZsYWdzICYgUkVBREFCTEVfRVZFTlRTX0lHTk9SRV9TUVVFRVpB
QkxFUykKIAkJICAgICAgICYmIChldmVudC0+a2luZCA9PSBTQ1JPTExfQkFSX0NMSUNLX0VW
RU5UCkBAIC0zNzE0LDYgKzM3MTQsMzEgQEAga2JkX2J1ZmZlcl9zdG9yZV9ldmVudCAocmVn
aXN0ZXIgc3RydWN0IGlucHV0X2V2ZW50ICpldmVudCkKICAga2JkX2J1ZmZlcl9zdG9yZV9l
dmVudF9ob2xkIChldmVudCwgMCk7CiB9CiAKK3N0YXRpYyB2b2lkCitiZXdhcmVfbG9uZ19w
YXN0ZSAodm9pZCkKK3sKKyNpZmRlZiBzdWJwcm9jZXNzZXMKKyAgaWYgKCEgKGtiZF9idWZm
ZXJfbnJfc3RvcmVkICgpIDw9IEtCRF9CVUZGRVJfU0laRSAvIDIKKwkgJiYga2JkX29uX2hv
bGRfcCAoKSkpCisgICAgeworICAgICAgLyogRG9uJ3QgcmVhZCBrZXlib2FyZCBpbnB1dCB1
bnRpbCB3ZSBoYXZlIHByb2Nlc3NlZCBrYmRfYnVmZmVyLgorCSBUaGlzIGhhcHBlbnMgd2hl
biBwYXN0aW5nIHRleHQgbG9uZ2VyIHRoYW4gS0JEX0JVRkZFUl9TSVpFLzIuICAqLworICAg
ICAgaG9sZF9rZXlib2FyZF9pbnB1dCAoKTsKKyAgICAgIHVucmVxdWVzdF9zaWdpbyAoKTsK
KyAgICAgIHN0b3BfcG9sbGluZyAoKTsKKyAgICB9CisjZW5kaWYKK30KKworLyogSWYgd2Un
cmUgaW5zaWRlIHdoaWxlLW5vLWlucHV0LCBhbmQgdGhpcyBldmVudCBxdWFsaWZpZXMKKyAg
IGFzIGlucHV0LCBzZXQgcXVpdC1mbGFnIHRvIGNhdXNlIGFuIGludGVycnVwdC4gICovCitz
dGF0aWMgdm9pZAorbWF5YmVfcXVpdF93aGlsZV9ub19pbnB1dCAoZW51bSBldmVudF9raW5k
IGtpbmQpCit7CisgIGlmICghTklMUCAoVnRocm93X29uX2lucHV0KSAmJiAhaXNfaWdub3Jl
ZF9ldmVudF9raW5kIChraW5kKSkKKyAgICBWcXVpdF9mbGFnID0gVnRocm93X29uX2lucHV0
OworfQorCiAvKiBTdG9yZSBFVkVOVCBvYnRhaW5lZCBhdCBpbnRlcnJ1cHQgbGV2ZWwgaW50
byBrYmRfYnVmZmVyLCBmaWZvLgogCiAgICBJZiBIT0xEX1FVSVQgaXMgMCwganVzdCBzdHVm
ZiBFVkVOVCBpbnRvIHRoZSBmaWZvLgpAQCAtMzcyNSw4ICszNzUwLDggQEAga2JkX2J1ZmZl
cl9zdG9yZV9ldmVudCAocmVnaXN0ZXIgc3RydWN0IGlucHV0X2V2ZW50ICpldmVudCkKICAg
IHN1YnNlcXVlbnQgaW5wdXQgZXZlbnRzIGhhdmUgYmVlbiBwYXJzZWQgKGFuZCBkaXNjYXJk
ZWQpLiAgKi8KIAogdm9pZAota2JkX2J1ZmZlcl9zdG9yZV9idWZmZXJlZF9ldmVudCAodW5p
b24gYnVmZmVyZWRfaW5wdXRfZXZlbnQgKmV2ZW50LAotCQkJCSBzdHJ1Y3QgaW5wdXRfZXZl
bnQgKmhvbGRfcXVpdCkKK2tiZF9idWZmZXJfc3RvcmVfZXZlbnRfaG9sZCAoc3RydWN0IGlu
cHV0X2V2ZW50IGNvbnN0ICpldmVudCwKKwkJCSAgICAgc3RydWN0IGlucHV0X2V2ZW50ICpo
b2xkX3F1aXQpCiB7CiAgIGlmIChldmVudC0+a2luZCA9PSBOT19FVkVOVCkKICAgICBlbWFj
c19hYm9ydCAoKTsKQEAgLTM3MzYsMjMgKzM3NjEsMjMgQEAga2JkX2J1ZmZlcl9zdG9yZV9i
dWZmZXJlZF9ldmVudCAodW5pb24gYnVmZmVyZWRfaW5wdXRfZXZlbnQgKmV2ZW50LAogCiAg
IGlmIChldmVudC0+a2luZCA9PSBBU0NJSV9LRVlTVFJPS0VfRVZFTlQpCiAgICAgewotICAg
ICAgaW50IGMgPSBldmVudC0+aWUuY29kZSAmIDAzNzc7CisgICAgICBpbnQgYyA9IGV2ZW50
LT5jb2RlICYgMDM3NzsKIAotICAgICAgaWYgKGV2ZW50LT5pZS5tb2RpZmllcnMgJiBjdHJs
X21vZGlmaWVyKQorICAgICAgaWYgKGV2ZW50LT5tb2RpZmllcnMgJiBjdHJsX21vZGlmaWVy
KQogCWMgPSBtYWtlX2N0cmxfY2hhciAoYyk7CiAKLSAgICAgIGMgfD0gKGV2ZW50LT5pZS5t
b2RpZmllcnMKKyAgICAgIGMgfD0gKGV2ZW50LT5tb2RpZmllcnMKIAkgICAgJiAobWV0YV9t
b2RpZmllciB8IGFsdF9tb2RpZmllcgogCSAgICAgICB8IGh5cGVyX21vZGlmaWVyIHwgc3Vw
ZXJfbW9kaWZpZXIpKTsKIAogICAgICAgaWYgKGMgPT0gcXVpdF9jaGFyKQogCXsKLQkgIEtC
T0FSRCAqa2IgPSBGUkFNRV9LQk9BUkQgKFhGUkFNRSAoZXZlbnQtPmllLmZyYW1lX29yX3dp
bmRvdykpOworCSAgS0JPQVJEICprYiA9IEZSQU1FX0tCT0FSRCAoWEZSQU1FIChldmVudC0+
ZnJhbWVfb3Jfd2luZG93KSk7CiAKIAkgIGlmIChzaW5nbGVfa2JvYXJkICYmIGtiICE9IGN1
cnJlbnRfa2JvYXJkKQogCSAgICB7CiAJICAgICAga3NldF9rYmRfcXVldWUKLQkJKGtiLCBs
aXN0MiAobWFrZV9saXNweV9zd2l0Y2hfZnJhbWUgKGV2ZW50LT5pZS5mcmFtZV9vcl93aW5k
b3cpLAorCQkoa2IsIGxpc3QyIChtYWtlX2xpc3B5X3N3aXRjaF9mcmFtZSAoZXZlbnQtPmZy
YW1lX29yX3dpbmRvdyksCiAJCQkgICAgbWFrZV9maXhudW0gKGMpKSk7CiAJICAgICAga2It
PmtiZF9xdWV1ZV9oYXNfZGF0YSA9IHRydWU7CiAKQEAgLTM3NzEsNyArMzc5Niw3IEBAIGti
ZF9idWZmZXJfc3RvcmVfYnVmZmVyZWRfZXZlbnQgKHVuaW9uIGJ1ZmZlcmVkX2lucHV0X2V2
ZW50ICpldmVudCwKIAogCSAgaWYgKGhvbGRfcXVpdCkKIAkgICAgewotCSAgICAgICpob2xk
X3F1aXQgPSBldmVudC0+aWU7CisJICAgICAgKmhvbGRfcXVpdCA9ICpldmVudDsKIAkgICAg
ICByZXR1cm47CiAJICAgIH0KIApAQCAtMzc4Miw5ICszODA3LDkgQEAga2JkX2J1ZmZlcl9z
dG9yZV9idWZmZXJlZF9ldmVudCAodW5pb24gYnVmZmVyZWRfaW5wdXRfZXZlbnQgKmV2ZW50
LAogCSAgewogCSAgICBMaXNwX09iamVjdCBmb2N1czsKIAotCSAgICBmb2N1cyA9IEZSQU1F
X0ZPQ1VTX0ZSQU1FIChYRlJBTUUgKGV2ZW50LT5pZS5mcmFtZV9vcl93aW5kb3cpKTsKKwkg
ICAgZm9jdXMgPSBGUkFNRV9GT0NVU19GUkFNRSAoWEZSQU1FIChldmVudC0+ZnJhbWVfb3Jf
d2luZG93KSk7CiAJICAgIGlmIChOSUxQIChmb2N1cykpCi0JICAgICAgZm9jdXMgPSBldmVu
dC0+aWUuZnJhbWVfb3Jfd2luZG93OworCSAgICAgIGZvY3VzID0gZXZlbnQtPmZyYW1lX29y
X3dpbmRvdzsKIAkgICAgaW50ZXJuYWxfbGFzdF9ldmVudF9mcmFtZSA9IGZvY3VzOwogCSAg
ICBWbGFzdF9ldmVudF9mcmFtZSA9IGZvY3VzOwogCSAgfQpAQCAtMzgwNywyNiArMzgzMiw0
NCBAQCBrYmRfYnVmZmVyX3N0b3JlX2J1ZmZlcmVkX2V2ZW50ICh1bmlvbiBidWZmZXJlZF9p
bnB1dF9ldmVudCAqZXZlbnQsCiAgIHVuaW9uIGJ1ZmZlcmVkX2lucHV0X2V2ZW50ICpuZXh0
X3Nsb3QgPSBuZXh0X2tiZF9ldmVudCAoa2JkX3N0b3JlX3B0cik7CiAgIGlmIChrYmRfZmV0
Y2hfcHRyICE9IG5leHRfc2xvdCkKICAgICB7Ci0gICAgICAqa2JkX3N0b3JlX3B0ciA9ICpl
dmVudDsKKyAgICAgIGtiZF9zdG9yZV9wdHItPmllID0gKmV2ZW50OwogICAgICAga2JkX3N0
b3JlX3B0ciA9IG5leHRfc2xvdDsKLSNpZmRlZiBzdWJwcm9jZXNzZXMKLSAgICAgIGlmIChr
YmRfYnVmZmVyX25yX3N0b3JlZCAoKSA+IEtCRF9CVUZGRVJfU0laRSAvIDIKLQkgICYmICEg
a2JkX29uX2hvbGRfcCAoKSkKLSAgICAgICAgewotICAgICAgICAgIC8qIERvbid0IHJlYWQg
a2V5Ym9hcmQgaW5wdXQgdW50aWwgd2UgaGF2ZSBwcm9jZXNzZWQga2JkX2J1ZmZlci4KLSAg
ICAgICAgICAgICBUaGlzIGhhcHBlbnMgd2hlbiBwYXN0aW5nIHRleHQgbG9uZ2VyIHRoYW4g
S0JEX0JVRkZFUl9TSVpFLzIuICAqLwotICAgICAgICAgIGhvbGRfa2V5Ym9hcmRfaW5wdXQg
KCk7Ci0gICAgICAgICAgdW5yZXF1ZXN0X3NpZ2lvICgpOwotICAgICAgICAgIHN0b3BfcG9s
bGluZyAoKTsKLSAgICAgICAgfQotI2VuZGlmCS8qIHN1YnByb2Nlc3NlcyAqLworICAgICAg
YmV3YXJlX2xvbmdfcGFzdGUgKCk7CiAgICAgfQogCi0gIC8qIElmIHdlJ3JlIGluc2lkZSB3
aGlsZS1uby1pbnB1dCwgYW5kIHRoaXMgZXZlbnQgcXVhbGlmaWVzCi0gICAgIGFzIGlucHV0
LCBzZXQgcXVpdC1mbGFnIHRvIGNhdXNlIGFuIGludGVycnVwdC4gICovCi0gIGlmICghTklM
UCAoVnRocm93X29uX2lucHV0KQotICAgICAgJiYgIWlzX2lnbm9yZWRfZXZlbnQgKGV2ZW50
KSkKLSAgICBWcXVpdF9mbGFnID0gVnRocm93X29uX2lucHV0OworICBtYXliZV9xdWl0X3do
aWxlX25vX2lucHV0IChldmVudC0+a2luZCk7Cit9CisKKy8qIFN0b3JlIEVWRU5UIG9idGFp
bmVkIGF0IGludGVycnVwdCBsZXZlbCBpbnRvIGtiZF9idWZmZXIsIGZpZm8uCisgICBUaGlz
IGlzIGxpa2Uga2JkX2J1ZmZlcl9zdG9yZV9ldmVudF9ob2xkLCBidXQgZm9yIHN0cnVjdAor
ICAgc2VsZWN0aW9uX2lucHV0X2V2ZW50IGluc3RlYWQgb2Ygc3RydWN0IGlucHV0X2V2ZW50
LgorCisgICBJZiBIT0xEX1FVSVQgJiYgSE9MRF9RVUlULT5raW5kICE9IE5PX0VWRU5ULCBk
aXNjYXJkIEVWRU5ULgorCisgICBUaGlzIGlzIHVzZWQgdG8gcG9zdHBvbmUgdGhlIHByb2Nl
c3Npbmcgb2YgdGhlIHF1aXQgZXZlbnQgdW50aWwgYWxsCisgICBzdWJzZXF1ZW50IGlucHV0
IGV2ZW50cyBoYXZlIGJlZW4gcGFyc2VkIChhbmQgZGlzY2FyZGVkKS4gICovCisKK3ZvaWQK
K2tiZF9idWZmZXJfc3RvcmVfc2VsZWN0aW9uX2V2ZW50X2hvbGQKKyAgKHN0cnVjdCBzZWxl
Y3Rpb25faW5wdXRfZXZlbnQgY29uc3QgKmV2ZW50LAorICAgc3RydWN0IGlucHV0X2V2ZW50
IGNvbnN0ICpob2xkX3F1aXQpCit7CisgIGlmIChob2xkX3F1aXQgJiYgaG9sZF9xdWl0LT5r
aW5kICE9IE5PX0VWRU5UKQorICAgIHJldHVybjsKKworICAvKiBEb24ndCBsZXQgdGhlIHZl
cnkgbGFzdCBzbG90IGluIHRoZSBidWZmZXIgYmVjb21lIGZ1bGwsCisgICAgIHNpbmNlIHRo
YXQgd291bGQgbWFrZSB0aGUgdHdvIHBvaW50ZXJzIGVxdWFsLAorICAgICBhbmQgdGhhdCBp
cyBpbmRpc3Rpbmd1aXNoYWJsZSBmcm9tIGFuIGVtcHR5IGJ1ZmZlci4KKyAgICAgRGlzY2Fy
ZCB0aGUgZXZlbnQgaWYgaXQgd291bGQgZmlsbCB0aGUgbGFzdCBzbG90LiAgKi8KKyAgdW5p
b24gYnVmZmVyZWRfaW5wdXRfZXZlbnQgKm5leHRfc2xvdCA9IG5leHRfa2JkX2V2ZW50IChr
YmRfc3RvcmVfcHRyKTsKKyAgaWYgKGtiZF9mZXRjaF9wdHIgIT0gbmV4dF9zbG90KQorICAg
IHsKKyAgICAgIGtiZF9zdG9yZV9wdHItPnNpZSA9ICpldmVudDsKKyAgICAgIGtiZF9zdG9y
ZV9wdHIgPSBuZXh0X3Nsb3Q7CisgICAgICBiZXdhcmVfbG9uZ19wYXN0ZSAoKTsKKyAgICB9
CisKKyAgbWF5YmVfcXVpdF93aGlsZV9ub19pbnB1dCAoZXZlbnQtPmtpbmQpOwogfQogCiAv
KiBMaW1pdCBoZWxwIGV2ZW50IHBvc2l0aW9ucyB0byB0aGlzIHJhbmdlLCB0byBhdm9pZCBv
dmVyZmxvdyBwcm9ibGVtcy4gICovCkBAIC0xMjg3NywxMSArMTI5MjAsMTEgQEAgaW5pdF93
aGlsZV9ub19pbnB1dF9pZ25vcmVfZXZlbnRzICh2b2lkKQogfQogCiBzdGF0aWMgYm9vbAot
aXNfaWdub3JlZF9ldmVudCAodW5pb24gYnVmZmVyZWRfaW5wdXRfZXZlbnQgKmV2ZW50KQor
aXNfaWdub3JlZF9ldmVudF9raW5kIChlbnVtIGV2ZW50X2tpbmQga2luZCkKIHsKICAgTGlz
cF9PYmplY3QgaWdub3JlX2V2ZW50OwogCi0gIHN3aXRjaCAoZXZlbnQtPmtpbmQpCisgIHN3
aXRjaCAoa2luZCkKICAgICB7CiAgICAgY2FzZSBGT0NVU19JTl9FVkVOVDogaWdub3JlX2V2
ZW50ID0gUWZvY3VzX2luOyBicmVhazsKICAgICBjYXNlIEZPQ1VTX09VVF9FVkVOVDogaWdu
b3JlX2V2ZW50ID0gUWZvY3VzX291dDsgYnJlYWs7CmRpZmYgLS1naXQgYS9zcmMva2V5Ym9h
cmQuaCBiL3NyYy9rZXlib2FyZC5oCmluZGV4IDVlMDRiNTRlYjc0Li45OTk3Mjk0NGQyOCAx
MDA2NDQKLS0tIGEvc3JjL2tleWJvYXJkLmgKKysrIGIvc3JjL2tleWJvYXJkLmgKQEAgLTQ5
OSwxNyArNDk5LDEwIEBAICNkZWZpbmUgRVZFTlRfSEVBRF9LSU5EKGV2ZW50X2hlYWQpIFwK
IGV4dGVybiB2b2lkIHN3YWxsb3dfZXZlbnRzIChib29sKTsKIGV4dGVybiBib29sIGx1Y2lk
X2V2ZW50X3R5cGVfbGlzdF9wIChMaXNwX09iamVjdCk7CiBleHRlcm4gdm9pZCBrYmRfYnVm
ZmVyX3N0b3JlX2V2ZW50IChzdHJ1Y3QgaW5wdXRfZXZlbnQgKik7Ci1leHRlcm4gdm9pZCBr
YmRfYnVmZmVyX3N0b3JlX2J1ZmZlcmVkX2V2ZW50ICh1bmlvbiBidWZmZXJlZF9pbnB1dF9l
dmVudCAqLAotCQkJCQkgICAgIHN0cnVjdCBpbnB1dF9ldmVudCAqKTsKLUlOTElORSB2b2lk
Ci1rYmRfYnVmZmVyX3N0b3JlX2V2ZW50X2hvbGQgKHN0cnVjdCBpbnB1dF9ldmVudCAqZXZl
bnQsCi0JCQkgICAgIHN0cnVjdCBpbnB1dF9ldmVudCAqaG9sZF9xdWl0KQotewotICBzdGF0
aWNfYXNzZXJ0IChhbGlnbm9mIChzdHJ1Y3QgaW5wdXRfZXZlbnQpID09IGFsaWdub2YgKHVu
aW9uIGJ1ZmZlcmVkX2lucHV0X2V2ZW50KQotCQkgJiYgc2l6ZW9mIChzdHJ1Y3QgaW5wdXRf
ZXZlbnQpID09IHNpemVvZiAodW5pb24gYnVmZmVyZWRfaW5wdXRfZXZlbnQpKTsKLSAga2Jk
X2J1ZmZlcl9zdG9yZV9idWZmZXJlZF9ldmVudCAoKHVuaW9uIGJ1ZmZlcmVkX2lucHV0X2V2
ZW50ICopIGV2ZW50LAotCQkJCSAgIGhvbGRfcXVpdCk7Ci19CitleHRlcm4gdm9pZCBrYmRf
YnVmZmVyX3N0b3JlX2V2ZW50X2hvbGQgKHN0cnVjdCBpbnB1dF9ldmVudCBjb25zdCAqLAor
CQkJCQkgc3RydWN0IGlucHV0X2V2ZW50ICopOworZXh0ZXJuIHZvaWQga2JkX2J1ZmZlcl9z
dG9yZV9zZWxlY3Rpb25fZXZlbnRfaG9sZAorICAoc3RydWN0IHNlbGVjdGlvbl9pbnB1dF9l
dmVudCBjb25zdCAqLCBzdHJ1Y3QgaW5wdXRfZXZlbnQgY29uc3QgKik7CiBleHRlcm4gdm9p
ZCBwb2xsX2Zvcl9pbnB1dF8xICh2b2lkKTsKIGV4dGVybiB2b2lkIHNob3dfaGVscF9lY2hv
IChMaXNwX09iamVjdCwgTGlzcF9PYmplY3QsIExpc3BfT2JqZWN0LAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIExpc3BfT2JqZWN0KTsKZGlmZiAtLWdpdCBhL3NyYy9wZ3RrdGVy
bS5jIGIvc3JjL3BndGt0ZXJtLmMKaW5kZXggMDAzNzdmZjczYTAuLjBlZjYwODRkMmY0IDEw
MDY0NAotLS0gYS9zcmMvcGd0a3Rlcm0uYworKysgYi9zcmMvcGd0a3Rlcm0uYwpAQCAtMjg2
LDEyICsyODYsOCBAQCBmbGlwX2NyX2NvbnRleHQgKHN0cnVjdCBmcmFtZSAqZikKIAogCiBz
dGF0aWMgdm9pZAotZXZxX2VucXVldWUgKHVuaW9uIGJ1ZmZlcmVkX2lucHV0X2V2ZW50ICpl
dikKK2V2cV9ncm93X2lmX25lZWRlZCAoc3RydWN0IGV2ZW50X3F1ZXVlX3QgKmV2cSkKIHsK
LSAgc3RydWN0IGV2ZW50X3F1ZXVlX3QgKmV2cSA9ICZldmVudF9xOwotICBzdHJ1Y3QgZnJh
bWUgKmZyYW1lOwotICBzdHJ1Y3QgcGd0a19kaXNwbGF5X2luZm8gKmRweWluZm87Ci0KICAg
aWYgKGV2cS0+Y2FwID09IDApCiAgICAgewogICAgICAgZXZxLT5jYXAgPSA0OwpAQCAtMzAz
LDMyICsyOTksNDggQEAgZXZxX2VucXVldWUgKHVuaW9uIGJ1ZmZlcmVkX2lucHV0X2V2ZW50
ICpldikKICAgICAgIGV2cS0+Y2FwICs9IGV2cS0+Y2FwIC8gMjsKICAgICAgIGV2cS0+cSA9
IHhyZWFsbG9jIChldnEtPnEsIHNpemVvZiAqZXZxLT5xICogZXZxLT5jYXApOwogICAgIH0K
K30KKworc3RhdGljIHZvaWQKK2V2cV9lbnF1ZXVlIChzdHJ1Y3QgaW5wdXRfZXZlbnQgY29u
c3QgKmV2KQoreworICBzdHJ1Y3QgZXZlbnRfcXVldWVfdCAqZXZxID0gJmV2ZW50X3E7Cisg
IHN0cnVjdCBmcmFtZSAqZnJhbWU7CisgIHN0cnVjdCBwZ3RrX2Rpc3BsYXlfaW5mbyAqZHB5
aW5mbzsKIAotICBldnEtPnFbZXZxLT5ucisrXSA9ICpldjsKKyAgZXZxX2dyb3dfaWZfbmVl
ZGVkIChldnEpOworICBldnEtPnFbZXZxLT5ucisrXS5pZSA9ICpldjsKIAotICBpZiAoZXYt
PmllLmtpbmQgIT0gU0VMRUNUSU9OX1JFUVVFU1RfRVZFTlQKLSAgICAgICYmIGV2LT5pZS5r
aW5kICE9IFNFTEVDVElPTl9DTEVBUl9FVkVOVCkKLSAgICB7Ci0gICAgICBmcmFtZSA9IE5V
TEw7CisgIGZyYW1lID0gTlVMTDsKIAotICAgICAgaWYgKFdJTkRPV1AgKGV2LT5pZS5mcmFt
ZV9vcl93aW5kb3cpKQotCWZyYW1lID0gV0lORE9XX1hGUkFNRSAoWFdJTkRPVyAoZXYtPmll
LmZyYW1lX29yX3dpbmRvdykpOworICBpZiAoV0lORE9XUCAoZXYtPmZyYW1lX29yX3dpbmRv
dykpCisgICAgZnJhbWUgPSBXSU5ET1dfWEZSQU1FIChYV0lORE9XIChldi0+ZnJhbWVfb3Jf
d2luZG93KSk7CiAKLSAgICAgIGlmIChGUkFNRVAgKGV2LT5pZS5mcmFtZV9vcl93aW5kb3cp
KQotCWZyYW1lID0gWEZSQU1FIChldi0+aWUuZnJhbWVfb3Jfd2luZG93KTsKKyAgaWYgKEZS
QU1FUCAoZXYtPmZyYW1lX29yX3dpbmRvdykpCisgICAgZnJhbWUgPSBYRlJBTUUgKGV2LT5m
cmFtZV9vcl93aW5kb3cpOwogCi0gICAgICBpZiAoZnJhbWUpCi0JewotCSAgZHB5aW5mbyA9
IEZSQU1FX0RJU1BMQVlfSU5GTyAoZnJhbWUpOworICBpZiAoZnJhbWUpCisgICAgeworICAg
ICAgZHB5aW5mbyA9IEZSQU1FX0RJU1BMQVlfSU5GTyAoZnJhbWUpOwogCi0JICBpZiAoZHB5
aW5mby0+bGFzdF91c2VyX3RpbWUgPCBldi0+aWUudGltZXN0YW1wKQotCSAgICBkcHlpbmZv
LT5sYXN0X3VzZXJfdGltZSA9IGV2LT5pZS50aW1lc3RhbXA7Ci0JfQorICAgICAgaWYgKGRw
eWluZm8tPmxhc3RfdXNlcl90aW1lIDwgZXYtPnRpbWVzdGFtcCkKKwlkcHlpbmZvLT5sYXN0
X3VzZXJfdGltZSA9IGV2LT50aW1lc3RhbXA7CiAgICAgfQogCiAgIHJhaXNlIChTSUdJTyk7
CiB9CiAKK3N0YXRpYyB2b2lkCitldnFfc2VsZWN0aW9uX2VucXVldWUgKHN0cnVjdCBzZWxl
Y3Rpb25faW5wdXRfZXZlbnQgY29uc3QgKmV2KQoreworICBzdHJ1Y3QgZXZlbnRfcXVldWVf
dCAqZXZxID0gJmV2ZW50X3E7CisKKyAgZXZxX2dyb3dfaWZfbmVlZGVkIChldnEpOworICBl
dnEtPnFbZXZxLT5ucisrXS5zaWUgPSAqZXY7CisKKyAgcmFpc2UgKFNJR0lPKTsKK30KKwog
c3RhdGljIGludAogZXZxX2ZsdXNoIChzdHJ1Y3QgaW5wdXRfZXZlbnQgKmhvbGRfcXVpdCkK
IHsKQEAgLTMzNywxNyArMzQ5LDI3IEBAIGV2cV9mbHVzaCAoc3RydWN0IGlucHV0X2V2ZW50
ICpob2xkX3F1aXQpCiAKICAgd2hpbGUgKGV2cS0+bnIgPiAwKQogICAgIHsKLSAgICAgIC8q
IGtiZF9idWZmZXJfc3RvcmVfYnVmZmVyZWRfZXZlbnQgbWF5IGRvIGxvbmdqbXAsIHNvCi0J
IHdlIG5lZWQgdG8gc2hpZnQgZXZlbnQgcXVldWUgZmlyc3QgYW5kIHBhc3MgdGhlIGV2ZW50
Ci0JIHRvIGtiZF9idWZmZXJfc3RvcmVfYnVmZmVyZWRfZXZlbnQgc28gdGhhdCBldmVudHMg
aW4KKyAgICAgIC8qIEJlY2F1c2Uga2JkX2J1ZmZlcl9zdG9yZV9ldmVudF9ob2xkIGFuZAor
CSBrYmRfYnVmZmVyX3N0b3JlX3NlbGVjdGlvbl9ldmVudF9ob2xkIG1heSBkbyBsb25nam1w
LAorCSB3ZSBuZWVkIHRvIHNoaWZ0IGV2ZW50IHF1ZXVlIGJlZm9yZSBwYXNzaW5nIGEgcG9p
bnRlcgorCSB0byBhIGNvcHkgb2YgdGhlIGV2ZW50LCBzbyB0aGF0IGV2ZW50cyBpbgogCSBx
dWV1ZSBhcmUgbm90IHByb2Nlc3NlZCB0d2ljZS4gIEJ1ZyM1Mjk0MSAqLwotICAgICAgdW5p
b24gYnVmZmVyZWRfaW5wdXRfZXZlbnQgZXYgPSBldnEtPnFbMF07Ci0gICAgICBpbnQgaTsK
LSAgICAgIGZvciAoaSA9IDE7IGkgPCBldnEtPm5yOyBpKyspCi0JZXZxLT5xW2kgLSAxXSA9
IGV2cS0+cVtpXTsKICAgICAgIGV2cS0+bnItLTsKIAotICAgICAga2JkX2J1ZmZlcl9zdG9y
ZV9idWZmZXJlZF9ldmVudCAoJmV2LCBob2xkX3F1aXQpOworICAgICAgaWYgKGV2cS0+cVsw
XS5raW5kID09IFNFTEVDVElPTl9SRVFVRVNUX0VWRU5UCisJICB8fCBldnEtPnFbMF0ua2lu
ZCA9PSBTRUxFQ1RJT05fQ0xFQVJfRVZFTlQpCisJeworCSAgc3RydWN0IHNlbGVjdGlvbl9p
bnB1dF9ldmVudCBzaW5ldiA9IGV2cS0+cVswXS5zaWU7CisJICBtZW1tb3ZlICgmZXZxLT5x
WzBdLCAmZXZxLT5xWzFdLCBldnEtPm5yICogc2l6ZW9mIGV2cS0+cVswXSk7CisJICBrYmRf
YnVmZmVyX3N0b3JlX3NlbGVjdGlvbl9ldmVudF9ob2xkICgmc2luZXYsIGhvbGRfcXVpdCk7
CisJfQorICAgICAgZWxzZQorCXsKKwkgIHN0cnVjdCBpbnB1dF9ldmVudCBpbmV2ID0gZXZx
LT5xWzBdLmllOworCSAgbWVtbW92ZSAoJmV2cS0+cVswXSwgJmV2cS0+cVsxXSwgZXZxLT5u
ciAqIHNpemVvZiBldnEtPnFbMF0pOworCSAga2JkX2J1ZmZlcl9zdG9yZV9ldmVudF9ob2xk
ICgmaW5ldiwgaG9sZF9xdWl0KTsKKwl9CisKICAgICAgIG4rKzsKICAgICB9CiAKQEAgLTM5
MjgsMjEgKzM5NTAsMjEgQEAgcGd0a19yZWFkX3NvY2tldCAoc3RydWN0IHRlcm1pbmFsICp0
ZXJtaW5hbCwgc3RydWN0IGlucHV0X2V2ZW50ICpob2xkX3F1aXQpCiBwZ3RrX3NlbmRfc2Ny
b2xsX2Jhcl9ldmVudCAoTGlzcF9PYmplY3Qgd2luZG93LCBlbnVtIHNjcm9sbF9iYXJfcGFy
dCBwYXJ0LAogCQkJICAgIGludCBwb3J0aW9uLCBpbnQgd2hvbGUsIGJvb2wgaG9yaXpvbnRh
bCkKIHsKLSAgdW5pb24gYnVmZmVyZWRfaW5wdXRfZXZlbnQgaW5ldjsKKyAgc3RydWN0IGlu
cHV0X2V2ZW50IGluZXY7CiAKLSAgRVZFTlRfSU5JVCAoaW5ldi5pZSk7CisgIEVWRU5UX0lO
SVQgKGluZXYpOwogCi0gIGluZXYuaWUua2luZCA9IChob3Jpem9udGFsCi0JCSAgPyBIT1JJ
Wk9OVEFMX1NDUk9MTF9CQVJfQ0xJQ0tfRVZFTlQKLQkJICA6IFNDUk9MTF9CQVJfQ0xJQ0tf
RVZFTlQpOwotICBpbmV2LmllLmZyYW1lX29yX3dpbmRvdyA9IHdpbmRvdzsKLSAgaW5ldi5p
ZS5hcmcgPSBRbmlsOwotICBpbmV2LmllLnRpbWVzdGFtcCA9IDA7Ci0gIGluZXYuaWUuY29k
ZSA9IDA7Ci0gIGluZXYuaWUucGFydCA9IHBhcnQ7Ci0gIGluZXYuaWUueCA9IG1ha2VfZml4
bnVtIChwb3J0aW9uKTsKLSAgaW5ldi5pZS55ID0gbWFrZV9maXhudW0gKHdob2xlKTsKLSAg
aW5ldi5pZS5tb2RpZmllcnMgPSAwOworICBpbmV2LmtpbmQgPSAoaG9yaXpvbnRhbAorCSAg
ICAgICA/IEhPUklaT05UQUxfU0NST0xMX0JBUl9DTElDS19FVkVOVAorCSAgICAgICA6IFND
Uk9MTF9CQVJfQ0xJQ0tfRVZFTlQpOworICBpbmV2LmZyYW1lX29yX3dpbmRvdyA9IHdpbmRv
dzsKKyAgaW5ldi5hcmcgPSBRbmlsOworICBpbmV2LnRpbWVzdGFtcCA9IDA7CisgIGluZXYu
Y29kZSA9IDA7CisgIGluZXYucGFydCA9IHBhcnQ7CisgIGluZXYueCA9IG1ha2VfZml4bnVt
IChwb3J0aW9uKTsKKyAgaW5ldi55ID0gbWFrZV9maXhudW0gKHdob2xlKTsKKyAgaW5ldi5t
b2RpZmllcnMgPSAwOwogCiAgIGV2cV9lbnF1ZXVlICgmaW5ldik7CiB9CkBAIC00OTQyLDcg
KzQ5NjQsNiBAQCBwZ3RrX2FueV93aW5kb3dfdG9fZnJhbWUgKEdka1dpbmRvdyAqd2luZG93
KQogcGd0a19oYW5kbGVfZXZlbnQgKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtFdmVudCAqZXZl
bnQsIGdwb2ludGVyICpkYXRhKQogewogICBzdHJ1Y3QgZnJhbWUgKmY7Ci0gIHVuaW9uIGJ1
ZmZlcmVkX2lucHV0X2V2ZW50IGluZXY7CiAgIEd0a1dpZGdldCAqZnJhbWVfd2lkZ2V0Owog
ICBnaW50IHgsIHk7CiAKQEAgLTQ5NTksMTggKzQ5ODAsMTggQEAgcGd0a19oYW5kbGVfZXZl
bnQgKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtFdmVudCAqZXZlbnQsIGdwb2ludGVyICpkYXRh
KQogCQkJCQkmeCwgJnkpOwogICAgICAgaWYgKGYpCiAJewotCi0JICBpbmV2LmllLmtpbmQg
PSBQSU5DSF9FVkVOVDsKLQkgIFhTRVRGUkFNRSAoaW5ldi5pZS5mcmFtZV9vcl93aW5kb3cs
IGYpOwotCSAgWFNFVElOVCAoaW5ldi5pZS54LCB4KTsKLQkgIFhTRVRJTlQgKGluZXYuaWUu
eSwgeSk7Ci0JICBpbmV2LmllLmFyZyA9IGxpc3Q0IChtYWtlX2Zsb2F0IChldmVudC0+dG91
Y2hwYWRfcGluY2guZHgpLAotCQkJICAgICAgIG1ha2VfZmxvYXQgKGV2ZW50LT50b3VjaHBh
ZF9waW5jaC5keSksCi0JCQkgICAgICAgbWFrZV9mbG9hdCAoZXZlbnQtPnRvdWNocGFkX3Bp
bmNoLnNjYWxlKSwKLQkJCSAgICAgICBtYWtlX2Zsb2F0IChldmVudC0+dG91Y2hwYWRfcGlu
Y2guYW5nbGVfZGVsdGEpKTsKLQkgIGluZXYuaWUubW9kaWZpZXJzID0gcGd0a19ndGtfdG9f
ZW1hY3NfbW9kaWZpZXJzIChGUkFNRV9ESVNQTEFZX0lORk8gKGYpLAorCSAgc3RydWN0IGlu
cHV0X2V2ZW50IGluZXY7CisJICBpbmV2LmtpbmQgPSBQSU5DSF9FVkVOVDsKKwkgIFhTRVRG
UkFNRSAoaW5ldi5mcmFtZV9vcl93aW5kb3csIGYpOworCSAgWFNFVElOVCAoaW5ldi54LCB4
KTsKKwkgIFhTRVRJTlQgKGluZXYueSwgeSk7CisJICBpbmV2LmFyZyA9IGxpc3Q0IChtYWtl
X2Zsb2F0IChldmVudC0+dG91Y2hwYWRfcGluY2guZHgpLAorCQkJICAgIG1ha2VfZmxvYXQg
KGV2ZW50LT50b3VjaHBhZF9waW5jaC5keSksCisJCQkgICAgbWFrZV9mbG9hdCAoZXZlbnQt
PnRvdWNocGFkX3BpbmNoLnNjYWxlKSwKKwkJCSAgICBtYWtlX2Zsb2F0IChldmVudC0+dG91
Y2hwYWRfcGluY2guYW5nbGVfZGVsdGEpKTsKKwkgIGluZXYubW9kaWZpZXJzID0gcGd0a19n
dGtfdG9fZW1hY3NfbW9kaWZpZXJzIChGUkFNRV9ESVNQTEFZX0lORk8gKGYpLAogCQkJCQkJ
CSAgIGV2ZW50LT50b3VjaHBhZF9waW5jaC5zdGF0ZSk7Ci0JICBpbmV2LmllLmRldmljZQor
CSAgaW5ldi5kZXZpY2UKIAkgICAgPSBwZ3RrX2dldF9kZXZpY2VfZm9yX2V2ZW50IChGUkFN
RV9ESVNQTEFZX0lORk8gKGYpLCBldmVudCk7CiAJICBldnFfZW5xdWV1ZSAoJmluZXYpOwog
CX0KQEAgLTUxODgsMTcgKzUyMDksMTcgQEAgcGd0a19lbnF1ZXVlX3N0cmluZyAoc3RydWN0
IGZyYW1lICpmLCBnY2hhciAqc3RyKQogICAgIHJldHVybjsKICAgZm9yICg7ICp1c3RyICE9
IDA7IHVzdHIrKykKICAgICB7Ci0gICAgICB1bmlvbiBidWZmZXJlZF9pbnB1dF9ldmVudCBp
bmV2OworICAgICAgc3RydWN0IGlucHV0X2V2ZW50IGluZXY7CiAgICAgICBMaXNwX09iamVj
dCBjID0gbWFrZV9maXhudW0gKCp1c3RyKTsKLSAgICAgIEVWRU5UX0lOSVQgKGluZXYuaWUp
OwotICAgICAgaW5ldi5pZS5raW5kID0gKFNJTkdMRV9CWVRFX0NIQVJfUCAoWEZJWE5BVCAo
YykpCi0JCSAgICAgID8gQVNDSUlfS0VZU1RST0tFX0VWRU5UCi0JCSAgICAgIDogTVVMVElC
WVRFX0NIQVJfS0VZU1RST0tFX0VWRU5UKTsKLSAgICAgIGluZXYuaWUuYXJnID0gUW5pbDsK
LSAgICAgIGluZXYuaWUuY29kZSA9IFhGSVhOQVQgKGMpOwotICAgICAgWFNFVEZSQU1FIChp
bmV2LmllLmZyYW1lX29yX3dpbmRvdywgZik7Ci0gICAgICBpbmV2LmllLm1vZGlmaWVycyA9
IDA7Ci0gICAgICBpbmV2LmllLnRpbWVzdGFtcCA9IDA7CisgICAgICBFVkVOVF9JTklUIChp
bmV2KTsKKyAgICAgIGluZXYua2luZCA9IChTSU5HTEVfQllURV9DSEFSX1AgKFhGSVhOQVQg
KGMpKQorCQkgICA/IEFTQ0lJX0tFWVNUUk9LRV9FVkVOVAorCQkgICA6IE1VTFRJQllURV9D
SEFSX0tFWVNUUk9LRV9FVkVOVCk7CisgICAgICBpbmV2LmFyZyA9IFFuaWw7CisgICAgICBp
bmV2LmNvZGUgPSBYRklYTkFUIChjKTsKKyAgICAgIFhTRVRGUkFNRSAoaW5ldi5mcmFtZV9v
cl93aW5kb3csIGYpOworICAgICAgaW5ldi5tb2RpZmllcnMgPSAwOworICAgICAgaW5ldi50
aW1lc3RhbXAgPSAwOwogICAgICAgZXZxX2VucXVldWUgKCZpbmV2KTsKICAgICB9CiAKQEAg
LTUyMDgsMjggKzUyMjksMjggQEAgcGd0a19lbnF1ZXVlX3N0cmluZyAoc3RydWN0IGZyYW1l
ICpmLCBnY2hhciAqc3RyKQogdm9pZAogcGd0a19lbnF1ZXVlX3ByZWVkaXQgKHN0cnVjdCBm
cmFtZSAqZiwgTGlzcF9PYmplY3QgcHJlZWRpdCkKIHsKLSAgdW5pb24gYnVmZmVyZWRfaW5w
dXRfZXZlbnQgaW5ldjsKLSAgRVZFTlRfSU5JVCAoaW5ldi5pZSk7Ci0gIGluZXYuaWUua2lu
ZCA9IFBSRUVESVRfVEVYVF9FVkVOVDsKLSAgaW5ldi5pZS5hcmcgPSBwcmVlZGl0OwotICBp
bmV2LmllLmNvZGUgPSAwOwotICBYU0VURlJBTUUgKGluZXYuaWUuZnJhbWVfb3Jfd2luZG93
LCBmKTsKLSAgaW5ldi5pZS5tb2RpZmllcnMgPSAwOwotICBpbmV2LmllLnRpbWVzdGFtcCA9
IDA7CisgIHN0cnVjdCBpbnB1dF9ldmVudCBpbmV2OworICBFVkVOVF9JTklUIChpbmV2KTsK
KyAgaW5ldi5raW5kID0gUFJFRURJVF9URVhUX0VWRU5UOworICBpbmV2LmFyZyA9IHByZWVk
aXQ7CisgIGluZXYuY29kZSA9IDA7CisgIFhTRVRGUkFNRSAoaW5ldi5mcmFtZV9vcl93aW5k
b3csIGYpOworICBpbmV2Lm1vZGlmaWVycyA9IDA7CisgIGluZXYudGltZXN0YW1wID0gMDsK
ICAgZXZxX2VucXVldWUgKCZpbmV2KTsKIH0KIAogc3RhdGljIGdib29sZWFuCiBrZXlfcHJl
c3NfZXZlbnQgKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtFdmVudCAqZXZlbnQsIGdwb2ludGVy
ICp1c2VyX2RhdGEpCiB7Ci0gIHVuaW9uIGJ1ZmZlcmVkX2lucHV0X2V2ZW50IGluZXY7Cisg
IHN0cnVjdCBpbnB1dF9ldmVudCBpbmV2OwogICBwdHJkaWZmX3QgbmJ5dGVzOwogICBNb3Vz
ZV9ITEluZm8gKmhsaW5mbzsKICAgc3RydWN0IGZyYW1lICpmOwogICBzdHJ1Y3QgcGd0a19k
aXNwbGF5X2luZm8gKmRweWluZm87CiAKICAgZiA9IHBndGtfYW55X3dpbmRvd190b19mcmFt
ZSAoZ3RrX3dpZGdldF9nZXRfd2luZG93ICh3aWRnZXQpKTsKLSAgRVZFTlRfSU5JVCAoaW5l
di5pZSk7CisgIEVWRU5UX0lOSVQgKGluZXYpOwogICBobGluZm8gPSBNT1VTRV9ITF9JTkZP
IChmKTsKICAgbmJ5dGVzID0gMDsKIApAQCAtNTMwMCwyMCArNTMyMSwyMCBAQCBrZXlfcHJl
c3NfZXZlbnQgKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtFdmVudCAqZXZlbnQsIGdwb2ludGVy
ICp1c2VyX2RhdGEpCiAgICAgICBvcmlnX2tleXN5bSA9IGtleXN5bTsKIAogICAgICAgLyog
Q29tbW9uIGZvciBhbGwga2V5c3ltIGlucHV0IGV2ZW50cy4gICovCi0gICAgICBYU0VURlJB
TUUgKGluZXYuaWUuZnJhbWVfb3Jfd2luZG93LCBmKTsKLSAgICAgIGluZXYuaWUubW9kaWZp
ZXJzCisgICAgICBYU0VURlJBTUUgKGluZXYuZnJhbWVfb3Jfd2luZG93LCBmKTsKKyAgICAg
IGluZXYubW9kaWZpZXJzCiAJPSBwZ3RrX2d0a190b19lbWFjc19tb2RpZmllcnMgKEZSQU1F
X0RJU1BMQVlfSU5GTyAoZiksIG1vZGlmaWVycyk7Ci0gICAgICBpbmV2LmllLnRpbWVzdGFt
cCA9IGV2ZW50LT5rZXkudGltZTsKKyAgICAgIGluZXYudGltZXN0YW1wID0gZXZlbnQtPmtl
eS50aW1lOwogCiAgICAgICAvKiBGaXJzdCBkZWFsIHdpdGgga2V5c3ltcyB3aGljaCBoYXZl
IGRlZmluZWQKICAgICAgICAgIHRyYW5zbGF0aW9ucyB0byBjaGFyYWN0ZXJzLiAgKi8KICAg
ICAgIGlmIChrZXlzeW0gPj0gMzIgJiYga2V5c3ltIDwgMTI4KQogCS8qIEF2b2lkIGV4cGxp
Y2l0bHkgZGVjb2RpbmcgZWFjaCBBU0NJSSBjaGFyYWN0ZXIuICAqLwogCXsKLQkgIGluZXYu
aWUua2luZCA9IEFTQ0lJX0tFWVNUUk9LRV9FVkVOVDsKLQkgIGluZXYuaWUuY29kZSA9IGtl
eXN5bTsKKwkgIGluZXYua2luZCA9IEFTQ0lJX0tFWVNUUk9LRV9FVkVOVDsKKwkgIGluZXYu
Y29kZSA9IGtleXN5bTsKIAotCSAgaW5ldi5pZS5kZXZpY2UKKwkgIGluZXYuZGV2aWNlCiAJ
ICAgID0gcGd0a19nZXRfZGV2aWNlX2Zvcl9ldmVudCAoRlJBTUVfRElTUExBWV9JTkZPIChm
KSwgZXZlbnQpOwogCSAgZ290byBkb25lOwogCX0KQEAgLTUzMjIsMTIgKzUzNDMsMTIgQEAg
a2V5X3ByZXNzX2V2ZW50IChHdGtXaWRnZXQgKndpZGdldCwgR2RrRXZlbnQgKmV2ZW50LCBn
cG9pbnRlciAqdXNlcl9kYXRhKQogICAgICAgaWYgKGtleXN5bSA+PSAweDAxMDAwMDAwICYm
IGtleXN5bSA8PSAweDAxMTBGRkZGKQogCXsKIAkgIGlmIChrZXlzeW0gPCAweDAxMDAwMDgw
KQotCSAgICBpbmV2LmllLmtpbmQgPSBBU0NJSV9LRVlTVFJPS0VfRVZFTlQ7CisJICAgIGlu
ZXYua2luZCA9IEFTQ0lJX0tFWVNUUk9LRV9FVkVOVDsKIAkgIGVsc2UKLQkgICAgaW5ldi5p
ZS5raW5kID0gTVVMVElCWVRFX0NIQVJfS0VZU1RST0tFX0VWRU5UOwotCSAgaW5ldi5pZS5j
b2RlID0ga2V5c3ltICYgMHhGRkZGRkY7CisJICAgIGluZXYua2luZCA9IE1VTFRJQllURV9D
SEFSX0tFWVNUUk9LRV9FVkVOVDsKKwkgIGluZXYuY29kZSA9IGtleXN5bSAmIDB4RkZGRkZG
OwogCi0JICBpbmV2LmllLmRldmljZQorCSAgaW5ldi5kZXZpY2UKIAkgICAgPSBwZ3RrX2dl
dF9kZXZpY2VfZm9yX2V2ZW50IChGUkFNRV9ESVNQTEFZX0lORk8gKGYpLCBldmVudCk7CiAJ
ICBnb3RvIGRvbmU7CiAJfQpAQCAtNTMzNywxMiArNTM1OCwxMiBAQCBrZXlfcHJlc3NfZXZl
bnQgKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtFdmVudCAqZXZlbnQsIGdwb2ludGVyICp1c2Vy
X2RhdGEpCiAJICAmJiAoYyA9IEZnZXRoYXNoIChtYWtlX2ZpeG51bSAoa2V5c3ltKSwKIAkJ
CSAgICBWcGd0a19rZXlzeW1fdGFibGUsIFFuaWwpLCBGSVhOQVRQIChjKSkpCiAJewotCSAg
aW5ldi5pZS5raW5kID0gKFNJTkdMRV9CWVRFX0NIQVJfUCAoWEZJWE5BVCAoYykpCi0JCQkg
ID8gQVNDSUlfS0VZU1RST0tFX0VWRU5UCi0JCQkgIDogTVVMVElCWVRFX0NIQVJfS0VZU1RS
T0tFX0VWRU5UKTsKLQkgIGluZXYuaWUuY29kZSA9IFhGSVhOQVQgKGMpOworCSAgaW5ldi5r
aW5kID0gKFNJTkdMRV9CWVRFX0NIQVJfUCAoWEZJWE5BVCAoYykpCisJCSAgICAgICA/IEFT
Q0lJX0tFWVNUUk9LRV9FVkVOVAorCQkgICAgICAgOiBNVUxUSUJZVEVfQ0hBUl9LRVlTVFJP
S0VfRVZFTlQpOworCSAgaW5ldi5jb2RlID0gWEZJWE5BVCAoYyk7CiAKLQkgIGluZXYuaWUu
ZGV2aWNlCisJICBpbmV2LmRldmljZQogCSAgICA9IHBndGtfZ2V0X2RldmljZV9mb3JfZXZl
bnQgKEZSQU1FX0RJU1BMQVlfSU5GTyAoZiksIGV2ZW50KTsKIAkgIGdvdG8gZG9uZTsKIAl9
CkBAIC01NDIxLDE4ICs1NDQyLDE4IEBAIGtleV9wcmVzc19ldmVudCAoR3RrV2lkZ2V0ICp3
aWRnZXQsIEdka0V2ZW50ICpldmVudCwgZ3BvaW50ZXIgKnVzZXJfZGF0YSkKIAl7CiAJICAv
KiBtYWtlX2xpc3B5X2V2ZW50IHdpbGwgY29udmVydCB0aGlzIHRvIGEgc3ltYm9saWMKIAkg
ICAgIGtleS4gICovCi0JICBpbmV2LmllLmtpbmQgPSBOT05fQVNDSUlfS0VZU1RST0tFX0VW
RU5UOwotCSAgaW5ldi5pZS5jb2RlID0ga2V5c3ltOworCSAgaW5ldi5raW5kID0gTk9OX0FT
Q0lJX0tFWVNUUk9LRV9FVkVOVDsKKwkgIGluZXYuY29kZSA9IGtleXN5bTsKIAotCSAgaW5l
di5pZS5kZXZpY2UKKwkgIGluZXYuZGV2aWNlCiAJICAgID0gcGd0a19nZXRfZGV2aWNlX2Zv
cl9ldmVudCAoRlJBTUVfRElTUExBWV9JTkZPIChmKSwgZXZlbnQpOwogCSAgZ290byBkb25l
OwogCX0KIAogICAgICAgewotCWluZXYuaWUua2luZCA9IE1VTFRJQllURV9DSEFSX0tFWVNU
Uk9LRV9FVkVOVDsKLQlpbmV2LmllLmFyZyA9IG1ha2VfdW5pYnl0ZV9zdHJpbmcgKChjaGFy
ICopIGNvcHlfYnVmcHRyLCBuYnl0ZXMpOwotCWluZXYuaWUuZGV2aWNlCisJaW5ldi5raW5k
ID0gTVVMVElCWVRFX0NIQVJfS0VZU1RST0tFX0VWRU5UOworCWluZXYuYXJnID0gbWFrZV91
bmlieXRlX3N0cmluZyAoKGNoYXIgKikgY29weV9idWZwdHIsIG5ieXRlcyk7CisJaW5ldi5k
ZXZpY2UKIAkgID0gcGd0a19nZXRfZGV2aWNlX2Zvcl9ldmVudCAoRlJBTUVfRElTUExBWV9J
TkZPIChmKSwgZXZlbnQpOwogCiAJaWYgKGtleXN5bSA9PSBHREtfS0VZX1ZvaWRTeW1ib2wp
CkBAIC01NDQxLDkgKzU0NjIsOSBAQCBrZXlfcHJlc3NfZXZlbnQgKEd0a1dpZGdldCAqd2lk
Z2V0LCBHZGtFdmVudCAqZXZlbnQsIGdwb2ludGVyICp1c2VyX2RhdGEpCiAgICAgfQogCiBk
b25lOgotICBpZiAoaW5ldi5pZS5raW5kICE9IE5PX0VWRU5UKQorICBpZiAoaW5ldi5raW5k
ICE9IE5PX0VWRU5UKQogICAgIHsKLSAgICAgIFhTRVRGUkFNRSAoaW5ldi5pZS5mcmFtZV9v
cl93aW5kb3csIGYpOworICAgICAgWFNFVEZSQU1FIChpbmV2LmZyYW1lX29yX3dpbmRvdywg
Zik7CiAgICAgICBldnFfZW5xdWV1ZSAoJmluZXYpOwogICAgIH0KIApAQCAtNTUyMiwxMSAr
NTU0MywxMSBAQCBtYXBfZXZlbnQgKEd0a1dpZGdldCAqd2lkZ2V0LAogCSAgIGdwb2ludGVy
ICp1c2VyX2RhdGEpCiB7CiAgIHN0cnVjdCBmcmFtZSAqZiA9IHBndGtfYW55X3dpbmRvd190
b19mcmFtZSAoZXZlbnQtPmFueS53aW5kb3cpOwotICB1bmlvbiBidWZmZXJlZF9pbnB1dF9l
dmVudCBpbmV2OworICBzdHJ1Y3QgaW5wdXRfZXZlbnQgaW5ldjsKIAotICBFVkVOVF9JTklU
IChpbmV2LmllKTsKLSAgaW5ldi5pZS5raW5kID0gTk9fRVZFTlQ7Ci0gIGluZXYuaWUuYXJn
ID0gUW5pbDsKKyAgRVZFTlRfSU5JVCAoaW5ldik7CisgIGluZXYua2luZCA9IE5PX0VWRU5U
OworICBpbmV2LmFyZyA9IFFuaWw7CiAKICAgaWYgKGYpCiAgICAgewpAQCAtNTU1MywxMiAr
NTU3NCwxMiBAQCBtYXBfZXZlbnQgKEd0a1dpZGdldCAqd2lkZ2V0LAogCiAgICAgICBpZiAo
aWNvbmlmaWVkKQogCXsKLQkgIGluZXYuaWUua2luZCA9IERFSUNPTklGWV9FVkVOVDsKLQkg
IFhTRVRGUkFNRSAoaW5ldi5pZS5mcmFtZV9vcl93aW5kb3csIGYpOworCSAgaW5ldi5raW5k
ID0gREVJQ09OSUZZX0VWRU5UOworCSAgWFNFVEZSQU1FIChpbmV2LmZyYW1lX29yX3dpbmRv
dywgZik7CiAJfQogICAgIH0KIAotICBpZiAoaW5ldi5pZS5raW5kICE9IE5PX0VWRU5UKQor
ICBpZiAoaW5ldi5raW5kICE9IE5PX0VWRU5UKQogICAgIGV2cV9lbnF1ZXVlICgmaW5ldik7
CiAgIHJldHVybiBGQUxTRTsKIH0KQEAgLTU1NzAsMTMgKzU1OTEsMTMgQEAgd2luZG93X3N0
YXRlX2V2ZW50IChHdGtXaWRnZXQgKndpZGdldCwKIHsKICAgc3RydWN0IGZyYW1lICpmID0g
cGd0a19hbnlfd2luZG93X3RvX2ZyYW1lIChldmVudC0+d2luZG93X3N0YXRlLndpbmRvdyk7
CiAgIEdka1dpbmRvd1N0YXRlIG5ld19zdGF0ZTsKLSAgdW5pb24gYnVmZmVyZWRfaW5wdXRf
ZXZlbnQgaW5ldjsKKyAgc3RydWN0IGlucHV0X2V2ZW50IGluZXY7CiAKICAgbmV3X3N0YXRl
ID0gZXZlbnQtPndpbmRvd19zdGF0ZS5uZXdfd2luZG93X3N0YXRlOwogCi0gIEVWRU5UX0lO
SVQgKGluZXYuaWUpOwotICBpbmV2LmllLmtpbmQgPSBOT19FVkVOVDsKLSAgaW5ldi5pZS5h
cmcgPSBRbmlsOworICBFVkVOVF9JTklUIChpbmV2KTsKKyAgaW5ldi5raW5kID0gTk9fRVZF
TlQ7CisgIGluZXYuYXJnID0gUW5pbDsKIAogICBpZiAobmV3X3N0YXRlICYgR0RLX1dJTkRP
V19TVEFURV9GVUxMU0NSRUVOKQogICAgIHN0b3JlX2ZyYW1lX3BhcmFtIChmLCBRZnVsbHNj
cmVlbiwgUWZ1bGxib3RoKTsKQEAgLTU2MjIsOCArNTY0Myw4IEBAIHdpbmRvd19zdGF0ZV9l
dmVudCAoR3RrV2lkZ2V0ICp3aWRnZXQsCiAgIGVsc2UKICAgICB7CiAgICAgICBGUkFNRV9Y
X09VVFBVVCAoZiktPmhhc19iZWVuX3Zpc2libGUgPSB0cnVlOwotICAgICAgaW5ldi5pZS5r
aW5kID0gREVJQ09OSUZZX0VWRU5UOwotICAgICAgWFNFVEZSQU1FIChpbmV2LmllLmZyYW1l
X29yX3dpbmRvdywgZik7CisgICAgICBpbmV2LmtpbmQgPSBERUlDT05JRllfRVZFTlQ7Cisg
ICAgICBYU0VURlJBTUUgKGluZXYuZnJhbWVfb3Jfd2luZG93LCBmKTsKICAgICAgIFNFVF9G
UkFNRV9JQ09OSUZJRUQgKGYsIGZhbHNlKTsKICAgICAgIFNFVF9GUkFNRV9WSVNJQkxFIChm
LCB0cnVlKTsKICAgICB9CkBAIC01NjMzLDcgKzU2NTQsNyBAQCB3aW5kb3dfc3RhdGVfZXZl
bnQgKEd0a1dpZGdldCAqd2lkZ2V0LAogICBlbHNlCiAgICAgc3RvcmVfZnJhbWVfcGFyYW0g
KGYsIFFzdGlja3ksIFFuaWwpOwogCi0gIGlmIChpbmV2LmllLmtpbmQgIT0gTk9fRVZFTlQp
CisgIGlmIChpbmV2LmtpbmQgIT0gTk9fRVZFTlQpCiAgICAgZXZxX2VucXVldWUgKCZpbmV2
KTsKICAgcmV0dXJuIEZBTFNFOwogfQpAQCAtNTY0MywxOSArNTY2NCwxOSBAQCBkZWxldGVf
ZXZlbnQgKEd0a1dpZGdldCAqd2lkZ2V0LAogCSAgICAgIEdka0V2ZW50ICpldmVudCwgZ3Bv
aW50ZXIgKnVzZXJfZGF0YSkKIHsKICAgc3RydWN0IGZyYW1lICpmID0gcGd0a19hbnlfd2lu
ZG93X3RvX2ZyYW1lIChldmVudC0+YW55LndpbmRvdyk7Ci0gIHVuaW9uIGJ1ZmZlcmVkX2lu
cHV0X2V2ZW50IGluZXY7CisgIHN0cnVjdCBpbnB1dF9ldmVudCBpbmV2OwogCi0gIEVWRU5U
X0lOSVQgKGluZXYuaWUpOwotICBpbmV2LmllLmtpbmQgPSBOT19FVkVOVDsKLSAgaW5ldi5p
ZS5hcmcgPSBRbmlsOworICBFVkVOVF9JTklUIChpbmV2KTsKKyAgaW5ldi5raW5kID0gTk9f
RVZFTlQ7CisgIGluZXYuYXJnID0gUW5pbDsKIAogICBpZiAoZikKICAgICB7Ci0gICAgICBp
bmV2LmllLmtpbmQgPSBERUxFVEVfV0lORE9XX0VWRU5UOwotICAgICAgWFNFVEZSQU1FIChp
bmV2LmllLmZyYW1lX29yX3dpbmRvdywgZik7CisgICAgICBpbmV2LmtpbmQgPSBERUxFVEVf
V0lORE9XX0VWRU5UOworICAgICAgWFNFVEZSQU1FIChpbmV2LmZyYW1lX29yX3dpbmRvdywg
Zik7CiAgICAgfQogCi0gIGlmIChpbmV2LmllLmtpbmQgIT0gTk9fRVZFTlQpCisgIGlmIChp
bmV2LmtpbmQgIT0gTk9fRVZFTlQpCiAgICAgZXZxX2VucXVldWUgKCZpbmV2KTsKICAgcmV0
dXJuIFRSVUU7CiB9CkBAIC01NjcyLDcgKzU2OTMsNyBAQCBkZWxldGVfZXZlbnQgKEd0a1dp
ZGdldCAqd2lkZ2V0LAogc3RhdGljIHZvaWQKIHBndGtfZm9jdXNfY2hhbmdlZCAoZ2Jvb2xl
YW4gaXNfZW50ZXIsIGludCBzdGF0ZSwKIAkJICAgIHN0cnVjdCBwZ3RrX2Rpc3BsYXlfaW5m
byAqZHB5aW5mbywgc3RydWN0IGZyYW1lICpmcmFtZSwKLQkJICAgIHVuaW9uIGJ1ZmZlcmVk
X2lucHV0X2V2ZW50ICpidWZwKQorCQkgICAgc3RydWN0IGlucHV0X2V2ZW50ICpidWZwKQog
ewogICBpZiAoaXNfZW50ZXIpCiAgICAgewpAQCAtNTY4NCwxMyArNTcwNSwxMyBAQCBwZ3Rr
X2ZvY3VzX2NoYW5nZWQgKGdib29sZWFuIGlzX2VudGVyLCBpbnQgc3RhdGUsCiAJICAvKiBE
b24ndCBzdG9wIGRpc3BsYXlpbmcgdGhlIGluaXRpYWwgc3RhcnR1cCBtZXNzYWdlCiAJICAg
ICBmb3IgYSBzd2l0Y2gtZnJhbWUgZXZlbnQgd2UgZG9uJ3QgbmVlZC4gICovCiAJICAvKiBX
aGVuIHJ1biBhcyBhIGRhZW1vbiwgVnRlcm1pbmFsX2ZyYW1lIGlzIGFsd2F5cyBOSUwuICAq
LwotCSAgYnVmcC0+aWUuYXJnID0gKCgoTklMUCAoVnRlcm1pbmFsX2ZyYW1lKQotCQkJICAg
IHx8ICFGUkFNRV9QR1RLX1AgKFhGUkFNRSAoVnRlcm1pbmFsX2ZyYW1lKSkKLQkJCSAgICB8
fCBFUSAoRmRhZW1vbnAgKCksIFF0KSkKLQkJCSAgICYmIENPTlNQIChWZnJhbWVfbGlzdCkK
LQkJCSAgICYmICFOSUxQIChYQ0RSIChWZnJhbWVfbGlzdCkpKSA/IFF0IDogUW5pbCk7Ci0J
ICBidWZwLT5pZS5raW5kID0gRk9DVVNfSU5fRVZFTlQ7Ci0JICBYU0VURlJBTUUgKGJ1ZnAt
PmllLmZyYW1lX29yX3dpbmRvdywgZnJhbWUpOworCSAgYnVmcC0+YXJnID0gKCgoTklMUCAo
VnRlcm1pbmFsX2ZyYW1lKQorCQkJIHx8ICFGUkFNRV9QR1RLX1AgKFhGUkFNRSAoVnRlcm1p
bmFsX2ZyYW1lKSkKKwkJCSB8fCBFUSAoRmRhZW1vbnAgKCksIFF0KSkKKwkJCSYmIENPTlNQ
IChWZnJhbWVfbGlzdCkKKwkJCSYmICFOSUxQIChYQ0RSIChWZnJhbWVfbGlzdCkpKSA/IFF0
IDogUW5pbCk7CisJICBidWZwLT5raW5kID0gRk9DVVNfSU5fRVZFTlQ7CisJICBYU0VURlJB
TUUgKGJ1ZnAtPmZyYW1lX29yX3dpbmRvdywgZnJhbWUpOwogCX0KIAogICAgICAgZnJhbWUt
Pm91dHB1dF9kYXRhLnBndGstPmZvY3VzX3N0YXRlIHw9IHN0YXRlOwpAQCAtNTcwNSw4ICs1
NzI2LDggQEAgcGd0a19mb2N1c19jaGFuZ2VkIChnYm9vbGVhbiBpc19lbnRlciwgaW50IHN0
YXRlLAogICAgICAgICAgIGRweWluZm8tPnhfZm9jdXNfZXZlbnRfZnJhbWUgPSAwOwogICAg
ICAgICAgIHBndGtfbmV3X2ZvY3VzX2ZyYW1lIChkcHlpbmZvLCBOVUxMKTsKIAotICAgICAg
ICAgIGJ1ZnAtPmllLmtpbmQgPSBGT0NVU19PVVRfRVZFTlQ7Ci0gICAgICAgICAgWFNFVEZS
QU1FIChidWZwLT5pZS5mcmFtZV9vcl93aW5kb3csIGZyYW1lKTsKKwkgIGJ1ZnAtPmtpbmQg
PSBGT0NVU19PVVRfRVZFTlQ7CisJICBYU0VURlJBTUUgKGJ1ZnAtPmZyYW1lX29yX3dpbmRv
dywgZnJhbWUpOwogICAgICAgICB9CiAKICAgICAgIGlmIChmcmFtZS0+cG9pbnRlcl9pbnZp
c2libGUpCkBAIC01NzE4LDcgKzU3MzksNyBAQCBwZ3RrX2ZvY3VzX2NoYW5nZWQgKGdib29s
ZWFuIGlzX2VudGVyLCBpbnQgc3RhdGUsCiBlbnRlcl9ub3RpZnlfZXZlbnQgKEd0a1dpZGdl
dCAqd2lkZ2V0LCBHZGtFdmVudCAqZXZlbnQsCiAJCSAgICBncG9pbnRlciAqdXNlcl9kYXRh
KQogewotICB1bmlvbiBidWZmZXJlZF9pbnB1dF9ldmVudCBpbmV2OworICBzdHJ1Y3QgaW5w
dXRfZXZlbnQgaW5ldjsKICAgc3RydWN0IGZyYW1lICpmcmFtZQogICAgID0gcGd0a19hbnlf
d2luZG93X3RvX2ZyYW1lIChndGtfd2lkZ2V0X2dldF93aW5kb3cgKHdpZGdldCkpOwogCkBA
IC01NzMwLDE0ICs1NzUxLDE0IEBAIGVudGVyX25vdGlmeV9ldmVudCAoR3RrV2lkZ2V0ICp3
aWRnZXQsIEdka0V2ZW50ICpldmVudCwKICAgaW50IGZvY3VzX3N0YXRlCiAgICAgPSBmb2N1
c19mcmFtZSA/IGZvY3VzX2ZyYW1lLT5vdXRwdXRfZGF0YS5wZ3RrLT5mb2N1c19zdGF0ZSA6
IDA7CiAKLSAgRVZFTlRfSU5JVCAoaW5ldi5pZSk7Ci0gIGluZXYuaWUua2luZCA9IE5PX0VW
RU5UOwotICBpbmV2LmllLmFyZyA9IFFuaWw7CisgIEVWRU5UX0lOSVQgKGluZXYpOworICBp
bmV2LmtpbmQgPSBOT19FVkVOVDsKKyAgaW5ldi5hcmcgPSBRbmlsOwogCiAgIGlmIChldmVu
dC0+Y3Jvc3NpbmcuZGV0YWlsICE9IEdES19OT1RJRllfSU5GRVJJT1IKICAgICAgICYmIGV2
ZW50LT5jcm9zc2luZy5mb2N1cyAmJiAhKGZvY3VzX3N0YXRlICYgRk9DVVNfRVhQTElDSVQp
KQogICAgIHBndGtfZm9jdXNfY2hhbmdlZCAoVFJVRSwgRk9DVVNfSU1QTElDSVQsIGRweWlu
Zm8sIGZyYW1lLCAmaW5ldik7Ci0gIGlmIChpbmV2LmllLmtpbmQgIT0gTk9fRVZFTlQpCisg
IGlmIChpbmV2LmtpbmQgIT0gTk9fRVZFTlQpCiAgICAgZXZxX2VucXVldWUgKCZpbmV2KTsK
ICAgcmV0dXJuIFRSVUU7CiB9CkBAIC01NzQ2LDcgKzU3NjcsNyBAQCBlbnRlcl9ub3RpZnlf
ZXZlbnQgKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtFdmVudCAqZXZlbnQsCiBsZWF2ZV9ub3Rp
ZnlfZXZlbnQgKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtFdmVudCAqZXZlbnQsCiAJCSAgICBn
cG9pbnRlciAqdXNlcl9kYXRhKQogewotICB1bmlvbiBidWZmZXJlZF9pbnB1dF9ldmVudCBp
bmV2OworICBzdHJ1Y3QgaW5wdXRfZXZlbnQgaW5ldjsKICAgc3RydWN0IGZyYW1lICpmcmFt
ZQogICAgID0gcGd0a19hbnlfd2luZG93X3RvX2ZyYW1lIChndGtfd2lkZ2V0X2dldF93aW5k
b3cgKHdpZGdldCkpOwogCkBAIC01NzY3LDkgKzU3ODgsOSBAQCBsZWF2ZV9ub3RpZnlfZXZl
bnQgKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtFdmVudCAqZXZlbnQsCiAgICAgICBobGluZm8t
Pm1vdXNlX2ZhY2VfbW91c2VfZnJhbWUgPSAwOwogICAgIH0KIAotICBFVkVOVF9JTklUIChp
bmV2LmllKTsKLSAgaW5ldi5pZS5raW5kID0gTk9fRVZFTlQ7Ci0gIGluZXYuaWUuYXJnID0g
UW5pbDsKKyAgRVZFTlRfSU5JVCAoaW5ldik7CisgIGluZXYua2luZCA9IE5PX0VWRU5UOwor
ICBpbmV2LmFyZyA9IFFuaWw7CiAKICAgaWYgKGV2ZW50LT5jcm9zc2luZy5kZXRhaWwgIT0g
R0RLX05PVElGWV9JTkZFUklPUgogICAgICAgJiYgZXZlbnQtPmNyb3NzaW5nLmZvY3VzICYm
ICEoZm9jdXNfc3RhdGUgJiBGT0NVU19FWFBMSUNJVCkpCkBAIC01Nzg2LDcgKzU4MDcsNyBA
QCBsZWF2ZV9ub3RpZnlfZXZlbnQgKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtFdmVudCAqZXZl
bnQsCiAJfQogICAgIH0KIAotICBpZiAoaW5ldi5pZS5raW5kICE9IE5PX0VWRU5UKQorICBp
ZiAoaW5ldi5raW5kICE9IE5PX0VWRU5UKQogICAgIGV2cV9lbnF1ZXVlICgmaW5ldik7CiAg
IHJldHVybiBUUlVFOwogfQpAQCAtNTc5NCwyMCArNTgxNSwyMCBAQCBsZWF2ZV9ub3RpZnlf
ZXZlbnQgKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtFdmVudCAqZXZlbnQsCiBzdGF0aWMgZ2Jv
b2xlYW4KIGZvY3VzX2luX2V2ZW50IChHdGtXaWRnZXQgKndpZGdldCwgR2RrRXZlbnQgKmV2
ZW50LCBncG9pbnRlciAqdXNlcl9kYXRhKQogewotICB1bmlvbiBidWZmZXJlZF9pbnB1dF9l
dmVudCBpbmV2OworICBzdHJ1Y3QgaW5wdXRfZXZlbnQgaW5ldjsKICAgc3RydWN0IGZyYW1l
ICpmcmFtZQogICAgID0gcGd0a19hbnlfd2luZG93X3RvX2ZyYW1lIChndGtfd2lkZ2V0X2dl
dF93aW5kb3cgKHdpZGdldCkpOwogCiAgIGlmIChmcmFtZSA9PSBOVUxMKQogICAgIHJldHVy
biBUUlVFOwogCi0gIEVWRU5UX0lOSVQgKGluZXYuaWUpOwotICBpbmV2LmllLmtpbmQgPSBO
T19FVkVOVDsKLSAgaW5ldi5pZS5hcmcgPSBRbmlsOworICBFVkVOVF9JTklUIChpbmV2KTsK
KyAgaW5ldi5raW5kID0gTk9fRVZFTlQ7CisgIGluZXYuYXJnID0gUW5pbDsKIAogICBwZ3Rr
X2ZvY3VzX2NoYW5nZWQgKFRSVUUsIEZPQ1VTX0VYUExJQ0lULAogCQkgICAgICBGUkFNRV9E
SVNQTEFZX0lORk8gKGZyYW1lKSwgZnJhbWUsICZpbmV2KTsKLSAgaWYgKGluZXYuaWUua2lu
ZCAhPSBOT19FVkVOVCkKKyAgaWYgKGluZXYua2luZCAhPSBOT19FVkVOVCkKICAgICBldnFf
ZW5xdWV1ZSAoJmluZXYpOwogCiAgIHBndGtfaW1fZm9jdXNfaW4gKGZyYW1lKTsKQEAgLTU4
MTgsMjAgKzU4MzksMjAgQEAgZm9jdXNfaW5fZXZlbnQgKEd0a1dpZGdldCAqd2lkZ2V0LCBH
ZGtFdmVudCAqZXZlbnQsIGdwb2ludGVyICp1c2VyX2RhdGEpCiBzdGF0aWMgZ2Jvb2xlYW4K
IGZvY3VzX291dF9ldmVudCAoR3RrV2lkZ2V0ICp3aWRnZXQsIEdka0V2ZW50ICpldmVudCwg
Z3BvaW50ZXIgKnVzZXJfZGF0YSkKIHsKLSAgdW5pb24gYnVmZmVyZWRfaW5wdXRfZXZlbnQg
aW5ldjsKKyAgc3RydWN0IGlucHV0X2V2ZW50IGluZXY7CiAgIHN0cnVjdCBmcmFtZSAqZnJh
bWUKICAgICA9IHBndGtfYW55X3dpbmRvd190b19mcmFtZSAoZ3RrX3dpZGdldF9nZXRfd2lu
ZG93ICh3aWRnZXQpKTsKIAogICBpZiAoZnJhbWUgPT0gTlVMTCkKICAgICByZXR1cm4gVFJV
RTsKIAotICBFVkVOVF9JTklUIChpbmV2LmllKTsKLSAgaW5ldi5pZS5raW5kID0gTk9fRVZF
TlQ7Ci0gIGluZXYuaWUuYXJnID0gUW5pbDsKKyAgRVZFTlRfSU5JVCAoaW5ldik7CisgIGlu
ZXYua2luZCA9IE5PX0VWRU5UOworICBpbmV2LmFyZyA9IFFuaWw7CiAKICAgcGd0a19mb2N1
c19jaGFuZ2VkIChGQUxTRSwgRk9DVVNfRVhQTElDSVQsCiAJCSAgICAgIEZSQU1FX0RJU1BM
QVlfSU5GTyAoZnJhbWUpLCBmcmFtZSwgJmluZXYpOwotICBpZiAoaW5ldi5pZS5raW5kICE9
IE5PX0VWRU5UKQorICBpZiAoaW5ldi5raW5kICE9IE5PX0VWRU5UKQogICAgIGV2cV9lbnF1
ZXVlICgmaW5ldik7CiAKICAgcGd0a19pbV9mb2N1c19vdXQgKGZyYW1lKTsKQEAgLTU5MDEs
NyArNTkyMiw3IEBAIG5vdGVfbW91c2VfbW92ZW1lbnQgKHN0cnVjdCBmcmFtZSAqZnJhbWUs
CiBtb3Rpb25fbm90aWZ5X2V2ZW50IChHdGtXaWRnZXQgKndpZGdldCwgR2RrRXZlbnQgKmV2
ZW50LAogCQkgICAgIGdwb2ludGVyICp1c2VyX2RhdGEpCiB7Ci0gIHVuaW9uIGJ1ZmZlcmVk
X2lucHV0X2V2ZW50IGluZXY7CisgIHN0cnVjdCBpbnB1dF9ldmVudCBpbmV2OwogICBzdHJ1
Y3QgZnJhbWUgKmYsICpmcmFtZTsKICAgc3RydWN0IHBndGtfZGlzcGxheV9pbmZvICpkcHlp
bmZvOwogICBNb3VzZV9ITEluZm8gKmhsaW5mbzsKQEAgLTU5MTcsOSArNTkzOCw5IEBAIG1v
dGlvbl9ub3RpZnlfZXZlbnQgKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtFdmVudCAqZXZlbnQs
CiAJICAmJiAoZ2RrX2RldmljZV9nZXRfc291cmNlIChkZXZpY2UpID09IEdES19TT1VSQ0Vf
VE9VQ0hTQ1JFRU4pKSkKICAgICByZXR1cm4gRkFMU0U7CiAKLSAgRVZFTlRfSU5JVCAoaW5l
di5pZSk7Ci0gIGluZXYuaWUua2luZCA9IE5PX0VWRU5UOwotICBpbmV2LmllLmFyZyA9IFFu
aWw7CisgIEVWRU5UX0lOSVQgKGluZXYpOworICBpbmV2LmtpbmQgPSBOT19FVkVOVDsKKyAg
aW5ldi5hcmcgPSBRbmlsOwogCiAgIHByZXZpb3VzX2hlbHBfZWNob19zdHJpbmcgPSBoZWxw
X2VjaG9fc3RyaW5nOwogICBoZWxwX2VjaG9fc3RyaW5nID0gUW5pbDsKQEAgLTU5NzAsOCAr
NTk5MSw4IEBAIG1vdGlvbl9ub3RpZnlfZXZlbnQgKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtF
dmVudCAqZXZlbnQsCiAJICAgICAgJiYgIUVRICh3aW5kb3csIGxhc3RfbW91c2Vfd2luZG93
KQogCSAgICAgICYmICFFUSAod2luZG93LCBzZWxlY3RlZF93aW5kb3cpKQogCSAgICB7Ci0J
ICAgICAgaW5ldi5pZS5raW5kID0gU0VMRUNUX1dJTkRPV19FVkVOVDsKLQkgICAgICBpbmV2
LmllLmZyYW1lX29yX3dpbmRvdyA9IHdpbmRvdzsKKwkgICAgICBpbmV2LmtpbmQgPSBTRUxF
Q1RfV0lORE9XX0VWRU5UOworCSAgICAgIGluZXYuZnJhbWVfb3Jfd2luZG93ID0gd2luZG93
OwogCSAgICB9CiAKIAkgIC8qIFJlbWVtYmVyIHRoZSBsYXN0IHdpbmRvdyB3aGVyZSB3ZSBz
YXcgdGhlIG1vdXNlLiAgKi8KQEAgLTU5OTIsNyArNjAxMyw3IEBAIG1vdGlvbl9ub3RpZnlf
ZXZlbnQgKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtFdmVudCAqZXZlbnQsCiAgIGlmICghTklM
UCAoaGVscF9lY2hvX3N0cmluZykgfHwgIU5JTFAgKHByZXZpb3VzX2hlbHBfZWNob19zdHJp
bmcpKQogICAgIGRvX2hlbHAgPSAxOwogCi0gIGlmIChpbmV2LmllLmtpbmQgIT0gTk9fRVZF
TlQpCisgIGlmIChpbmV2LmtpbmQgIT0gTk9fRVZFTlQpCiAgICAgZXZxX2VucXVldWUgKCZp
bmV2KTsKIAogICBpZiAoZG9faGVscCA+IDApCkBAIC02MDQ1LDcgKzYwNjYsNyBAQCBjb25z
dHJ1Y3RfbW91c2VfY2xpY2sgKHN0cnVjdCBpbnB1dF9ldmVudCAqcmVzdWx0LAogYnV0dG9u
X2V2ZW50IChHdGtXaWRnZXQgKndpZGdldCwgR2RrRXZlbnQgKmV2ZW50LAogCSAgICAgIGdw
b2ludGVyICp1c2VyX2RhdGEpCiB7Ci0gIHVuaW9uIGJ1ZmZlcmVkX2lucHV0X2V2ZW50IGlu
ZXY7CisgIHN0cnVjdCBpbnB1dF9ldmVudCBpbmV2OwogICBzdHJ1Y3QgZnJhbWUgKmYsICpm
cmFtZTsKICAgc3RydWN0IHBndGtfZGlzcGxheV9pbmZvICpkcHlpbmZvOwogCkBAIC02MDY2
LDkgKzYwODcsOSBAQCBidXR0b25fZXZlbnQgKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtFdmVu
dCAqZXZlbnQsCiAJICAmJiAoZ2RrX2RldmljZV9nZXRfc291cmNlIChkZXZpY2UpID09IEdE
S19TT1VSQ0VfVE9VQ0hTQ1JFRU4pKSkKICAgICByZXR1cm4gRkFMU0U7CiAKLSAgRVZFTlRf
SU5JVCAoaW5ldi5pZSk7Ci0gIGluZXYuaWUua2luZCA9IE5PX0VWRU5UOwotICBpbmV2Lmll
LmFyZyA9IFFuaWw7CisgIEVWRU5UX0lOSVQgKGluZXYpOworICBpbmV2LmtpbmQgPSBOT19F
VkVOVDsKKyAgaW5ldi5hcmcgPSBRbmlsOwogCiAgIC8qIGlnbm9yZSBkb3VibGUgY2xpY2sg
YW5kIHRyaXBsZSBjbGljay4gKi8KICAgaWYgKGV2ZW50LT50eXBlICE9IEdES19CVVRUT05f
UFJFU1MgJiYgZXZlbnQtPnR5cGUgIT0gR0RLX0JVVFRPTl9SRUxFQVNFKQpAQCAtNjEzNywx
NiArNjE1OCwxNiBAQCBidXR0b25fZXZlbnQgKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtFdmVu
dCAqZXZlbnQsCiAJCSAgJiYgZXZlbnQtPmJ1dHRvbi50aW1lID4gaWdub3JlX25leHRfbW91
c2VfY2xpY2tfdGltZW91dCkKIAkJewogCQkgIGlnbm9yZV9uZXh0X21vdXNlX2NsaWNrX3Rp
bWVvdXQgPSAwOwotCQkgIGNvbnN0cnVjdF9tb3VzZV9jbGljayAoJmluZXYuaWUsICZldmVu
dC0+YnV0dG9uLCBmKTsKKwkJICBjb25zdHJ1Y3RfbW91c2VfY2xpY2sgKCZpbmV2LCAmZXZl
bnQtPmJ1dHRvbiwgZik7CiAJCX0KIAkgICAgICBpZiAoZXZlbnQtPnR5cGUgPT0gR0RLX0JV
VFRPTl9SRUxFQVNFKQogCQlpZ25vcmVfbmV4dF9tb3VzZV9jbGlja190aW1lb3V0ID0gMDsK
IAkgICAgfQogCSAgZWxzZQotCSAgICBjb25zdHJ1Y3RfbW91c2VfY2xpY2sgKCZpbmV2Lmll
LCAmZXZlbnQtPmJ1dHRvbiwgZik7CisJICAgIGNvbnN0cnVjdF9tb3VzZV9jbGljayAoJmlu
ZXYsICZldmVudC0+YnV0dG9uLCBmKTsKIAogCSAgaWYgKCFOSUxQICh0YWJfYmFyX2FyZykp
Ci0JICAgIGluZXYuaWUuYXJnID0gdGFiX2Jhcl9hcmc7CisJICAgIGluZXYuYXJnID0gdGFi
X2Jhcl9hcmc7CiAJfQogICAgIH0KIApAQCAtNjE2OCw3ICs2MTg5LDcgQEAgYnV0dG9uX2V2
ZW50IChHdGtXaWRnZXQgKndpZGdldCwgR2RrRXZlbnQgKmV2ZW50LAogICBpZiAoZiAhPSAw
KQogICAgIGYtPm1vdXNlX21vdmVkID0gZmFsc2U7CiAKLSAgaWYgKGluZXYuaWUua2luZCAh
PSBOT19FVkVOVCkKKyAgaWYgKGluZXYua2luZCAhPSBOT19FVkVOVCkKICAgICBldnFfZW5x
dWV1ZSAoJmluZXYpOwogICByZXR1cm4gVFJVRTsKIH0KQEAgLTYxNzYsMTUgKzYxOTcsMTUg
QEAgYnV0dG9uX2V2ZW50IChHdGtXaWRnZXQgKndpZGdldCwgR2RrRXZlbnQgKmV2ZW50LAog
c3RhdGljIGdib29sZWFuCiBzY3JvbGxfZXZlbnQgKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtF
dmVudCAqZXZlbnQsIGdwb2ludGVyICp1c2VyX2RhdGEpCiB7Ci0gIHVuaW9uIGJ1ZmZlcmVk
X2lucHV0X2V2ZW50IGluZXY7CisgIHN0cnVjdCBpbnB1dF9ldmVudCBpbmV2OwogICBzdHJ1
Y3QgZnJhbWUgKmYsICpmcmFtZTsKICAgc3RydWN0IHBndGtfZGlzcGxheV9pbmZvICpkcHlp
bmZvOwogICBHZGtTY3JvbGxEaXJlY3Rpb24gZGlyOwogICBkb3VibGUgZGVsdGFfeCwgZGVs
dGFfeTsKIAotICBFVkVOVF9JTklUIChpbmV2LmllKTsKLSAgaW5ldi5pZS5raW5kID0gTk9f
RVZFTlQ7Ci0gIGluZXYuaWUuYXJnID0gUW5pbDsKKyAgRVZFTlRfSU5JVCAoaW5ldik7Cisg
IGluZXYua2luZCA9IE5PX0VWRU5UOworICBpbmV2LmFyZyA9IFFuaWw7CiAKICAgZnJhbWUg
PSBwZ3RrX2FueV93aW5kb3dfdG9fZnJhbWUgKGd0a193aWRnZXRfZ2V0X3dpbmRvdyAod2lk
Z2V0KSk7CiAgIGRweWluZm8gPSBGUkFNRV9ESVNQTEFZX0lORk8gKGZyYW1lKTsKQEAgLTYx
OTQsMTkgKzYyMTUsMTkgQEAgc2Nyb2xsX2V2ZW50IChHdGtXaWRnZXQgKndpZGdldCwgR2Rr
RXZlbnQgKmV2ZW50LCBncG9pbnRlciAqdXNlcl9kYXRhKQogICBlbHNlCiAgICAgZiA9IHBn
dGtfYW55X3dpbmRvd190b19mcmFtZSAoZ3RrX3dpZGdldF9nZXRfd2luZG93ICh3aWRnZXQp
KTsKIAotICBpbmV2LmllLmtpbmQgPSBOT19FVkVOVDsKLSAgaW5ldi5pZS50aW1lc3RhbXAg
PSBldmVudC0+c2Nyb2xsLnRpbWU7Ci0gIGluZXYuaWUubW9kaWZpZXJzCisgIGluZXYua2lu
ZCA9IE5PX0VWRU5UOworICBpbmV2LnRpbWVzdGFtcCA9IGV2ZW50LT5zY3JvbGwudGltZTsK
KyAgaW5ldi5tb2RpZmllcnMKICAgICA9IHBndGtfZ3RrX3RvX2VtYWNzX21vZGlmaWVycyAo
RlJBTUVfRElTUExBWV9JTkZPIChmKSwgZXZlbnQtPnNjcm9sbC5zdGF0ZSk7Ci0gIFhTRVRJ
TlQgKGluZXYuaWUueCwgZXZlbnQtPnNjcm9sbC54KTsKLSAgWFNFVElOVCAoaW5ldi5pZS55
LCBldmVudC0+c2Nyb2xsLnkpOwotICBYU0VURlJBTUUgKGluZXYuaWUuZnJhbWVfb3Jfd2lu
ZG93LCBmKTsKLSAgaW5ldi5pZS5hcmcgPSBRbmlsOworICBYU0VUSU5UIChpbmV2LngsIGV2
ZW50LT5zY3JvbGwueCk7CisgIFhTRVRJTlQgKGluZXYueSwgZXZlbnQtPnNjcm9sbC55KTsK
KyAgWFNFVEZSQU1FIChpbmV2LmZyYW1lX29yX3dpbmRvdywgZik7CisgIGluZXYuYXJnID0g
UW5pbDsKIAogICBpZiAoZ2RrX2V2ZW50X2lzX3Njcm9sbF9zdG9wX2V2ZW50IChldmVudCkp
CiAgICAgewotICAgICAgaW5ldi5pZS5raW5kID0gVE9VQ0hfRU5EX0VWRU5UOwotICAgICAg
aW5ldi5pZS5kZXZpY2UKKyAgICAgIGluZXYua2luZCA9IFRPVUNIX0VORF9FVkVOVDsKKyAg
ICAgIGluZXYuZGV2aWNlCiAJPSBwZ3RrX2dldF9kZXZpY2VfZm9yX2V2ZW50IChGUkFNRV9E
SVNQTEFZX0lORk8gKGYpLCBldmVudCk7CiAgICAgICBldnFfZW5xdWV1ZSAoJmluZXYpOwog
ICAgICAgcmV0dXJuIFRSVUU7CkBAIC02MjE3LDIwICs2MjM4LDIwIEBAIHNjcm9sbF9ldmVu
dCAoR3RrV2lkZ2V0ICp3aWRnZXQsIEdka0V2ZW50ICpldmVudCwgZ3BvaW50ZXIgKnVzZXJf
ZGF0YSkKICAgICAgIHN3aXRjaCAoZGlyKQogCXsKIAljYXNlIEdES19TQ1JPTExfVVA6Ci0J
ICBpbmV2LmllLmtpbmQgPSBXSEVFTF9FVkVOVDsKLQkgIGluZXYuaWUubW9kaWZpZXJzIHw9
IHVwX21vZGlmaWVyOworCSAgaW5ldi5raW5kID0gV0hFRUxfRVZFTlQ7CisJICBpbmV2Lm1v
ZGlmaWVycyB8PSB1cF9tb2RpZmllcjsKIAkgIGJyZWFrOwogCWNhc2UgR0RLX1NDUk9MTF9E
T1dOOgotCSAgaW5ldi5pZS5raW5kID0gV0hFRUxfRVZFTlQ7Ci0JICBpbmV2LmllLm1vZGlm
aWVycyB8PSBkb3duX21vZGlmaWVyOworCSAgaW5ldi5raW5kID0gV0hFRUxfRVZFTlQ7CisJ
ICBpbmV2Lm1vZGlmaWVycyB8PSBkb3duX21vZGlmaWVyOwogCSAgYnJlYWs7CiAJY2FzZSBH
REtfU0NST0xMX0xFRlQ6Ci0JICBpbmV2LmllLmtpbmQgPSBIT1JJWl9XSEVFTF9FVkVOVDsK
LQkgIGluZXYuaWUubW9kaWZpZXJzIHw9IHVwX21vZGlmaWVyOworCSAgaW5ldi5raW5kID0g
SE9SSVpfV0hFRUxfRVZFTlQ7CisJICBpbmV2Lm1vZGlmaWVycyB8PSB1cF9tb2RpZmllcjsK
IAkgIGJyZWFrOwogCWNhc2UgR0RLX1NDUk9MTF9SSUdIVDoKLQkgIGluZXYuaWUua2luZCA9
IEhPUklaX1dIRUVMX0VWRU5UOwotCSAgaW5ldi5pZS5tb2RpZmllcnMgfD0gZG93bl9tb2Rp
ZmllcjsKKwkgIGluZXYua2luZCA9IEhPUklaX1dIRUVMX0VWRU5UOworCSAgaW5ldi5tb2Rp
ZmllcnMgfD0gZG93bl9tb2RpZmllcjsKIAkgIGJyZWFrOwogCWNhc2UgR0RLX1NDUk9MTF9T
TU9PVEg6CQkvKiBzaHV0IHVwIHdhcm5pbmcgKi8KIAkgIGJyZWFrOwpAQCAtNjI0MCwxNCAr
NjI2MSwxNCBAQCBzY3JvbGxfZXZlbnQgKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtFdmVudCAq
ZXZlbnQsIGdwb2ludGVyICp1c2VyX2RhdGEpCiAgICAgewogICAgICAgaWYgKCFtd2hlZWxf
Y29hbGVzY2Vfc2Nyb2xsX2V2ZW50cykKIAl7Ci0JICBpbmV2LmllLmtpbmQgPSAoKGZhYnMg
KGRlbHRhX3gpID4gZmFicyAoZGVsdGFfeSkpCi0JCQkgID8gSE9SSVpfV0hFRUxfRVZFTlQK
LQkJCSAgOiBXSEVFTF9FVkVOVCk7Ci0JICBpbmV2LmllLm1vZGlmaWVycyB8PSAoaW5ldi5p
ZS5raW5kID09IEhPUklaX1dIRUVMX0VWRU5UCi0JCQkJPyAoZGVsdGFfeCA+PSAwID8gdXBf
bW9kaWZpZXIgOiBkb3duX21vZGlmaWVyKQotCQkJCTogKGRlbHRhX3kgPj0gMCA/IGRvd25f
bW9kaWZpZXIgOiB1cF9tb2RpZmllcikpOwotCSAgaW5ldi5pZS5hcmcgPSBsaXN0MyAoUW5p
bCwgbWFrZV9mbG9hdCAoLWRlbHRhX3ggKiAxMDApLAotCQkJICAgICAgIG1ha2VfZmxvYXQg
KC1kZWx0YV95ICogMTAwKSk7CisJICBpbmV2LmtpbmQgPSAoKGZhYnMgKGRlbHRhX3gpID4g
ZmFicyAoZGVsdGFfeSkpCisJCSAgICAgICA/IEhPUklaX1dIRUVMX0VWRU5UCisJCSAgICAg
ICA6IFdIRUVMX0VWRU5UKTsKKwkgIGluZXYubW9kaWZpZXJzIHw9IChpbmV2LmtpbmQgPT0g
SE9SSVpfV0hFRUxfRVZFTlQKKwkJCSAgICAgPyAoZGVsdGFfeCA+PSAwID8gdXBfbW9kaWZp
ZXIgOiBkb3duX21vZGlmaWVyKQorCQkJICAgICA6IChkZWx0YV95ID49IDAgPyBkb3duX21v
ZGlmaWVyIDogdXBfbW9kaWZpZXIpKTsKKwkgIGluZXYuYXJnID0gbGlzdDMgKFFuaWwsIG1h
a2VfZmxvYXQgKC1kZWx0YV94ICogMTAwKSwKKwkJCSAgICBtYWtlX2Zsb2F0ICgtZGVsdGFf
eSAqIDEwMCkpOwogCX0KICAgICAgIGVsc2UKIAl7CkBAIC02MjU2LDIxICs2Mjc3LDIxIEBA
IHNjcm9sbF9ldmVudCAoR3RrV2lkZ2V0ICp3aWRnZXQsIEdka0V2ZW50ICpldmVudCwgZ3Bv
aW50ZXIgKnVzZXJfZGF0YSkKIAkgIGlmIChkcHlpbmZvLT5zY3JvbGwuYWNjX3kgPj0gZHB5
aW5mby0+c2Nyb2xsLnlfcGVyX2xpbmUpCiAJICAgIHsKIAkgICAgICBpbnQgbmxpbmVzID0g
ZHB5aW5mby0+c2Nyb2xsLmFjY195IC8gZHB5aW5mby0+c2Nyb2xsLnlfcGVyX2xpbmU7Ci0J
ICAgICAgaW5ldi5pZS5raW5kID0gV0hFRUxfRVZFTlQ7Ci0JICAgICAgaW5ldi5pZS5tb2Rp
ZmllcnMgfD0gZG93bl9tb2RpZmllcjsKLQkgICAgICBpbmV2LmllLmFyZyA9IGxpc3QzICht
YWtlX2ZpeG51bSAobmxpbmVzKSwKLQkJCQkgICBtYWtlX2Zsb2F0ICgtZHB5aW5mby0+c2Ny
b2xsLmFjY194ICogMTAwKSwKLQkJCQkgICBtYWtlX2Zsb2F0ICgtZHB5aW5mby0+c2Nyb2xs
LmFjY195ICogMTAwKSk7CisJICAgICAgaW5ldi5raW5kID0gV0hFRUxfRVZFTlQ7CisJICAg
ICAgaW5ldi5tb2RpZmllcnMgfD0gZG93bl9tb2RpZmllcjsKKwkgICAgICBpbmV2LmFyZyA9
IGxpc3QzIChtYWtlX2ZpeG51bSAobmxpbmVzKSwKKwkJCQltYWtlX2Zsb2F0ICgtZHB5aW5m
by0+c2Nyb2xsLmFjY194ICogMTAwKSwKKwkJCQltYWtlX2Zsb2F0ICgtZHB5aW5mby0+c2Ny
b2xsLmFjY195ICogMTAwKSk7CiAJICAgICAgZHB5aW5mby0+c2Nyb2xsLmFjY195IC09IGRw
eWluZm8tPnNjcm9sbC55X3Blcl9saW5lICogbmxpbmVzOwogCSAgICB9CiAJICBlbHNlIGlm
IChkcHlpbmZvLT5zY3JvbGwuYWNjX3kgPD0gLWRweWluZm8tPnNjcm9sbC55X3Blcl9saW5l
KQogCSAgICB7CiAJICAgICAgaW50IG5saW5lcyA9IC1kcHlpbmZvLT5zY3JvbGwuYWNjX3kg
LyBkcHlpbmZvLT5zY3JvbGwueV9wZXJfbGluZTsKLQkgICAgICBpbmV2LmllLmtpbmQgPSBX
SEVFTF9FVkVOVDsKLQkgICAgICBpbmV2LmllLm1vZGlmaWVycyB8PSB1cF9tb2RpZmllcjsK
LQkgICAgICBpbmV2LmllLmFyZyA9IGxpc3QzIChtYWtlX2ZpeG51bSAobmxpbmVzKSwKLQkJ
CQkgICBtYWtlX2Zsb2F0ICgtZHB5aW5mby0+c2Nyb2xsLmFjY194ICogMTAwKSwKLQkJCQkg
ICBtYWtlX2Zsb2F0ICgtZHB5aW5mby0+c2Nyb2xsLmFjY195ICogMTAwKSk7CisJICAgICAg
aW5ldi5raW5kID0gV0hFRUxfRVZFTlQ7CisJICAgICAgaW5ldi5tb2RpZmllcnMgfD0gdXBf
bW9kaWZpZXI7CisJICAgICAgaW5ldi5hcmcgPSBsaXN0MyAobWFrZV9maXhudW0gKG5saW5l
cyksCisJCQkJbWFrZV9mbG9hdCAoLWRweWluZm8tPnNjcm9sbC5hY2NfeCAqIDEwMCksCisJ
CQkJbWFrZV9mbG9hdCAoLWRweWluZm8tPnNjcm9sbC5hY2NfeSAqIDEwMCkpOwogCiAJICAg
ICAgZHB5aW5mby0+c2Nyb2xsLmFjY195IC09IC1kcHlpbmZvLT5zY3JvbGwueV9wZXJfbGlu
ZSAqIG5saW5lczsKIAkgICAgfQpAQCAtNjI3OCwzMSArNjI5OSwzMSBAQCBzY3JvbGxfZXZl
bnQgKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtFdmVudCAqZXZlbnQsIGdwb2ludGVyICp1c2Vy
X2RhdGEpCiAJCSAgIHx8ICFtd2hlZWxfY29hbGVzY2Vfc2Nyb2xsX2V2ZW50cykKIAkgICAg
ewogCSAgICAgIGludCBuY2hhcnMgPSBkcHlpbmZvLT5zY3JvbGwuYWNjX3ggLyBkcHlpbmZv
LT5zY3JvbGwueF9wZXJfY2hhcjsKLQkgICAgICBpbmV2LmllLmtpbmQgPSBIT1JJWl9XSEVF
TF9FVkVOVDsKLQkgICAgICBpbmV2LmllLm1vZGlmaWVycyB8PSB1cF9tb2RpZmllcjsKLQkg
ICAgICBpbmV2LmllLmFyZyA9IGxpc3QzIChtYWtlX2ZpeG51bSAobmNoYXJzKSwKLQkJCQkg
ICBtYWtlX2Zsb2F0ICgtZHB5aW5mby0+c2Nyb2xsLmFjY194ICogMTAwKSwKLQkJCQkgICBt
YWtlX2Zsb2F0ICgtZHB5aW5mby0+c2Nyb2xsLmFjY195ICogMTAwKSk7CisJICAgICAgaW5l
di5raW5kID0gSE9SSVpfV0hFRUxfRVZFTlQ7CisJICAgICAgaW5ldi5tb2RpZmllcnMgfD0g
dXBfbW9kaWZpZXI7CisJICAgICAgaW5ldi5hcmcgPSBsaXN0MyAobWFrZV9maXhudW0gKG5j
aGFycyksCisJCQkJbWFrZV9mbG9hdCAoLWRweWluZm8tPnNjcm9sbC5hY2NfeCAqIDEwMCks
CisJCQkJbWFrZV9mbG9hdCAoLWRweWluZm8tPnNjcm9sbC5hY2NfeSAqIDEwMCkpOwogCiAJ
ICAgICAgZHB5aW5mby0+c2Nyb2xsLmFjY194IC09IGRweWluZm8tPnNjcm9sbC54X3Blcl9j
aGFyICogbmNoYXJzOwogCSAgICB9CiAJICBlbHNlIGlmIChkcHlpbmZvLT5zY3JvbGwuYWNj
X3ggPD0gLWRweWluZm8tPnNjcm9sbC54X3Blcl9jaGFyKQogCSAgICB7CiAJICAgICAgaW50
IG5jaGFycyA9IC1kcHlpbmZvLT5zY3JvbGwuYWNjX3ggLyBkcHlpbmZvLT5zY3JvbGwueF9w
ZXJfY2hhcjsKLQkgICAgICBpbmV2LmllLmtpbmQgPSBIT1JJWl9XSEVFTF9FVkVOVDsKLQkg
ICAgICBpbmV2LmllLm1vZGlmaWVycyB8PSBkb3duX21vZGlmaWVyOwotCSAgICAgIGluZXYu
aWUuYXJnID0gbGlzdDMgKG1ha2VfZml4bnVtIChuY2hhcnMpLAotCQkJCSAgIG1ha2VfZmxv
YXQgKC1kcHlpbmZvLT5zY3JvbGwuYWNjX3ggKiAxMDApLAotCQkJCSAgIG1ha2VfZmxvYXQg
KC1kcHlpbmZvLT5zY3JvbGwuYWNjX3kgKiAxMDApKTsKKwkgICAgICBpbmV2LmtpbmQgPSBI
T1JJWl9XSEVFTF9FVkVOVDsKKwkgICAgICBpbmV2Lm1vZGlmaWVycyB8PSBkb3duX21vZGlm
aWVyOworCSAgICAgIGluZXYuYXJnID0gbGlzdDMgKG1ha2VfZml4bnVtIChuY2hhcnMpLAor
CQkJCW1ha2VfZmxvYXQgKC1kcHlpbmZvLT5zY3JvbGwuYWNjX3ggKiAxMDApLAorCQkJCW1h
a2VfZmxvYXQgKC1kcHlpbmZvLT5zY3JvbGwuYWNjX3kgKiAxMDApKTsKIAogCSAgICAgIGRw
eWluZm8tPnNjcm9sbC5hY2NfeCAtPSAtZHB5aW5mby0+c2Nyb2xsLnhfcGVyX2NoYXIgKiBu
Y2hhcnM7CiAJICAgIH0KIAl9CiAgICAgfQogCi0gIGlmIChpbmV2LmllLmtpbmQgIT0gTk9f
RVZFTlQpCisgIGlmIChpbmV2LmtpbmQgIT0gTk9fRVZFTlQpCiAgICAgewotICAgICAgaW5l
di5pZS5kZXZpY2UKKyAgICAgIGluZXYuZGV2aWNlCiAJPSBwZ3RrX2dldF9kZXZpY2VfZm9y
X2V2ZW50IChGUkFNRV9ESVNQTEFZX0lORk8gKGYpLCBldmVudCk7CiAgICAgICBldnFfZW5x
dWV1ZSAoJmluZXYpOwogICAgIH0KQEAgLTYzOTcsNyArNjQxOCw3IEBAIGRyYWdfbGVhdmUg
KEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtEcmFnQ29udGV4dCAqY29udGV4dCwKIAkgICAgZ3Vp
bnQgdGltZSwgZ3BvaW50ZXIgdXNlcl9kYXRhKQogewogICBzdHJ1Y3QgZnJhbWUgKmY7Ci0g
IHVuaW9uIGJ1ZmZlcmVkX2lucHV0X2V2ZW50IGluZXY7CisgIHN0cnVjdCBpbnB1dF9ldmVu
dCBpbmV2OwogCiAgIGYgPSBwZ3RrX2FueV93aW5kb3dfdG9fZnJhbWUgKGd0a193aWRnZXRf
Z2V0X3dpbmRvdyAod2lkZ2V0KSk7CiAKQEAgLTY0MTEsMTYgKzY0MzIsMTYgQEAgZHJhZ19s
ZWF2ZSAoR3RrV2lkZ2V0ICp3aWRnZXQsIEdka0RyYWdDb250ZXh0ICpjb250ZXh0LAogCQkg
ICAgICAgZ19vYmplY3RfdW5yZWYpOwogICAgIH0KIAotICBFVkVOVF9JTklUIChpbmV2Lmll
KTsKKyAgRVZFTlRfSU5JVCAoaW5ldik7CiAKLSAgaW5ldi5pZS5raW5kID0gRFJBR19OX0RS
T1BfRVZFTlQ7Ci0gIGluZXYuaWUubW9kaWZpZXJzID0gMDsKLSAgaW5ldi5pZS5hcmcgPSBR
bmlsOwotICBpbmV2LmllLnRpbWVzdGFtcCA9IHRpbWU7CisgIGluZXYua2luZCA9IERSQUdf
Tl9EUk9QX0VWRU5UOworICBpbmV2Lm1vZGlmaWVycyA9IDA7CisgIGluZXYuYXJnID0gUW5p
bDsKKyAgaW5ldi50aW1lc3RhbXAgPSB0aW1lOwogCi0gIFhTRVRJTlQgKGluZXYuaWUueCwg
MCk7Ci0gIFhTRVRJTlQgKGluZXYuaWUueSwgMCk7Ci0gIFhTRVRGUkFNRSAoaW5ldi5pZS5m
cmFtZV9vcl93aW5kb3csIGYpOworICBYU0VUSU5UIChpbmV2LngsIDApOworICBYU0VUSU5U
IChpbmV2LnksIDApOworICBYU0VURlJBTUUgKGluZXYuZnJhbWVfb3Jfd2luZG93LCBmKTsK
IAogICBldnFfZW5xdWV1ZSAoJmluZXYpOwogfQpAQCAtNjQzMSw3ICs2NDUyLDcgQEAgZHJh
Z19tb3Rpb24gKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtEcmFnQ29udGV4dCAqY29udGV4dCwK
IAogewogICBzdHJ1Y3QgZnJhbWUgKmY7Ci0gIHVuaW9uIGJ1ZmZlcmVkX2lucHV0X2V2ZW50
IGluZXY7CisgIHN0cnVjdCBpbnB1dF9ldmVudCBpbmV2OwogICBHZGtBdG9tIG5hbWU7CiAg
IEdka0RyYWdBY3Rpb24gc3VnZ2VzdGlvbjsKIApAQCAtNjQ1NywxOCArNjQ3OCwxOCBAQCBk
cmFnX21vdGlvbiAoR3RrV2lkZ2V0ICp3aWRnZXQsIEdka0RyYWdDb250ZXh0ICpjb250ZXh0
LAogICBuYW1lID0gZ2RrX2RyYWdfZ2V0X3NlbGVjdGlvbiAoY29udGV4dCk7CiAgIHN1Z2dl
c3Rpb24gPSBnZGtfZHJhZ19jb250ZXh0X2dldF9zdWdnZXN0ZWRfYWN0aW9uIChjb250ZXh0
KTsKIAotICBFVkVOVF9JTklUIChpbmV2LmllKTsKKyAgRVZFTlRfSU5JVCAoaW5ldik7CiAK
LSAgaW5ldi5pZS5raW5kID0gRFJBR19OX0RST1BfRVZFTlQ7Ci0gIGluZXYuaWUubW9kaWZp
ZXJzID0gMDsKLSAgaW5ldi5pZS5hcmcgPSBsaXN0NCAoUWxhbWJkYSwgaW50ZXJuIChnZGtf
YXRvbV9uYW1lIChuYW1lKSksCi0JCSAgICAgICBtYWtlX3VpbnQgKHRpbWUpLAotCQkgICAg
ICAgZHJhZ19hY3Rpb25fdG9fc3ltYm9sIChzdWdnZXN0aW9uKSk7Ci0gIGluZXYuaWUudGlt
ZXN0YW1wID0gdGltZTsKKyAgaW5ldi5raW5kID0gRFJBR19OX0RST1BfRVZFTlQ7CisgIGlu
ZXYubW9kaWZpZXJzID0gMDsKKyAgaW5ldi5hcmcgPSBsaXN0NCAoUWxhbWJkYSwgaW50ZXJu
IChnZGtfYXRvbV9uYW1lIChuYW1lKSksCisJCSAgICBtYWtlX3VpbnQgKHRpbWUpLAorCQkg
ICAgZHJhZ19hY3Rpb25fdG9fc3ltYm9sIChzdWdnZXN0aW9uKSk7CisgIGluZXYudGltZXN0
YW1wID0gdGltZTsKIAotICBYU0VUSU5UIChpbmV2LmllLngsIHgpOwotICBYU0VUSU5UIChp
bmV2LmllLnksIHkpOwotICBYU0VURlJBTUUgKGluZXYuaWUuZnJhbWVfb3Jfd2luZG93LCBm
KTsKKyAgWFNFVElOVCAoaW5ldi54LCB4KTsKKyAgWFNFVElOVCAoaW5ldi55LCB5KTsKKyAg
WFNFVEZSQU1FIChpbmV2LmZyYW1lX29yX3dpbmRvdywgZik7CiAKICAgZXZxX2VucXVldWUg
KCZpbmV2KTsKIApAQCAtNjQ4MCw3ICs2NTAxLDcgQEAgZHJhZ19kcm9wIChHdGtXaWRnZXQg
KndpZGdldCwgR2RrRHJhZ0NvbnRleHQgKmNvbnRleHQsCiAJICAgaW50IHgsIGludCB5LCBn
dWludCB0aW1lLCBncG9pbnRlciB1c2VyX2RhdGEpCiB7CiAgIHN0cnVjdCBmcmFtZSAqZjsK
LSAgdW5pb24gYnVmZmVyZWRfaW5wdXRfZXZlbnQgaW5ldjsKKyAgc3RydWN0IGlucHV0X2V2
ZW50IGluZXY7CiAgIEdka0F0b20gbmFtZTsKICAgR2RrRHJhZ0FjdGlvbiBzZWxlY3RlZF9h
Y3Rpb247CiAKQEAgLTY1MDYsMTggKzY1MjcsMTggQEAgZHJhZ19kcm9wIChHdGtXaWRnZXQg
KndpZGdldCwgR2RrRHJhZ0NvbnRleHQgKmNvbnRleHQsCiAgIG5hbWUgPSBnZGtfZHJhZ19n
ZXRfc2VsZWN0aW9uIChjb250ZXh0KTsKICAgc2VsZWN0ZWRfYWN0aW9uID0gZ2RrX2RyYWdf
Y29udGV4dF9nZXRfc2VsZWN0ZWRfYWN0aW9uIChjb250ZXh0KTsKIAotICBFVkVOVF9JTklU
IChpbmV2LmllKTsKKyAgRVZFTlRfSU5JVCAoaW5ldik7CiAKLSAgaW5ldi5pZS5raW5kID0g
RFJBR19OX0RST1BfRVZFTlQ7Ci0gIGluZXYuaWUubW9kaWZpZXJzID0gMDsKLSAgaW5ldi5p
ZS5hcmcgPSBsaXN0NCAoUXF1b3RlLCBpbnRlcm4gKGdka19hdG9tX25hbWUgKG5hbWUpKSwK
LQkJICAgICAgIG1ha2VfdWludCAodGltZSksCi0JCSAgICAgICBkcmFnX2FjdGlvbl90b19z
eW1ib2wgKHNlbGVjdGVkX2FjdGlvbikpOwotICBpbmV2LmllLnRpbWVzdGFtcCA9IHRpbWU7
CisgIGluZXYua2luZCA9IERSQUdfTl9EUk9QX0VWRU5UOworICBpbmV2Lm1vZGlmaWVycyA9
IDA7CisgIGluZXYuYXJnID0gbGlzdDQgKFFxdW90ZSwgaW50ZXJuIChnZGtfYXRvbV9uYW1l
IChuYW1lKSksCisJCSAgICBtYWtlX3VpbnQgKHRpbWUpLAorCQkgICAgZHJhZ19hY3Rpb25f
dG9fc3ltYm9sIChzZWxlY3RlZF9hY3Rpb24pKTsKKyAgaW5ldi50aW1lc3RhbXAgPSB0aW1l
OwogCi0gIFhTRVRJTlQgKGluZXYuaWUueCwgeCk7Ci0gIFhTRVRJTlQgKGluZXYuaWUueSwg
eSk7Ci0gIFhTRVRGUkFNRSAoaW5ldi5pZS5mcmFtZV9vcl93aW5kb3csIGYpOworICBYU0VU
SU5UIChpbmV2LngsIHgpOworICBYU0VUSU5UIChpbmV2LnksIHkpOworICBYU0VURlJBTUUg
KGluZXYuZnJhbWVfb3Jfd2luZG93LCBmKTsKIAogICBldnFfZW5xdWV1ZSAoJmluZXYpOwog
CkBAIC02NjQ1LDEyICs2NjY2LDEyIEBAIHRvdWNoX2V2ZW50X2NiIChHdGtXaWRnZXQgKnNl
bGYsIEdka0V2ZW50ICpldmVudCwgZ3BvaW50ZXIgdXNlcl9kYXRhKQogICBzdHJ1Y3QgcGd0
a19kaXNwbGF5X2luZm8gKmRweWluZm87CiAgIHN0cnVjdCBmcmFtZSAqZjsKICAgRU1BQ1Nf
SU5UIGxvY2FsX2RldGFpbDsKLSAgdW5pb24gYnVmZmVyZWRfaW5wdXRfZXZlbnQgaW5ldjsK
KyAgc3RydWN0IGlucHV0X2V2ZW50IGluZXY7CiAgIHN0cnVjdCBwZ3RrX3RvdWNoX3BvaW50
ICp0b3VjaHBvaW50OwogICBMaXNwX09iamVjdCBhcmcgPSBRbmlsOwogICBpbnQgc3RhdGU7
CiAKLSAgRVZFTlRfSU5JVCAoaW5ldi5pZSk7CisgIEVWRU5UX0lOSVQgKGluZXYpOwogCiAg
IGYgPSBwZ3RrX2FueV93aW5kb3dfdG9fZnJhbWUgKGd0a193aWRnZXRfZ2V0X3dpbmRvdyAo
c2VsZikpOwogICBlYXNzZXJ0IChmKTsKQEAgLTY2NjksMTIgKzY2OTAsMTIgQEAgdG91Y2hf
ZXZlbnRfY2IgKEd0a1dpZGdldCAqc2VsZiwgR2RrRXZlbnQgKmV2ZW50LCBncG9pbnRlciB1
c2VyX2RhdGEpCiAJCQkJCSAgICBldmVudC0+dG91Y2gueCwgZXZlbnQtPnRvdWNoLnksCiAJ
CQkJCSAgICBmKTsKICAgICAgIC8qIEdlbmVyYXRlIHRoZSBpbnB1dCBldmVudC4gICovCi0g
ICAgICBpbmV2LmllLmtpbmQgPSBUT1VDSFNDUkVFTl9CRUdJTl9FVkVOVDsKLSAgICAgIGlu
ZXYuaWUudGltZXN0YW1wID0gZXZlbnQtPnRvdWNoLnRpbWU7Ci0gICAgICBYU0VURlJBTUUg
KGluZXYuaWUuZnJhbWVfb3Jfd2luZG93LCBmKTsKLSAgICAgIFhTRVRJTlQgKGluZXYuaWUu
eCwgbHJpbnQgKGV2ZW50LT50b3VjaC54KSk7Ci0gICAgICBYU0VUSU5UIChpbmV2LmllLnks
IGxyaW50IChldmVudC0+dG91Y2gueSkpOwotICAgICAgWFNFVElOVCAoaW5ldi5pZS5hcmcs
IGxvY2FsX2RldGFpbCk7CisgICAgICBpbmV2LmtpbmQgPSBUT1VDSFNDUkVFTl9CRUdJTl9F
VkVOVDsKKyAgICAgIGluZXYudGltZXN0YW1wID0gZXZlbnQtPnRvdWNoLnRpbWU7CisgICAg
ICBYU0VURlJBTUUgKGluZXYuZnJhbWVfb3Jfd2luZG93LCBmKTsKKyAgICAgIFhTRVRJTlQg
KGluZXYueCwgbHJpbnQgKGV2ZW50LT50b3VjaC54KSk7CisgICAgICBYU0VUSU5UIChpbmV2
LnksIGxyaW50IChldmVudC0+dG91Y2gueSkpOworICAgICAgWFNFVElOVCAoaW5ldi5hcmcs
IGxvY2FsX2RldGFpbCk7CiAgICAgICBicmVhazsKIAogICAgIGNhc2UgR0RLX1RPVUNIX1VQ
REFURToKQEAgLTY2OTEsOSArNjcxMiw5IEBAIHRvdWNoX2V2ZW50X2NiIChHdGtXaWRnZXQg
KnNlbGYsIEdka0V2ZW50ICpldmVudCwgZ3BvaW50ZXIgdXNlcl9kYXRhKQogICAgICAgLyog
Q29uc3RydWN0IHRoZSBpbnB1dCBldmVudC4gICovCiAgICAgICB0b3VjaHBvaW50LT54ID0g
bHJpbnQgKGV2ZW50LT50b3VjaC54KTsKICAgICAgIHRvdWNocG9pbnQtPnkgPSBscmludCAo
ZXZlbnQtPnRvdWNoLnkpOwotICAgICAgaW5ldi5pZS5raW5kID0gVE9VQ0hTQ1JFRU5fVVBE
QVRFX0VWRU5UOwotICAgICAgaW5ldi5pZS50aW1lc3RhbXAgPSBldmVudC0+dG91Y2gudGlt
ZTsKLSAgICAgIFhTRVRGUkFNRSAoaW5ldi5pZS5mcmFtZV9vcl93aW5kb3csIGYpOworICAg
ICAgaW5ldi5raW5kID0gVE9VQ0hTQ1JFRU5fVVBEQVRFX0VWRU5UOworICAgICAgaW5ldi50
aW1lc3RhbXAgPSBldmVudC0+dG91Y2gudGltZTsKKyAgICAgIFhTRVRGUkFNRSAoaW5ldi5m
cmFtZV9vcl93aW5kb3csIGYpOwogCiAgICAgICBmb3IgKHRvdWNocG9pbnQgPSBkcHlpbmZv
LT50b3VjaHBvaW50czsKIAkgICB0b3VjaHBvaW50OyB0b3VjaHBvaW50ID0gdG91Y2hwb2lu
dC0+bmV4dCkKQEAgLTY3MDQsNyArNjcyNSw3IEBAIHRvdWNoX2V2ZW50X2NiIChHdGtXaWRn
ZXQgKnNlbGYsIEdka0V2ZW50ICpldmVudCwgZ3BvaW50ZXIgdXNlcl9kYXRhKQogCQkJIGFy
Zyk7CiAJfQogCi0gICAgICBpbmV2LmllLmFyZyA9IGFyZzsKKyAgICAgIGluZXYuYXJnID0g
YXJnOwogICAgICAgYnJlYWs7CiAKICAgICBjYXNlIEdES19UT1VDSF9FTkQ6CkBAIC02NzE3
LDE0ICs2NzM4LDE0IEBAIHRvdWNoX2V2ZW50X2NiIChHdGtXaWRnZXQgKnNlbGYsIEdka0V2
ZW50ICpldmVudCwgZ3BvaW50ZXIgdXNlcl9kYXRhKQogICAgICAgaWYgKHN0YXRlKQogCXsK
IAkgIC8qIC4uLiBnZW5lcmF0ZSBhIHN1aXRhYmxlIGV2ZW50LiAgKi8KLQkgIGluZXYuaWUu
a2luZCA9IFRPVUNIU0NSRUVOX0VORF9FVkVOVDsKLQkgIGluZXYuaWUudGltZXN0YW1wID0g
ZXZlbnQtPnRvdWNoLnRpbWU7Ci0JICBpbmV2LmllLm1vZGlmaWVycyA9IChldmVudC0+dHlw
ZSAhPSBHREtfVE9VQ0hfRU5EKTsKLQotCSAgWFNFVEZSQU1FIChpbmV2LmllLmZyYW1lX29y
X3dpbmRvdywgZik7Ci0JICBYU0VUSU5UIChpbmV2LmllLngsIGxyaW50IChldmVudC0+dG91
Y2gueCkpOwotCSAgWFNFVElOVCAoaW5ldi5pZS55LCBscmludCAoZXZlbnQtPnRvdWNoLnkp
KTsKLQkgIFhTRVRJTlQgKGluZXYuaWUuYXJnLCBsb2NhbF9kZXRhaWwpOworCSAgaW5ldi5r
aW5kID0gVE9VQ0hTQ1JFRU5fRU5EX0VWRU5UOworCSAgaW5ldi50aW1lc3RhbXAgPSBldmVu
dC0+dG91Y2gudGltZTsKKwkgIGluZXYubW9kaWZpZXJzID0gKGV2ZW50LT50eXBlICE9IEdE
S19UT1VDSF9FTkQpOworCisJICBYU0VURlJBTUUgKGluZXYuZnJhbWVfb3Jfd2luZG93LCBm
KTsKKwkgIFhTRVRJTlQgKGluZXYueCwgbHJpbnQgKGV2ZW50LT50b3VjaC54KSk7CisJICBY
U0VUSU5UIChpbmV2LnksIGxyaW50IChldmVudC0+dG91Y2gueSkpOworCSAgWFNFVElOVCAo
aW5ldi5hcmcsIGxvY2FsX2RldGFpbCk7CiAJfQogICAgICAgYnJlYWs7CiAKQEAgLTY3MzUs
OSArNjc1Niw5IEBAIHRvdWNoX2V2ZW50X2NiIChHdGtXaWRnZXQgKnNlbGYsIEdka0V2ZW50
ICpldmVudCwgZ3BvaW50ZXIgdXNlcl9kYXRhKQogICAvKiBJZiB0aGUgYWJvdmUgcHJvZHVj
ZWQgYSB3b3JrYWJsZSBldmVudCwgcmVwb3J0IHRoZSBuYW1lIG9mIHRoZQogICAgICBkZXZp
Y2UgdGhhdCBnYXZlIHJpc2UgdG8gaXQuICAqLwogCi0gIGlmIChpbmV2LmllLmtpbmQgIT0g
Tk9fRVZFTlQpCisgIGlmIChpbmV2LmtpbmQgIT0gTk9fRVZFTlQpCiAgICAgewotICAgICAg
aW5ldi5pZS5kZXZpY2UgPSBwZ3RrX2dldF9kZXZpY2VfZm9yX2V2ZW50IChkcHlpbmZvLCBl
dmVudCk7CisgICAgICBpbmV2LmRldmljZSA9IHBndGtfZ2V0X2RldmljZV9mb3JfZXZlbnQg
KGRweWluZm8sIGV2ZW50KTsKICAgICAgIGV2cV9lbnF1ZXVlICgmaW5ldik7CiAKICAgICAg
IC8qIE5leHQsIHNhdmUgdGhpcyBldmVudCBmb3IgZnV0dXJlIG1lbnUgYWN0aXZhdGlvbnMs
IHVubGVzcyBpdCBpcwpAQCAtNjc1MCw3ICs2NzcxLDcgQEAgdG91Y2hfZXZlbnRfY2IgKEd0
a1dpZGdldCAqc2VsZiwgR2RrRXZlbnQgKmV2ZW50LCBncG9pbnRlciB1c2VyX2RhdGEpCiAJ
fQogICAgIH0KIAotICByZXR1cm4gaW5ldi5pZS5raW5kICE9IE5PX0VWRU5UOworICByZXR1
cm4gaW5ldi5raW5kICE9IE5PX0VWRU5UOwogfQogCiAMCkBAIC02NzYxLDEyICs2NzgyLDEy
IEBAIHRvdWNoX2V2ZW50X2NiIChHdGtXaWRnZXQgKnNlbGYsIEdka0V2ZW50ICpldmVudCwg
Z3BvaW50ZXIgdXNlcl9kYXRhKQogcGd0a19tb25pdG9yc19jaGFuZ2VkX2NiIChHZGtTY3Jl
ZW4gKnNjcmVlbiwgZ3BvaW50ZXIgdXNlcl9kYXRhKQogewogICBzdHJ1Y3QgdGVybWluYWwg
KnRlcm1pbmFsOwotICB1bmlvbiBidWZmZXJlZF9pbnB1dF9ldmVudCBpbmV2OworICBzdHJ1
Y3QgaW5wdXRfZXZlbnQgaW5ldjsKIAotICBFVkVOVF9JTklUIChpbmV2LmllKTsKKyAgRVZF
TlRfSU5JVCAoaW5ldik7CiAgIHRlcm1pbmFsID0gdXNlcl9kYXRhOwotICBpbmV2LmllLmtp
bmQgPSBNT05JVE9SU19DSEFOR0VEX0VWRU5UOwotICBYU0VUVEVSTUlOQUwgKGluZXYuaWUu
YXJnLCB0ZXJtaW5hbCk7CisgIGluZXYua2luZCA9IE1PTklUT1JTX0NIQU5HRURfRVZFTlQ7
CisgIFhTRVRURVJNSU5BTCAoaW5ldi5hcmcsIHRlcm1pbmFsKTsKIAogICBldnFfZW5xdWV1
ZSAoJmluZXYpOwogfQpAQCAtNjkyOCw3ICs2OTQ5LDYgQEAgcGd0a19zZWxlY3Rpb25fZXZl
bnQgKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtFdmVudCAqZXZlbnQsCiAJCSAgICAgIGdwb2lu
dGVyIHVzZXJfZGF0YSkKIHsKICAgc3RydWN0IGZyYW1lICpmOwotICB1bmlvbiBidWZmZXJl
ZF9pbnB1dF9ldmVudCBpbmV2OwogCiAgIGlmIChldmVudC0+dHlwZSA9PSBHREtfUFJPUEVS
VFlfTk9USUZZKQogICAgIHBndGtfaGFuZGxlX3Byb3BlcnR5X25vdGlmeSAoJmV2ZW50LT5w
cm9wZXJ0eSk7CkBAIC02OTM5LDE1ICs2OTU5LDE1IEBAIHBndGtfc2VsZWN0aW9uX2V2ZW50
IChHdGtXaWRnZXQgKndpZGdldCwgR2RrRXZlbnQgKmV2ZW50LAogCiAgICAgICBpZiAoZikK
IAl7Ci0JICBFVkVOVF9JTklUIChpbmV2LmllKTsKKwkgIHN0cnVjdCBzZWxlY3Rpb25faW5w
dXRfZXZlbnQgc2luZXYgPSB7MH07CiAKLQkgIGluZXYuc2llLmtpbmQgPSAoZXZlbnQtPnR5
cGUgPT0gR0RLX1NFTEVDVElPTl9DTEVBUgorCSAgc2luZXYua2luZCA9IChldmVudC0+dHlw
ZSA9PSBHREtfU0VMRUNUSU9OX0NMRUFSCiAJCQkgICA/IFNFTEVDVElPTl9DTEVBUl9FVkVO
VAogCQkJICAgOiBTRUxFQ1RJT05fUkVRVUVTVF9FVkVOVCk7CiAKLQkgIFNFTEVDVElPTl9F
VkVOVF9EUFlJTkZPICgmaW5ldi5zaWUpID0gRlJBTUVfRElTUExBWV9JTkZPIChmKTsKLQkg
IFNFTEVDVElPTl9FVkVOVF9TRUxFQ1RJT04gKCZpbmV2LnNpZSkgPSBldmVudC0+c2VsZWN0
aW9uLnNlbGVjdGlvbjsKLQkgIFNFTEVDVElPTl9FVkVOVF9USU1FICgmaW5ldi5zaWUpID0g
ZXZlbnQtPnNlbGVjdGlvbi50aW1lOworCSAgU0VMRUNUSU9OX0VWRU5UX0RQWUlORk8gKCZz
aW5ldikgPSBGUkFNRV9ESVNQTEFZX0lORk8gKGYpOworCSAgU0VMRUNUSU9OX0VWRU5UX1NF
TEVDVElPTiAoJnNpbmV2KSA9IGV2ZW50LT5zZWxlY3Rpb24uc2VsZWN0aW9uOworCSAgU0VM
RUNUSU9OX0VWRU5UX1RJTUUgKCZzaW5ldikgPSBldmVudC0+c2VsZWN0aW9uLnRpbWU7CiAK
IAkgIGlmIChldmVudC0+dHlwZSA9PSBHREtfU0VMRUNUSU9OX1JFUVVFU1QpCiAJICAgIHsK
QEAgLTY5NTcsMTIgKzY5NzcsMTIgQEAgcGd0a19zZWxlY3Rpb25fZXZlbnQgKEd0a1dpZGdl
dCAqd2lkZ2V0LCBHZGtFdmVudCAqZXZlbnQsCiAJCSBJdCB3b3VsZCBtYWtlIHNlbnNlIHRv
IHdhaXQgZm9yIHRoZSB0cmFuc2ZlciB0bwogCSAgICAgICAgIGNvbXBsZXRlLiAgQnV0IEkg
ZG9uJ3Qga25vdyBpZiBHREsgYWN0dWFsbHkgZG9lcwogCSAgICAgICAgIHRoYXQuICAqLwot
CSAgICAgIFNFTEVDVElPTl9FVkVOVF9SRVFVRVNUT1IgKCZpbmV2LnNpZSkgPSBldmVudC0+
c2VsZWN0aW9uLnJlcXVlc3RvcjsKLQkgICAgICBTRUxFQ1RJT05fRVZFTlRfVEFSR0VUICgm
aW5ldi5zaWUpID0gZXZlbnQtPnNlbGVjdGlvbi50YXJnZXQ7Ci0JICAgICAgU0VMRUNUSU9O
X0VWRU5UX1BST1BFUlRZICgmaW5ldi5zaWUpID0gZXZlbnQtPnNlbGVjdGlvbi5wcm9wZXJ0
eTsKKwkgICAgICBTRUxFQ1RJT05fRVZFTlRfUkVRVUVTVE9SICgmc2luZXYpID0gZXZlbnQt
PnNlbGVjdGlvbi5yZXF1ZXN0b3I7CisJICAgICAgU0VMRUNUSU9OX0VWRU5UX1RBUkdFVCAo
JnNpbmV2KSA9IGV2ZW50LT5zZWxlY3Rpb24udGFyZ2V0OworCSAgICAgIFNFTEVDVElPTl9F
VkVOVF9QUk9QRVJUWSAoJnNpbmV2KSA9IGV2ZW50LT5zZWxlY3Rpb24ucHJvcGVydHk7CiAJ
ICAgIH0KIAotCSAgZXZxX2VucXVldWUgKCZpbmV2KTsKKwkgIGV2cV9zZWxlY3Rpb25fZW5x
dWV1ZSAoJnNpbmV2KTsKIAkgIHJldHVybiBUUlVFOwogCX0KICAgICB9CmRpZmYgLS1naXQg
YS9zcmMveHRlcm0uYyBiL3NyYy94dGVybS5jCmluZGV4IDJjY2YyNjdiYmQzLi5hYTIxMTZh
NGI5ZiAxMDA2NDQKLS0tIGEvc3JjL3h0ZXJtLmMKKysrIGIvc3JjL3h0ZXJtLmMKQEAgLTE4
ODgxLDcgKzE4ODgxLDcgQEAgaGFuZGxlX29uZV94ZXZlbnQgKHN0cnVjdCB4X2Rpc3BsYXlf
aW5mbyAqZHB5aW5mbywKICNlbmRpZgogCQkgICBpbnQgKmZpbmlzaCwgc3RydWN0IGlucHV0
X2V2ZW50ICpob2xkX3F1aXQpCiB7Ci0gIHVuaW9uIGJ1ZmZlcmVkX2lucHV0X2V2ZW50IGlu
ZXY7CisgIHN0cnVjdCBpbnB1dF9ldmVudCBpbmV2OwogICBpbnQgY291bnQgPSAwOwogICBp
bnQgZG9faGVscCA9IDA7CiAjaWZkZWYgSEFWRV9YSU5QVVQyCkBAIC0xODkyNCw5ICsxODky
NCw5IEBAIGhhbmRsZV9vbmVfeGV2ZW50IChzdHJ1Y3QgeF9kaXNwbGF5X2luZm8gKmRweWlu
Zm8sCiAKICAgKmZpbmlzaCA9IFhfRVZFTlRfTk9STUFMOwogCi0gIEVWRU5UX0lOSVQgKGlu
ZXYuaWUpOwotICBpbmV2LmllLmtpbmQgPSBOT19FVkVOVDsKLSAgaW5ldi5pZS5hcmcgPSBR
bmlsOworICBFVkVOVF9JTklUIChpbmV2KTsKKyAgaW5ldi5raW5kID0gTk9fRVZFTlQ7Cisg
IGluZXYuYXJnID0gUW5pbDsKICNpZmRlZiBIQVZFX1hJTlBVVDIKICAgZ2VuX2hlbHBfZGV2
aWNlID0gTlVMTDsKICNlbmRpZgpAQCAtMTkyNTcsOSArMTkyNTcsOSBAQCBoYW5kbGVfb25l
X3hldmVudCAoc3RydWN0IHhfZGlzcGxheV9pbmZvICpkcHlpbmZvLAogICAgICAgICAgICAg
ICAgIGlmICghZikKIAkJICBnb3RvIE9USEVSOyAvKiBNYXkgYmUgYSBkaWFsb2cgdGhhdCBp
cyB0byBiZSByZW1vdmVkICAqLwogCi0JCWluZXYuaWUua2luZCA9IERFTEVURV9XSU5ET1df
RVZFTlQ7Ci0JCWluZXYuaWUudGltZXN0YW1wID0gZXZlbnQtPnhjbGllbnQuZGF0YS5sWzFd
OwotCQlYU0VURlJBTUUgKGluZXYuaWUuZnJhbWVfb3Jfd2luZG93LCBmKTsKKwkJaW5ldi5r
aW5kID0gREVMRVRFX1dJTkRPV19FVkVOVDsKKwkJaW5ldi50aW1lc3RhbXAgPSBldmVudC0+
eGNsaWVudC5kYXRhLmxbMV07CisJCVhTRVRGUkFNRSAoaW5ldi5mcmFtZV9vcl93aW5kb3cs
IGYpOwogCQlnb3RvIGRvbmU7CiAgICAgICAgICAgICAgIH0KIApAQCAtMTk0MTMsNyArMTk0
MTMsNyBAQCBoYW5kbGVfb25lX3hldmVudCAoc3RydWN0IHhfZGlzcGxheV9pbmZvICpkcHlp
bmZvLAogCSAgICAvKiBDb252ZXJ0IHRoZSBzY3JvbGwgYmFyIGV2ZW50IHRvIGFuIGlucHV0
IGV2ZW50IHVzaW5nCiAJICAgICAgIHRoZSBmaXJzdCB3aW5kb3cgZW50ZXJlZCBpbnRvIHRo
ZSBzY3JvbGwgYmFyIGV2ZW50CiAJICAgICAgIHF1ZXVlLiAqLwotICAgICAgICAgICAgeF9z
Y3JvbGxfYmFyX3RvX2lucHV0X2V2ZW50IChkcHlpbmZvLCBldmVudCwgJmluZXYuaWUpOwor
CSAgICB4X3Njcm9sbF9iYXJfdG9faW5wdXRfZXZlbnQgKGRweWluZm8sIGV2ZW50LCAmaW5l
dik7CiAKIAkgICAgKmZpbmlzaCA9IFhfRVZFTlRfR09UT19PVVQ7CiAgICAgICAgICAgICBn
b3RvIGRvbmU7CkBAIC0xOTQyMyw4ICsxOTQyMyw3IEBAIGhhbmRsZV9vbmVfeGV2ZW50IChz
dHJ1Y3QgeF9kaXNwbGF5X2luZm8gKmRweWluZm8sCiAJICAgIC8qIENvbnZlcnQgdGhlIGhv
cml6b250YWwgc2Nyb2xsIGJhciBldmVudCB0byBhbiBpbnB1dAogCSAgICAgICBldmVudCB1
c2luZyB0aGUgZmlyc3Qgd2luZG93IGVudGVyZWQgaW50byB0aGUgc2Nyb2xsCiAJICAgICAg
IGJhciBldmVudCBxdWV1ZS4gKi8KLSAgICAgICAgICAgIHhfaG9yaXpvbnRhbF9zY3JvbGxf
YmFyX3RvX2lucHV0X2V2ZW50IChkcHlpbmZvLCBldmVudCwKLQkJCQkJCSAgICAmaW5ldi5p
ZSk7CisJICAgIHhfaG9yaXpvbnRhbF9zY3JvbGxfYmFyX3RvX2lucHV0X2V2ZW50IChkcHlp
bmZvLCBldmVudCwgJmluZXYpOwogCiAJICAgICpmaW5pc2ggPSBYX0VWRU5UX0dPVE9fT1VU
OwogICAgICAgICAgICAgZ290byBkb25lOwpAQCAtMTk0MzYsNyArMTk0MzUsNyBAQCBoYW5k
bGVfb25lX3hldmVudCAoc3RydWN0IHhfZGlzcGxheV9pbmZvICpkcHlpbmZvLAogICAgICAg
ICAgIHsKIAkgICAgZW51bSB4ZW1iZWRfbWVzc2FnZSBtc2cgPSBldmVudC0+eGNsaWVudC5k
YXRhLmxbMV07CiAJICAgIGlmIChtc2cgPT0gWEVNQkVEX0ZPQ1VTX0lOIHx8IG1zZyA9PSBY
RU1CRURfRk9DVVNfT1VUKQotCSAgICAgIHhfZGV0ZWN0X2ZvY3VzX2NoYW5nZSAoZHB5aW5m
bywgYW55LCBldmVudCwgJmluZXYuaWUpOworCSAgICAgIHhfZGV0ZWN0X2ZvY3VzX2NoYW5n
ZSAoZHB5aW5mbywgYW55LCBldmVudCwgJmluZXYpOwogCiAJICAgICpmaW5pc2ggPSBYX0VW
RU5UX0dPVE9fT1VUOwogICAgICAgICAgICAgZ290byBkb25lOwpAQCAtMTk0NzUsNyArMTk0
NzQsNyBAQCBoYW5kbGVfb25lX3hldmVudCAoc3RydWN0IHhfZGlzcGxheV9pbmZvICpkcHlp
bmZvLAogCXJjID0geF9jb29yZHNfZnJvbV9kbmRfbWVzc2FnZSAoZHB5aW5mbywgKFhFdmVu
dCAqKSBldmVudCwKIAkJCQkJJmR4LCAmZHkpOwogCi0JaWYgKHhfaGFuZGxlX2RuZF9tZXNz
YWdlIChmLCAmZXZlbnQtPnhjbGllbnQsIGRweWluZm8sICZpbmV2LmllLAorCWlmICh4X2hh
bmRsZV9kbmRfbWVzc2FnZSAoZiwgJmV2ZW50LT54Y2xpZW50LCBkcHlpbmZvLCAmaW5ldiwK
IAkJCQkgIHJjLCBkeCwgZHkpKQogCSAgKmZpbmlzaCA9IFhfRVZFTlRfRFJPUDsKICAgICAg
IH0KQEAgLTE5NTExLDE1ICsxOTUxMCwxOCBAQCBoYW5kbGVfb25lX3hldmVudCAoc3RydWN0
IHhfZGlzcGxheV9pbmZvICpkcHlpbmZvLAogCQl8fCBkcHlpbmZvLT5tb3RpZl9kcmFnX2F0
b21fdGltZSA8PSBldmVudHAtPnRpbWUpKQogCSAgZHB5aW5mby0+bW90aWZfZHJhZ19hdG9t
ID0gTm9uZTsKIAotICAgICAgICBpbmV2LnNpZS5raW5kID0gU0VMRUNUSU9OX0NMRUFSX0VW
RU5UOwotICAgICAgICBTRUxFQ1RJT05fRVZFTlRfRFBZSU5GTyAoJmluZXYuc2llKSA9IGRw
eWluZm87Ci0gICAgICAgIFNFTEVDVElPTl9FVkVOVF9TRUxFQ1RJT04gKCZpbmV2LnNpZSkg
PSBldmVudHAtPnNlbGVjdGlvbjsKLSAgICAgICAgU0VMRUNUSU9OX0VWRU5UX1RJTUUgKCZp
bmV2LnNpZSkgPSBldmVudHAtPnRpbWU7CisJc3RydWN0IHNlbGVjdGlvbl9pbnB1dF9ldmVu
dCBzaW5ldiA9IHswfTsKKwlzaW5ldi5raW5kID0gU0VMRUNUSU9OX0NMRUFSX0VWRU5UOwor
CVNFTEVDVElPTl9FVkVOVF9EUFlJTkZPICgmc2luZXYpID0gZHB5aW5mbzsKKwlTRUxFQ1RJ
T05fRVZFTlRfU0VMRUNUSU9OICgmc2luZXYpID0gZXZlbnRwLT5zZWxlY3Rpb247CisJU0VM
RUNUSU9OX0VWRU5UX1RJTUUgKCZzaW5ldikgPSBldmVudHAtPnRpbWU7CiAKIAlpZiAoeF91
c2VfcGVuZGluZ19zZWxlY3Rpb25fcmVxdWVzdHMpCisJICB4X3B1c2hfc2VsZWN0aW9uX3Jl
cXVlc3QgKCZzaW5ldik7CisJZWxzZQogCSAgewotCSAgICB4X3B1c2hfc2VsZWN0aW9uX3Jl
cXVlc3QgKCZpbmV2LnNpZSk7Ci0JICAgIEVWRU5UX0lOSVQgKGluZXYuaWUpOworCSAgICBr
YmRfYnVmZmVyX3N0b3JlX3NlbGVjdGlvbl9ldmVudF9ob2xkICgmc2luZXYsIGhvbGRfcXVp
dCk7CisJICAgIGNvdW50Kys7CiAJICB9CiAgICAgICB9CiAgICAgICBicmVhazsKQEAgLTE5
NTM1LDIyICsxOTUzNywyNSBAQCBoYW5kbGVfb25lX3hldmVudCAoc3RydWN0IHhfZGlzcGxh
eV9pbmZvICpkcHlpbmZvLAogICAgICAgewogCWNvbnN0IFhTZWxlY3Rpb25SZXF1ZXN0RXZl
bnQgKmV2ZW50cCA9ICZldmVudC0+eHNlbGVjdGlvbnJlcXVlc3Q7CiAKLQlpbmV2LnNpZS5r
aW5kID0gU0VMRUNUSU9OX1JFUVVFU1RfRVZFTlQ7Ci0JU0VMRUNUSU9OX0VWRU5UX0RQWUlO
Rk8gKCZpbmV2LnNpZSkgPSBkcHlpbmZvOwotCVNFTEVDVElPTl9FVkVOVF9SRVFVRVNUT1Ig
KCZpbmV2LnNpZSkgPSBldmVudHAtPnJlcXVlc3RvcjsKLQlTRUxFQ1RJT05fRVZFTlRfU0VM
RUNUSU9OICgmaW5ldi5zaWUpID0gZXZlbnRwLT5zZWxlY3Rpb247Ci0JU0VMRUNUSU9OX0VW
RU5UX1RBUkdFVCAoJmluZXYuc2llKSA9IGV2ZW50cC0+dGFyZ2V0OwotCVNFTEVDVElPTl9F
VkVOVF9QUk9QRVJUWSAoJmluZXYuc2llKSA9IGV2ZW50cC0+cHJvcGVydHk7Ci0JU0VMRUNU
SU9OX0VWRU5UX1RJTUUgKCZpbmV2LnNpZSkgPSBldmVudHAtPnRpbWU7CisJc3RydWN0IHNl
bGVjdGlvbl9pbnB1dF9ldmVudCBzaW5ldjsKKwlzaW5ldi5raW5kID0gU0VMRUNUSU9OX1JF
UVVFU1RfRVZFTlQ7CisJU0VMRUNUSU9OX0VWRU5UX0RQWUlORk8gKCZzaW5ldikgPSBkcHlp
bmZvOworCVNFTEVDVElPTl9FVkVOVF9SRVFVRVNUT1IgKCZzaW5ldikgPSBldmVudHAtPnJl
cXVlc3RvcjsKKwlTRUxFQ1RJT05fRVZFTlRfU0VMRUNUSU9OICgmc2luZXYpID0gZXZlbnRw
LT5zZWxlY3Rpb247CisJU0VMRUNUSU9OX0VWRU5UX1RBUkdFVCAoJnNpbmV2KSA9IGV2ZW50
cC0+dGFyZ2V0OworCVNFTEVDVElPTl9FVkVOVF9QUk9QRVJUWSAoJnNpbmV2KSA9IGV2ZW50
cC0+cHJvcGVydHk7CisJU0VMRUNUSU9OX0VWRU5UX1RJTUUgKCZzaW5ldikgPSBldmVudHAt
PnRpbWU7CiAKIAkvKiBJZiBkcmFnLWFuZC1kcm9wIG9yIGFub3RoZXIgbW9kYWwgZGlhbG9n
L21lbnUgaXMgaW4KIAkgICBwcm9ncmVzcywgaGFuZGxlIFNlbGVjdGlvblJlcXVlc3QgZXZl
bnRzIGltbWVkaWF0ZWx5LCBieQogCSAgIHB1c2hpbmcgaXQgb250byB0aGUgc2VsZWN0aW9u
IHF1ZXVlLiAgKi8KIAogCWlmICh4X3VzZV9wZW5kaW5nX3NlbGVjdGlvbl9yZXF1ZXN0cykK
KwkgIHhfcHVzaF9zZWxlY3Rpb25fcmVxdWVzdCAoJnNpbmV2KTsKKwllbHNlCiAJICB7Ci0J
ICAgIHhfcHVzaF9zZWxlY3Rpb25fcmVxdWVzdCAoJmluZXYuc2llKTsKLQkgICAgRVZFTlRf
SU5JVCAoaW5ldi5pZSk7CisJICAgIGtiZF9idWZmZXJfc3RvcmVfc2VsZWN0aW9uX2V2ZW50
X2hvbGQgKCZzaW5ldiwgaG9sZF9xdWl0KTsKKwkgICAgY291bnQrKzsKIAkgIH0KIAogCWlm
ICh4X2RuZF93YWl0aW5nX2Zvcl9maW5pc2gKQEAgLTE5NjQ5LDcgKzE5NjU0LDcgQEAgaGFu
ZGxlX29uZV94ZXZlbnQgKHN0cnVjdCB4X2Rpc3BsYXlfaW5mbyAqZHB5aW5mbywKIAkgICAg
ICBTRVRfRlJBTUVfSUNPTklGSUVEIChmLCBmYWxzZSk7CiAKIAkgICAgICBmLT5vdXRwdXRf
ZGF0YS54LT5oYXNfYmVlbl92aXNpYmxlID0gdHJ1ZTsKLQkgICAgICBpbmV2LmllLmtpbmQg
PSBERUlDT05JRllfRVZFTlQ7CisJICAgICAgaW5ldi5raW5kID0gREVJQ09OSUZZX0VWRU5U
OwogI2lmIGRlZmluZWQgVVNFX0dUSyAmJiBkZWZpbmVkIEhBVkVfR1RLMwogCSAgICAgIC8q
IElmIEdUSzMgd2FudHMgdG8gaW1wb3NlIHNvbWUgb2xkIHNpemUgaGVyZSAoQnVnIzI0NTI2
KSwKIAkJIHRlbGwgaXQgdGhhdCB0aGUgY3VycmVudCBzaXplIGlzIHdoYXQgd2Ugd2FudC4g
ICovCkBAIC0xOTY2MCw3ICsxOTY2NSw3IEBAIGhhbmRsZV9vbmVfeGV2ZW50IChzdHJ1Y3Qg
eF9kaXNwbGF5X2luZm8gKmRweWluZm8sCiAJCSAgZi0+d2FzX2ludmlzaWJsZSA9IGZhbHNl
OwogCQl9CiAjZW5kaWYKLQkgICAgICBYU0VURlJBTUUgKGluZXYuaWUuZnJhbWVfb3Jfd2lu
ZG93LCBmKTsKKwkgICAgICBYU0VURlJBTUUgKGluZXYuZnJhbWVfb3Jfd2luZG93LCBmKTsK
IAkgICAgfQogCSAgZWxzZSBpZiAoIW5vdF9oaWRkZW4gJiYgIUZSQU1FX0lDT05JRklFRF9Q
IChmKSkKIAkgICAgewpAQCAtMTk2NzAsOCArMTk2NzUsOCBAQCBoYW5kbGVfb25lX3hldmVu
dCAoc3RydWN0IHhfZGlzcGxheV9pbmZvICpkcHlpbmZvLAogCiAJICAgICAgU0VUX0ZSQU1F
X1ZJU0lCTEUgKGYsIDApOwogCSAgICAgIFNFVF9GUkFNRV9JQ09OSUZJRUQgKGYsIHRydWUp
OwotCSAgICAgIGluZXYuaWUua2luZCA9IElDT05JRllfRVZFTlQ7Ci0JICAgICAgWFNFVEZS
QU1FIChpbmV2LmllLmZyYW1lX29yX3dpbmRvdywgZik7CisJICAgICAgaW5ldi5raW5kID0g
SUNPTklGWV9FVkVOVDsKKwkgICAgICBYU0VURlJBTUUgKGluZXYuZnJhbWVfb3Jfd2luZG93
LCBmKTsKIAkgICAgfQogCX0KIApAQCAtMTk2ODYsNyArMTk2OTEsNyBAQCBoYW5kbGVfb25l
X3hldmVudCAoc3RydWN0IHhfZGlzcGxheV9pbmZvICpkcHlpbmZvLAogCSAgIHNldC4gIEhh
bmRsaW5nIFVubWFwTm90aWZ5IGFsc28gY2hlY2tzIGZvcgogCSAgIF9ORVRfV01fU1RBVEVf
SElEREVOLCBhbmQgdGh1cyBzdWZmZXJzIGZyb20gdGhlIHNhbWUKIAkgICBwcm9ibGVtLiAg
Ki8KLQl4X2hhbmRsZV93bV9zdGF0ZSAoZiwgJmluZXYuaWUpOworCXhfaGFuZGxlX3dtX3N0
YXRlIChmLCAmaW5ldik7CiAKICAgICAgIGlmIChmICYmIEZSQU1FX1hfT1VUUFVUIChmKS0+
YWxwaGFfaWRlbnRpY2FsX3AKIAkgICYmIChldmVudC0+eHByb3BlcnR5LmF0b20KQEAgLTIw
MDg4LDggKzIwMDkzLDggQEAgaGFuZGxlX29uZV94ZXZlbnQgKHN0cnVjdCB4X2Rpc3BsYXlf
aW5mbyAqZHB5aW5mbywKIAkJICAoZiwgYnVpbGRfc3RyaW5nICgiVW5tYXBOb3RpZnksIHZp
c2libGUgfCBpY29uaWZpZWQiKSk7CiAKICAgICAgICAgICAgICAgU0VUX0ZSQU1FX0lDT05J
RklFRCAoZiwgdHJ1ZSk7Ci0JICAgICAgaW5ldi5pZS5raW5kID0gSUNPTklGWV9FVkVOVDsK
LSAgICAgICAgICAgICAgWFNFVEZSQU1FIChpbmV2LmllLmZyYW1lX29yX3dpbmRvdywgZik7
CisJICAgICAgaW5ldi5raW5kID0gSUNPTklGWV9FVkVOVDsKKwkgICAgICBYU0VURlJBTUUg
KGluZXYuZnJhbWVfb3Jfd2luZG93LCBmKTsKICAgICAgICAgICAgIH0KIAkgIGVsc2UgaWYg
KENPTlNQIChmcmFtZV9zaXplX2hpc3RvcnkpKQogCSAgICBmcmFtZV9zaXplX2hpc3Rvcnlf
cGxhaW4KQEAgLTIwMTk4LDggKzIwMjAzLDggQEAgaGFuZGxlX29uZV94ZXZlbnQgKHN0cnVj
dCB4X2Rpc3BsYXlfaW5mbyAqZHB5aW5mbywKIAogICAgICAgICAgIGlmICgobm90X2hpZGRl
biB8fCBGUkFNRV9YX0VNQkVEREVEX1AgKGYpKSAmJiBpY29uaWZpZWQpCiAgICAgICAgICAg
ICB7Ci0gICAgICAgICAgICAgIGluZXYuaWUua2luZCA9IERFSUNPTklGWV9FVkVOVDsKLSAg
ICAgICAgICAgICAgWFNFVEZSQU1FIChpbmV2LmllLmZyYW1lX29yX3dpbmRvdywgZik7CisJ
ICAgICAgaW5ldi5raW5kID0gREVJQ09OSUZZX0VWRU5UOworCSAgICAgIFhTRVRGUkFNRSAo
aW5ldi5mcmFtZV9vcl93aW5kb3csIGYpOwogICAgICAgICAgICAgfQogICAgICAgICB9CiAg
ICAgICBnb3RvIE9USEVSOwpAQCAtMjA0NjUsMTggKzIwNDcwLDE3IEBAIGhhbmRsZV9vbmVf
eGV2ZW50IChzdHJ1Y3QgeF9kaXNwbGF5X2luZm8gKmRweWluZm8sCiAgICAgICAgICAgb3Jp
Z19rZXlzeW0gPSBrZXlzeW07CiAKIAkgIC8qIENvbW1vbiBmb3IgYWxsIGtleXN5bSBpbnB1
dCBldmVudHMuICAqLwotCSAgWFNFVEZSQU1FIChpbmV2LmllLmZyYW1lX29yX3dpbmRvdywg
Zik7Ci0JICBpbmV2LmllLm1vZGlmaWVycwotCSAgICA9IHhfeF90b19lbWFjc19tb2RpZmll
cnMgKGRweWluZm8sIG1vZGlmaWVycyk7Ci0JICBpbmV2LmllLnRpbWVzdGFtcCA9IHhrZXku
dGltZTsKKwkgIFhTRVRGUkFNRSAoaW5ldi5mcmFtZV9vcl93aW5kb3csIGYpOworCSAgaW5l
di5tb2RpZmllcnMgPSB4X3hfdG9fZW1hY3NfbW9kaWZpZXJzIChkcHlpbmZvLCBtb2RpZmll
cnMpOworCSAgaW5ldi50aW1lc3RhbXAgPSB4a2V5LnRpbWU7CiAKIAkgIC8qIEZpcnN0IGRl
YWwgd2l0aCBrZXlzeW1zIHdoaWNoIGhhdmUgZGVmaW5lZAogCSAgICAgdHJhbnNsYXRpb25z
IHRvIGNoYXJhY3RlcnMuICAqLwogCSAgaWYgKGtleXN5bSA+PSAzMiAmJiBrZXlzeW0gPCAx
MjgpCiAJICAgIC8qIEF2b2lkIGV4cGxpY2l0bHkgZGVjb2RpbmcgZWFjaCBBU0NJSSBjaGFy
YWN0ZXIuICAqLwogCSAgICB7Ci0JICAgICAgaW5ldi5pZS5raW5kID0gQVNDSUlfS0VZU1RS
T0tFX0VWRU5UOwotCSAgICAgIGluZXYuaWUuY29kZSA9IGtleXN5bTsKKwkgICAgICBpbmV2
LmtpbmQgPSBBU0NJSV9LRVlTVFJPS0VfRVZFTlQ7CisJICAgICAgaW5ldi5jb2RlID0ga2V5
c3ltOwogCiAjaWZkZWYgSEFWRV9YSU5QVVQyCiAJICAgICAgaWYgKGV2ZW50LT54a2V5LnRp
bWUgPT0gcGVuZGluZ19rZXlzdHJva2VfdGltZSkKQEAgLTIwNDg1LDcgKzIwNDg5LDcgQEAg
aGFuZGxlX29uZV94ZXZlbnQgKHN0cnVjdCB4X2Rpc3BsYXlfaW5mbyAqZHB5aW5mbywKIAkJ
CQkJICAgICAgZHB5aW5mby0+cGVuZGluZ19rZXlzdHJva2Vfc291cmNlKTsKIAogCQkgIGlm
IChzb3VyY2UpCi0JCSAgICBpbmV2LmllLmRldmljZSA9IHNvdXJjZS0+bmFtZTsKKwkJICAg
IGluZXYuZGV2aWNlID0gc291cmNlLT5uYW1lOwogCQl9CiAjZW5kaWYKIApAQCAtMjA0OTYs
MTAgKzIwNTAwLDEwIEBAIGhhbmRsZV9vbmVfeGV2ZW50IChzdHJ1Y3QgeF9kaXNwbGF5X2lu
Zm8gKmRweWluZm8sCiAJICBpZiAoa2V5c3ltID49IDB4MDEwMDAwMDAgJiYga2V5c3ltIDw9
IDB4MDExMEZGRkYpCiAJICAgIHsKIAkgICAgICBpZiAoa2V5c3ltIDwgMHgwMTAwMDA4MCkK
LQkJaW5ldi5pZS5raW5kID0gQVNDSUlfS0VZU1RST0tFX0VWRU5UOworCQlpbmV2LmtpbmQg
PSBBU0NJSV9LRVlTVFJPS0VfRVZFTlQ7CiAJICAgICAgZWxzZQotCQlpbmV2LmllLmtpbmQg
PSBNVUxUSUJZVEVfQ0hBUl9LRVlTVFJPS0VfRVZFTlQ7Ci0JICAgICAgaW5ldi5pZS5jb2Rl
ID0ga2V5c3ltICYgMHhGRkZGRkY7CisJCWluZXYua2luZCA9IE1VTFRJQllURV9DSEFSX0tF
WVNUUk9LRV9FVkVOVDsKKwkgICAgICBpbmV2LmNvZGUgPSBrZXlzeW0gJiAweEZGRkZGRjsK
IAogI2lmZGVmIEhBVkVfWElOUFVUMgogCSAgICAgIGlmIChldmVudC0+eGtleS50aW1lID09
IHBlbmRpbmdfa2V5c3Ryb2tlX3RpbWUpCkBAIC0yMDUwOCw3ICsyMDUxMiw3IEBAIGhhbmRs
ZV9vbmVfeGV2ZW50IChzdHJ1Y3QgeF9kaXNwbGF5X2luZm8gKmRweWluZm8sCiAJCQkJCSAg
ICAgIGRweWluZm8tPnBlbmRpbmdfa2V5c3Ryb2tlX3NvdXJjZSk7CiAKIAkJICBpZiAoc291
cmNlKQotCQkgICAgaW5ldi5pZS5kZXZpY2UgPSBzb3VyY2UtPm5hbWU7CisJCSAgICBpbmV2
LmRldmljZSA9IHNvdXJjZS0+bmFtZTsKIAkJfQogI2VuZGlmCiAKQEAgLTIwNTIyLDEwICsy
MDUyNiwxMCBAQCBoYW5kbGVfb25lX3hldmVudCAoc3RydWN0IHhfZGlzcGxheV9pbmZvICpk
cHlpbmZvLAogCQkJCVFuaWwpLAogCQkgIEZJWE5BVFAgKGMpKSkKIAkgICAgewotCSAgICAg
IGluZXYuaWUua2luZCA9IChTSU5HTEVfQllURV9DSEFSX1AgKFhGSVhOQVQgKGMpKQotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBBU0NJSV9LRVlTVFJPS0VfRVZFTlQKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogTVVMVElCWVRFX0NIQVJfS0VZU1RST0tF
X0VWRU5UKTsKLQkgICAgICBpbmV2LmllLmNvZGUgPSBYRklYTkFUIChjKTsKKwkgICAgICBp
bmV2LmtpbmQgPSAoU0lOR0xFX0JZVEVfQ0hBUl9QIChYRklYTkFUIChjKSkKKwkJCSAgID8g
QVNDSUlfS0VZU1RST0tFX0VWRU5UCisJCQkgICA6IE1VTFRJQllURV9DSEFSX0tFWVNUUk9L
RV9FVkVOVCk7CisJICAgICAgaW5ldi5jb2RlID0gWEZJWE5BVCAoYyk7CiAKICNpZmRlZiBI
QVZFX1hJTlBVVDIKIAkgICAgICBpZiAoZXZlbnQtPnhrZXkudGltZSA9PSBwZW5kaW5nX2tl
eXN0cm9rZV90aW1lKQpAQCAtMjA1MzQsNyArMjA1MzgsNyBAQCBoYW5kbGVfb25lX3hldmVu
dCAoc3RydWN0IHhfZGlzcGxheV9pbmZvICpkcHlpbmZvLAogCQkJCQkgICAgICBkcHlpbmZv
LT5wZW5kaW5nX2tleXN0cm9rZV9zb3VyY2UpOwogCiAJCSAgaWYgKHNvdXJjZSkKLQkJICAg
IGluZXYuaWUuZGV2aWNlID0gc291cmNlLT5uYW1lOworCQkgICAgaW5ldi5kZXZpY2UgPSBz
b3VyY2UtPm5hbWU7CiAJCX0KICNlbmRpZgogCkBAIC0yMDY0MCw4ICsyMDY0NCw4IEBAIGhh
bmRsZV9vbmVfeGV2ZW50IChzdHJ1Y3QgeF9kaXNwbGF5X2luZm8gKmRweWluZm8sCiAJICAg
ICAgU1RPUkVfS0VZU1lNX0ZPUl9ERUJVRyAoa2V5c3ltKTsKIAkgICAgICAvKiBtYWtlX2xp
c3B5X2V2ZW50IHdpbGwgY29udmVydCB0aGlzIHRvIGEgc3ltYm9saWMKIAkJIGtleS4gICov
Ci0JICAgICAgaW5ldi5pZS5raW5kID0gTk9OX0FTQ0lJX0tFWVNUUk9LRV9FVkVOVDsKLQkg
ICAgICBpbmV2LmllLmNvZGUgPSBrZXlzeW07CisJICAgICAgaW5ldi5raW5kID0gTk9OX0FT
Q0lJX0tFWVNUUk9LRV9FVkVOVDsKKwkgICAgICBpbmV2LmNvZGUgPSBrZXlzeW07CiAKICNp
ZmRlZiBIQVZFX1hJTlBVVDIKIAkgICAgICBpZiAoZXZlbnQtPnhrZXkudGltZSA9PSBwZW5k
aW5nX2tleXN0cm9rZV90aW1lKQpAQCAtMjA2NTAsNyArMjA2NTQsNyBAQCBoYW5kbGVfb25l
X3hldmVudCAoc3RydWN0IHhfZGlzcGxheV9pbmZvICpkcHlpbmZvLAogCQkJCQkgICAgICBk
cHlpbmZvLT5wZW5kaW5nX2tleXN0cm9rZV9zb3VyY2UpOwogCiAJCSAgaWYgKHNvdXJjZSkK
LQkJICAgIGluZXYuaWUuZGV2aWNlID0gc291cmNlLT5uYW1lOworCQkgICAgaW5ldi5kZXZp
Y2UgPSBzb3VyY2UtPm5hbWU7CiAJCX0KICNlbmRpZgogCkBAIC0yMDY2NywxMSArMjA2NzEs
MTEgQEAgaGFuZGxlX29uZV94ZXZlbnQgKHN0cnVjdCB4X2Rpc3BsYXlfaW5mbyAqZHB5aW5m
bywKIAogCSAgICBpZiAobmJ5dGVzKQogCSAgICAgIHsKLQkJaW5ldi5pZS5raW5kID0gTVVM
VElCWVRFX0NIQVJfS0VZU1RST0tFX0VWRU5UOwotCQlpbmV2LmllLmFyZyA9IG1ha2VfdW5p
Ynl0ZV9zdHJpbmcgKChjaGFyICopIGNvcHlfYnVmcHRyLCBuYnl0ZXMpOworCQlpbmV2Lmtp
bmQgPSBNVUxUSUJZVEVfQ0hBUl9LRVlTVFJPS0VfRVZFTlQ7CisJCWluZXYuYXJnID0gbWFr
ZV91bmlieXRlX3N0cmluZyAoKGNoYXIgKikgY29weV9idWZwdHIsIG5ieXRlcyk7CiAKIAkJ
RnB1dF90ZXh0X3Byb3BlcnR5IChtYWtlX2ZpeG51bSAoMCksIG1ha2VfZml4bnVtIChuYnl0
ZXMpLAotCQkJCSAgICBRY29kaW5nLCBjb2RpbmcsIGluZXYuaWUuYXJnKTsKKwkJCQkgICAg
UWNvZGluZywgY29kaW5nLCBpbmV2LmFyZyk7CiAKICNpZmRlZiBIQVZFX1hJTlBVVDIKIAkJ
aWYgKGV2ZW50LT54a2V5LnRpbWUgPT0gcGVuZGluZ19rZXlzdHJva2VfdGltZQpAQCAtMjA2
ODUsNyArMjA2ODksNyBAQCBoYW5kbGVfb25lX3hldmVudCAoc3RydWN0IHhfZGlzcGxheV9p
bmZvICpkcHlpbmZvLAogCQkJCQkJZHB5aW5mby0+cGVuZGluZ19rZXlzdHJva2Vfc291cmNl
KTsKIAogCQkgICAgaWYgKHNvdXJjZSkKLQkJICAgICAgaW5ldi5pZS5kZXZpY2UgPSBzb3Vy
Y2UtPm5hbWU7CisJCSAgICAgIGluZXYuZGV2aWNlID0gc291cmNlLT5uYW1lOwogCQkgIH0K
ICNlbmRpZgogCSAgICAgIH0KQEAgLTIwNzYwLDcgKzIwNzY0LDcgQEAgaGFuZGxlX29uZV94
ZXZlbnQgKHN0cnVjdCB4X2Rpc3BsYXlfaW5mbyAqZHB5aW5mbywKIAkgdG8gdHJlYXQgaW1w
bGljaXQgZm9jdXMgY29ycmVjdGx5LiAgKGJ1ZyM2NTkxOSkgKi8KICNpZiBkZWZpbmVkIFVT
RV9YX1RPT0xLSVQgfHwgKGRlZmluZWQgVVNFX0dUSyAmJiAhZGVmaW5lZCBIQVZFX0dUSzMp
CiAgICAgICBpZiAoeF90b3Bfd2luZG93X3RvX2ZyYW1lIChkcHlpbmZvLCBldmVudC0+eGNy
b3NzaW5nLndpbmRvdykpCi0JeF9kZXRlY3RfZm9jdXNfY2hhbmdlIChkcHlpbmZvLCBhbnks
IGV2ZW50LCAmaW5ldi5pZSk7CisJeF9kZXRlY3RfZm9jdXNfY2hhbmdlIChkcHlpbmZvLCBh
bnksIGV2ZW50LCAmaW5ldik7CiAjZW5kaWYgLyogZGVmaW5lZCBVU0VfWF9UT09MS0lUIHx8
IChkZWZpbmVkIFVTRV9HVEsgJiYgIWRlZmluZWQgSEFWRV9HVEszKSAqLwogCiAjaWZkZWYg
SEFWRV9YSU5QVVQyCkBAIC0yMDc3OSw3ICsyMDc4Myw3IEBAIGhhbmRsZV9vbmVfeGV2ZW50
IChzdHJ1Y3QgeF9kaXNwbGF5X2luZm8gKmRweWluZm8sCiAJIGJ1aWxkcy4gICovCiAjaWYg
IWRlZmluZWQgVVNFX1hfVE9PTEtJVCB8fCAoIWRlZmluZWQgVVNFX0dUSyB8fCBkZWZpbmVk
IEhBVkVfR1RLMykKICAgICAgIGlmICh4X3RvcF93aW5kb3dfdG9fZnJhbWUgKGRweWluZm8s
IGV2ZW50LT54Y3Jvc3Npbmcud2luZG93KSkKLQl4X2RldGVjdF9mb2N1c19jaGFuZ2UgKGRw
eWluZm8sIGFueSwgZXZlbnQsICZpbmV2LmllKTsKKwl4X2RldGVjdF9mb2N1c19jaGFuZ2Ug
KGRweWluZm8sIGFueSwgZXZlbnQsICZpbmV2KTsKICNlbmRpZiAvKiAhZGVmaW5lZCBVU0Vf
WF9UT09MS0lUIHx8ICghZGVmaW5lZCBVU0VfR1RLIHx8IGRlZmluZWQgSEFWRV9HVEszKSAq
LwogCiAgICAgICBmID0gYW55OwpAQCAtMjA4NTMsMTIgKzIwODU3LDEyIEBAIGhhbmRsZV9v
bmVfeGV2ZW50IChzdHJ1Y3QgeF9kaXNwbGF5X2luZm8gKmRweWluZm8sCiAJICAgICAgU0VU
X0ZSQU1FX1ZJU0lCTEUgKGYsIDEpOwogCSAgICAgIFNFVF9GUkFNRV9JQ09OSUZJRUQgKGYs
IGZhbHNlKTsKIAkgICAgICBmLT5vdXRwdXRfZGF0YS54LT5oYXNfYmVlbl92aXNpYmxlID0g
dHJ1ZTsKLQkgICAgICBpbmV2LmllLmtpbmQgPSBERUlDT05JRllfRVZFTlQ7Ci0JICAgICAg
WFNFVEZSQU1FIChpbmV2LmllLmZyYW1lX29yX3dpbmRvdywgZik7CisJICAgICAgaW5ldi5r
aW5kID0gREVJQ09OSUZZX0VWRU5UOworCSAgICAgIFhTRVRGUkFNRSAoaW5ldi5mcmFtZV9v
cl93aW5kb3csIGYpOwogCSAgICB9CiAJfQogCi0gICAgICB4X2RldGVjdF9mb2N1c19jaGFu
Z2UgKGRweWluZm8sIGFueSwgZXZlbnQsICZpbmV2LmllKTsKKyAgICAgIHhfZGV0ZWN0X2Zv
Y3VzX2NoYW5nZSAoZHB5aW5mbywgYW55LCBldmVudCwgJmluZXYpOwogICAgICAgZ290byBP
VEhFUjsKIAogICAgIGNhc2UgTGVhdmVOb3RpZnk6CkBAIC0yMDg3MCw3ICsyMDg3NCw3IEBA
IGhhbmRsZV9vbmVfeGV2ZW50IChzdHJ1Y3QgeF9kaXNwbGF5X2luZm8gKmRweWluZm8sCiAJ
IHRvIHRyZWF0IGltcGxpY2l0IGZvY3VzIGNvcnJlY3RseS4gICovCiAjaWYgZGVmaW5lZCBV
U0VfWF9UT09MS0lUIHx8IChkZWZpbmVkIFVTRV9HVEsgJiYgIWRlZmluZWQgSEFWRV9HVEsz
KQogICAgICAgaWYgKHhfdG9wX3dpbmRvd190b19mcmFtZSAoZHB5aW5mbywgZXZlbnQtPnhj
cm9zc2luZy53aW5kb3cpKQotCXhfZGV0ZWN0X2ZvY3VzX2NoYW5nZSAoZHB5aW5mbywgYW55
LCBldmVudCwgJmluZXYuaWUpOworCXhfZGV0ZWN0X2ZvY3VzX2NoYW5nZSAoZHB5aW5mbywg
YW55LCBldmVudCwgJmluZXYpOwogI2VuZGlmIC8qIGRlZmluZWQgVVNFX1hfVE9PTEtJVCB8
fCAoZGVmaW5lZCBVU0VfR1RLICYmICFkZWZpbmVkIEhBVkVfR1RLMykgKi8KIAogI2lmZGVm
IEhBVkVfWElOUFVUMgpAQCAtMjA5MDIsNyArMjA5MDYsNyBAQCBoYW5kbGVfb25lX3hldmVu
dCAoc3RydWN0IHhfZGlzcGxheV9pbmZvICpkcHlpbmZvLAogCSBidWlsZHMuICAqLwogI2lm
ICFkZWZpbmVkIFVTRV9YX1RPT0xLSVQgfHwgKCFkZWZpbmVkIFVTRV9HVEsgfHwgZGVmaW5l
ZCBIQVZFX0dUSzMpCiAgICAgICBpZiAoeF90b3Bfd2luZG93X3RvX2ZyYW1lIChkcHlpbmZv
LCBldmVudC0+eGNyb3NzaW5nLndpbmRvdykpCi0JeF9kZXRlY3RfZm9jdXNfY2hhbmdlIChk
cHlpbmZvLCBhbnksIGV2ZW50LCAmaW5ldi5pZSk7CisJeF9kZXRlY3RfZm9jdXNfY2hhbmdl
IChkcHlpbmZvLCBhbnksIGV2ZW50LCAmaW5ldik7CiAjZW5kaWYgLyogIWRlZmluZWQgVVNF
X1hfVE9PTEtJVCB8fCAoIWRlZmluZWQgVVNFX0dUSyB8fCBkZWZpbmVkIEhBVkVfR1RLMykg
Ki8KIAogI2lmZGVmIEhBVkVfWFdJREdFVFMKQEAgLTIxMDAzLDcgKzIxMDA3LDcgQEAgaGFu
ZGxlX29uZV94ZXZlbnQgKHN0cnVjdCB4X2Rpc3BsYXlfaW5mbyAqZHB5aW5mbywKICAgICAg
IGlmIChkcHlpbmZvLT5zdXBwb3J0c194aTIpCiAJZ290byBPVEhFUjsKICNlbmRpZgotICAg
ICAgeF9kZXRlY3RfZm9jdXNfY2hhbmdlIChkcHlpbmZvLCBhbnksIGV2ZW50LCAmaW5ldi5p
ZSk7CisgICAgICB4X2RldGVjdF9mb2N1c19jaGFuZ2UgKGRweWluZm8sIGFueSwgZXZlbnQs
ICZpbmV2KTsKICAgICAgIGdvdG8gT1RIRVI7CiAKICAgICBjYXNlIE1vdGlvbk5vdGlmeToK
QEAgLTIxMzEzLDggKzIxMzE3LDggQEAgaGFuZGxlX29uZV94ZXZlbnQgKHN0cnVjdCB4X2Rp
c3BsYXlfaW5mbyAqZHB5aW5mbywKIAkJICAgICYmICFFUSAod2luZG93LCBsYXN0X21vdXNl
X3dpbmRvdykKIAkJICAgICYmICFFUSAod2luZG93LCBzZWxlY3RlZF93aW5kb3cpKQogCQkg
IHsKLQkJICAgIGluZXYuaWUua2luZCA9IFNFTEVDVF9XSU5ET1dfRVZFTlQ7Ci0JCSAgICBp
bmV2LmllLmZyYW1lX29yX3dpbmRvdyA9IHdpbmRvdzsKKwkJICAgIGluZXYua2luZCA9IFNF
TEVDVF9XSU5ET1dfRVZFTlQ7CisJCSAgICBpbmV2LmZyYW1lX29yX3dpbmRvdyA9IHdpbmRv
dzsKIAkJICB9CiAKIAkJLyogUmVtZW1iZXIgdGhlIGxhc3Qgd2luZG93IHdoZXJlIHdlIHNh
dyB0aGUgbW91c2UuICAqLwpAQCAtMjE0MDUsMTMgKzIxNDA5LDEzIEBAIGhhbmRsZV9vbmVf
eGV2ZW50IChzdHJ1Y3QgeF9kaXNwbGF5X2luZm8gKmRweWluZm8sCiAJCSBob29rLiAgKi8K
IAkgICAgICBpZiAoIXhfZmluZF9tb25pdG9yc19jaGFuZ2VkX2V2ZW50IChkcHlpbmZvKSkK
IAkJewotCQkgIGluZXYuaWUua2luZCA9IE1PTklUT1JTX0NIQU5HRURfRVZFTlQ7Ci0JCSAg
WFNFVFRFUk1JTkFMIChpbmV2LmllLmFyZywgZHB5aW5mby0+dGVybWluYWwpOworCQkgIGlu
ZXYua2luZCA9IE1PTklUT1JTX0NIQU5HRURfRVZFTlQ7CisJCSAgWFNFVFRFUk1JTkFMIChp
bmV2LmFyZywgZHB5aW5mby0+dGVybWluYWwpOwogCi0JCSAgLyogU3RvcmUgdGhpcyBldmVu
dCBub3cgc2luY2UgaW5ldi5pZS50eXBlIGNvdWxkIGJlIHNldCB0bworCQkgIC8qIFN0b3Jl
IHRoaXMgZXZlbnQgbm93IHNpbmNlIGluZXYudHlwZSBjb3VsZCBiZSBzZXQgdG8KIAkJICAg
ICBNT1ZFX0ZSQU1FX0VWRU5UIGxhdGVyLiAgKi8KLQkJICBrYmRfYnVmZmVyX3N0b3JlX2V2
ZW50ICgmaW5ldi5pZSk7Ci0JCSAgaW5ldi5pZS5raW5kID0gTk9fRVZFTlQ7CisJCSAga2Jk
X2J1ZmZlcl9zdG9yZV9ldmVudCAoJmluZXYpOworCQkgIGluZXYua2luZCA9IE5PX0VWRU5U
OwogCQl9CiAKIAkgICAgICAvKiBBbHNvIHVwZGF0ZSB0aGUgcG9zaXRpb24gb2YgdGhlIGRy
YWctYW5kLWRyb3AKQEAgLTIxNjc4LDggKzIxNjgyLDggQEAgaGFuZGxlX29uZV94ZXZlbnQg
KHN0cnVjdCB4X2Rpc3BsYXlfaW5mbyAqZHB5aW5mbywKIAkgICAgICBpZiAoIUZSQU1FX1RP
T0xUSVBfUCAoZikKIAkJICAmJiAob2xkX2xlZnQgIT0gZi0+bGVmdF9wb3MgfHwgb2xkX3Rv
cCAhPSBmLT50b3BfcG9zKSkKIAkJewotCQkgIGluZXYuaWUua2luZCA9IE1PVkVfRlJBTUVf
RVZFTlQ7Ci0JCSAgWFNFVEZSQU1FIChpbmV2LmllLmZyYW1lX29yX3dpbmRvdywgZik7CisJ
CSAgaW5ldi5raW5kID0gTU9WRV9GUkFNRV9FVkVOVDsKKwkJICBYU0VURlJBTUUgKGluZXYu
ZnJhbWVfb3Jfd2luZG93LCBmKTsKIAkJfQogCSAgICB9CiAKQEAgLTIxNzQ1LDggKzIxNzQ5
LDggQEAgaGFuZGxlX29uZV94ZXZlbnQgKHN0cnVjdCB4X2Rpc3BsYXlfaW5mbyAqZHB5aW5m
bywKIAogICAgICAgICAgICAgaWYgKCFFUSAoc2VsZWN0ZWRfd2luZG93LCB4dnctPncpICYm
IChldmVudC0+eGJ1dHRvbi5idXR0b24gPCA0KSkKICAgICAgICAgICAgICAgewotCQlpbmV2
LmllLmtpbmQgPSBTRUxFQ1RfV0lORE9XX0VWRU5UOwotCQlpbmV2LmllLmZyYW1lX29yX3dp
bmRvdyA9IHh2dy0+dzsKKwkJaW5ldi5raW5kID0gU0VMRUNUX1dJTkRPV19FVkVOVDsKKwkJ
aW5ldi5mcmFtZV9vcl93aW5kb3cgPSB4dnctPnc7CiAJICAgICAgfQogCiAJICAgICpmaW5p
c2ggPSBYX0VWRU5UX0RST1A7CkBAIC0yMjAwMiwxNCArMjIwMDYsMTQgQEAgaGFuZGxlX29u
ZV94ZXZlbnQgKHN0cnVjdCB4X2Rpc3BsYXlfaW5mbyAqZHB5aW5mbywKIAkJCSYmIGV2ZW50
LT54YnV0dG9uLnRpbWUgPiBpZ25vcmVfbmV4dF9tb3VzZV9jbGlja190aW1lb3V0KQogCQkg
ICAgICB7CiAJCQlpZ25vcmVfbmV4dF9tb3VzZV9jbGlja190aW1lb3V0ID0gMDsKLQkJCXhf
Y29uc3RydWN0X21vdXNlX2NsaWNrICgmaW5ldi5pZSwgJmV2ZW50LT54YnV0dG9uLAorCQkJ
eF9jb25zdHJ1Y3RfbW91c2VfY2xpY2sgKCZpbmV2LCAmZXZlbnQtPnhidXR0b24sCiAJCQkg
ICAgICAgICAgICAgICAgICAgICAgICAgZiwgZmFsc2UpOwogCQkgICAgICB9CiAJCSAgICBp
ZiAoZXZlbnQtPnR5cGUgPT0gQnV0dG9uUmVsZWFzZSkKIAkJICAgICAgaWdub3JlX25leHRf
bW91c2VfY2xpY2tfdGltZW91dCA9IDA7CiAJCSAgfQogCQllbHNlCi0JCSAgeF9jb25zdHJ1
Y3RfbW91c2VfY2xpY2sgKCZpbmV2LmllLCAmZXZlbnQtPnhidXR0b24sIGYsIGZhbHNlKTsK
KwkJICB4X2NvbnN0cnVjdF9tb3VzZV9jbGljayAoJmluZXYsICZldmVudC0+eGJ1dHRvbiwg
ZiwgZmFsc2UpOwogCiAJCSpmaW5pc2ggPSBYX0VWRU5UX0RST1A7CiAJCWdvdG8gT1RIRVI7
CkBAIC0yMjA3OSwxOCArMjIwODMsMTggQEAgaGFuZGxlX29uZV94ZXZlbnQgKHN0cnVjdCB4
X2Rpc3BsYXlfaW5mbyAqZHB5aW5mbywKICAgICAgICAgICAgICAgICAgICAgICAgICAgJiYg
ZXZlbnQtPnhidXR0b24udGltZSA+IGlnbm9yZV9uZXh0X21vdXNlX2NsaWNrX3RpbWVvdXQp
CiAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAg
IGlnbm9yZV9uZXh0X21vdXNlX2NsaWNrX3RpbWVvdXQgPSAwOwotICAgICAgICAgICAgICAg
ICAgICAgICAgICB4X2NvbnN0cnVjdF9tb3VzZV9jbGljayAoJmluZXYuaWUsICZldmVudC0+
eGJ1dHRvbiwKKwkJCSAgeF9jb25zdHJ1Y3RfbW91c2VfY2xpY2sgKCZpbmV2LCAmZXZlbnQt
PnhidXR0b24sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBmLCBmYWxzZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAg
ICAgICAgICAgICAgICAgaWYgKGV2ZW50LT50eXBlID09IEJ1dHRvblJlbGVhc2UpCiAgICAg
ICAgICAgICAgICAgICAgICAgICBpZ25vcmVfbmV4dF9tb3VzZV9jbGlja190aW1lb3V0ID0g
MDsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgZWxzZQotICAg
ICAgICAgICAgICAgICAgICB4X2NvbnN0cnVjdF9tb3VzZV9jbGljayAoJmluZXYuaWUsICZl
dmVudC0+eGJ1dHRvbiwKKwkJICAgIHhfY29uc3RydWN0X21vdXNlX2NsaWNrICgmaW5ldiwg
JmV2ZW50LT54YnV0dG9uLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgZiwgZmFsc2UpOwogCiAJCSAgaWYgKCFOSUxQICh0YWJfYmFyX2FyZykpCi0J
CSAgICBpbmV2LmllLmFyZyA9IHRhYl9iYXJfYXJnOworCQkgICAgaW5ldi5hcmcgPSB0YWJf
YmFyX2FyZzsKICAgICAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIGlmIChGUkFNRV9Y
X0VNQkVEREVEX1AgKGYpCkBAIC0yMjEwOSwxMiArMjIxMTMsMTIgQEAgaGFuZGxlX29uZV94
ZXZlbnQgKHN0cnVjdCB4X2Rpc3BsYXlfaW5mbyAqZHB5aW5mbywKICAgICAgICAgICAgICAg
IHNjcm9sbCBiYXJzLiAgKi8KICAgICAgICAgICAgIGlmIChiYXIgJiYgZXZlbnQtPnhidXR0
b24uc3RhdGUgJiBDb250cm9sTWFzaykKICAgICAgICAgICAgICAgewotICAgICAgICAgICAg
ICAgIHhfc2Nyb2xsX2Jhcl9oYW5kbGVfY2xpY2sgKGJhciwgZXZlbnQsICZpbmV2LmllLCBR
bmlsKTsKKwkJeF9zY3JvbGxfYmFyX2hhbmRsZV9jbGljayAoYmFyLCBldmVudCwgJmluZXYs
IFFuaWwpOwogICAgICAgICAgICAgICAgICpmaW5pc2ggPSBYX0VWRU5UX0RST1A7CiAgICAg
ICAgICAgICAgIH0KICNlbHNlIC8qIG5vdCBVU0VfVE9PTEtJVF9TQ1JPTExfQkFSUyAqLwog
ICAgICAgICAgICAgaWYgKGJhcikKLSAgICAgICAgICAgICAgeF9zY3JvbGxfYmFyX2hhbmRs
ZV9jbGljayAoYmFyLCBldmVudCwgJmluZXYuaWUsIFFuaWwpOworCSAgICAgIHhfc2Nyb2xs
X2Jhcl9oYW5kbGVfY2xpY2sgKGJhciwgZXZlbnQsICZpbmV2LCBRbmlsKTsKICNlbmRpZiAv
KiBub3QgVVNFX1RPT0xLSVRfU0NST0xMX0JBUlMgKi8KICAgICAgICAgICB9CiAKQEAgLTIy
MTcxLDggKzIyMTc1LDggQEAgaGFuZGxlX29uZV94ZXZlbnQgKHN0cnVjdCB4X2Rpc3BsYXlf
aW5mbyAqZHB5aW5mbywKIAkJaWYgKCFmLT5vdXRwdXRfZGF0YS54LT5zYXZlZF9tZW51X2V2
ZW50KQogCQkgIGYtPm91dHB1dF9kYXRhLngtPnNhdmVkX21lbnVfZXZlbnQgPSB4bWFsbG9j
IChzaXplb2YgKmV2ZW50KTsKIAkJKmYtPm91dHB1dF9kYXRhLngtPnNhdmVkX21lbnVfZXZl
bnQgPSAqZXZlbnQ7Ci0JCWluZXYuaWUua2luZCA9IE1FTlVfQkFSX0FDVElWQVRFX0VWRU5U
OwotCQlYU0VURlJBTUUgKGluZXYuaWUuZnJhbWVfb3Jfd2luZG93LCBmKTsKKwkJaW5ldi5r
aW5kID0gTUVOVV9CQVJfQUNUSVZBVEVfRVZFTlQ7CisJCVhTRVRGUkFNRSAoaW5ldi5mcmFt
ZV9vcl93aW5kb3csIGYpOwogCQkqZmluaXNoID0gWF9FVkVOVF9EUk9QOwogI2lmZGVmIFVT
RV9NT1RJRgogCSAgICAgIH0KQEAgLTIyMzIzLDggKzIyMzI3LDggQEAgaGFuZGxlX29uZV94
ZXZlbnQgKHN0cnVjdCB4X2Rpc3BsYXlfaW5mbyAqZHB5aW5mbywKIAkJICAgICAgU0VUX0ZS
QU1FX1ZJU0lCTEUgKGYsIDEpOwogCQkgICAgICBTRVRfRlJBTUVfSUNPTklGSUVEIChmLCBm
YWxzZSk7CiAJCSAgICAgIGYtPm91dHB1dF9kYXRhLngtPmhhc19iZWVuX3Zpc2libGUgPSB0
cnVlOwotCQkgICAgICBpbmV2LmllLmtpbmQgPSBERUlDT05JRllfRVZFTlQ7Ci0JCSAgICAg
IFhTRVRGUkFNRSAoaW5ldi5pZS5mcmFtZV9vcl93aW5kb3csIGYpOworCQkgICAgICBpbmV2
LmtpbmQgPSBERUlDT05JRllfRVZFTlQ7CisJCSAgICAgIFhTRVRGUkFNRSAoaW5ldi5mcmFt
ZV9vcl93aW5kb3csIGYpOwogCQkgICAgfQogCQl9CiAKQEAgLTIyODc0LDM2ICsyMjg3OCwz
NiBAQCBoYW5kbGVfb25lX3hldmVudCAoc3RydWN0IHhfZGlzcGxheV9pbmZvICpkcHlpbmZv
LAogCiAJCSAgICAgIGlmIChmYWJzICh0b3RhbF94KSA+IDAgfHwgZmFicyAodG90YWxfeSkg
PiAwKQogCQkJewotCQkJICBpbmV2LmllLmtpbmQgPSAoZmFicyAodG90YWxfeSkgPj0gZmFi
cyAodG90YWxfeCkKLQkJCQkJICA/IFdIRUVMX0VWRU5UIDogSE9SSVpfV0hFRUxfRVZFTlQp
OwotCQkJICBpbmV2LmllLnRpbWVzdGFtcCA9IHhldi0+dGltZTsKLQotCQkJICBYU0VUSU5U
IChpbmV2LmllLngsIGxyaW50IChyZWFsX3gpKTsKLQkJCSAgWFNFVElOVCAoaW5ldi5pZS55
LCBscmludCAocmVhbF95KSk7Ci0JCQkgIFhTRVRGUkFNRSAoaW5ldi5pZS5mcmFtZV9vcl93
aW5kb3csIGYpOwotCi0JCQkgIGluZXYuaWUubW9kaWZpZXJzID0gKHNpZ25iaXQgKGZhYnMg
KHRvdGFsX3kpID49IGZhYnMgKHRvdGFsX3gpCi0JCQkJCQkJPyB0b3RhbF95IDogdG90YWxf
eCkKLQkJCQkJICAgICAgID8gZG93bl9tb2RpZmllciA6IHVwX21vZGlmaWVyKTsKLQkJCSAg
aW5ldi5pZS5tb2RpZmllcnMKKwkJCSAgaW5ldi5raW5kID0gKGZhYnMgKHRvdGFsX3kpID49
IGZhYnMgKHRvdGFsX3gpCisJCQkJICAgICAgID8gV0hFRUxfRVZFTlQgOiBIT1JJWl9XSEVF
TF9FVkVOVCk7CisJCQkgIGluZXYudGltZXN0YW1wID0geGV2LT50aW1lOworCisJCQkgIFhT
RVRJTlQgKGluZXYueCwgbHJpbnQgKHJlYWxfeCkpOworCQkJICBYU0VUSU5UIChpbmV2Lnks
IGxyaW50IChyZWFsX3kpKTsKKwkJCSAgWFNFVEZSQU1FIChpbmV2LmZyYW1lX29yX3dpbmRv
dywgZik7CisKKwkJCSAgaW5ldi5tb2RpZmllcnMgPSAoc2lnbmJpdCAoZmFicyAodG90YWxf
eSkgPj0gZmFicyAodG90YWxfeCkKKwkJCQkJCSAgICAgPyB0b3RhbF95IDogdG90YWxfeCkK
KwkJCQkJICAgID8gZG93bl9tb2RpZmllciA6IHVwX21vZGlmaWVyKTsKKwkJCSAgaW5ldi5t
b2RpZmllcnMKIAkJCSAgICB8PSB4X3hfdG9fZW1hY3NfbW9kaWZpZXJzIChkcHlpbmZvLAog
CQkJCQkJICAgICAgIHhldi0+bW9kcy5lZmZlY3RpdmUpOwotCQkJICBpbmV2LmllLmFyZyA9
IGxpc3QzIChRbmlsLAotCQkJCQkgICAgICAgbWFrZV9mbG9hdCAodG90YWxfeCksCi0JCQkJ
CSAgICAgICBtYWtlX2Zsb2F0ICh0b3RhbF95KSk7CisJCQkgIGluZXYuYXJnID0gbGlzdDMg
KFFuaWwsCisJCQkJCSAgICBtYWtlX2Zsb2F0ICh0b3RhbF94KSwKKwkJCQkJICAgIG1ha2Vf
ZmxvYXQgKHRvdGFsX3kpKTsKIAkJCX0KIAkJICAgICAgZWxzZQogCQkJewotCQkJICBpbmV2
LmllLmtpbmQgPSBUT1VDSF9FTkRfRVZFTlQ7Ci0JCQkgIGluZXYuaWUudGltZXN0YW1wID0g
eGV2LT50aW1lOworCQkJICBpbmV2LmtpbmQgPSBUT1VDSF9FTkRfRVZFTlQ7CisJCQkgIGlu
ZXYudGltZXN0YW1wID0geGV2LT50aW1lOwogCi0JCQkgIFhTRVRJTlQgKGluZXYuaWUueCwg
bHJpbnQgKHJlYWxfeCkpOwotCQkJICBYU0VUSU5UIChpbmV2LmllLnksIGxyaW50IChyZWFs
X3kpKTsKLQkJCSAgWFNFVEZSQU1FIChpbmV2LmllLmZyYW1lX29yX3dpbmRvdywgZik7CisJ
CQkgIFhTRVRJTlQgKGluZXYueCwgbHJpbnQgKHJlYWxfeCkpOworCQkJICBYU0VUSU5UIChp
bmV2LnksIGxyaW50IChyZWFsX3kpKTsKKwkJCSAgWFNFVEZSQU1FIChpbmV2LmZyYW1lX29y
X3dpbmRvdywgZik7CiAJCQl9CiAKIAkJICAgICAgaWYgKHNvdXJjZSAmJiAhTklMUCAoc291
cmNlLT5uYW1lKSkKLQkJCWluZXYuaWUuZGV2aWNlID0gc291cmNlLT5uYW1lOworCQkJaW5l
di5kZXZpY2UgPSBzb3VyY2UtPm5hbWU7CiAKIAkJICAgICAgaWYgKCFvdGhlcl92YWx1YXRv
cnNfZm91bmQpCiAJCQlnb3RvIFhJX09USEVSOwpAQCAtMjMyNDQsMTEgKzIzMjQ4LDExIEBA
IGhhbmRsZV9vbmVfeGV2ZW50IChzdHJ1Y3QgeF9kaXNwbGF5X2luZm8gKmRweWluZm8sCiAJ
CQkgICYmICFFUSAod2luZG93LCBsYXN0X21vdXNlX3dpbmRvdykKIAkJCSAgJiYgIUVRICh3
aW5kb3csIHNlbGVjdGVkX3dpbmRvdykpCiAJCQl7Ci0JCQkgIGluZXYuaWUua2luZCA9IFNF
TEVDVF9XSU5ET1dfRVZFTlQ7Ci0JCQkgIGluZXYuaWUuZnJhbWVfb3Jfd2luZG93ID0gd2lu
ZG93OworCQkJICBpbmV2LmtpbmQgPSBTRUxFQ1RfV0lORE9XX0VWRU5UOworCQkJICBpbmV2
LmZyYW1lX29yX3dpbmRvdyA9IHdpbmRvdzsKIAogCQkJICBpZiAoc291cmNlKQotCQkJICAg
IGluZXYuaWUuZGV2aWNlID0gc291cmNlLT5uYW1lOworCQkJICAgIGluZXYuZGV2aWNlID0g
c291cmNlLT5uYW1lOwogCQkJfQogCiAJCSAgICAgIC8qIFJlbWVtYmVyIHRoZSBsYXN0IHdp
bmRvdyB3aGVyZSB3ZSBzYXcgdGhlIG1vdXNlLiAgKi8KQEAgLTIzNjM2LDExICsyMzY0MCwx
MSBAQCBoYW5kbGVfb25lX3hldmVudCAoc3RydWN0IHhfZGlzcGxheV9pbmZvICpkcHlpbmZv
LAogCiAJCSAgaWYgKCFFUSAoc2VsZWN0ZWRfd2luZG93LCB4dnctPncpICYmICh4ZXYtPmRl
dGFpbCA8IDQpKQogCQkgICAgewotCQkgICAgICBpbmV2LmllLmtpbmQgPSBTRUxFQ1RfV0lO
RE9XX0VWRU5UOwotCQkgICAgICBpbmV2LmllLmZyYW1lX29yX3dpbmRvdyA9IHh2dy0+dzsK
KwkJICAgICAgaW5ldi5raW5kID0gU0VMRUNUX1dJTkRPV19FVkVOVDsKKwkJICAgICAgaW5l
di5mcmFtZV9vcl93aW5kb3cgPSB4dnctPnc7CiAKIAkJICAgICAgaWYgKHNvdXJjZSkKLQkJ
CWluZXYuaWUuZGV2aWNlID0gc291cmNlLT5uYW1lOworCQkJaW5ldi5kZXZpY2UgPSBzb3Vy
Y2UtPm5hbWU7CiAJCSAgICB9CiAKIAkJICAqZmluaXNoID0gWF9FVkVOVF9EUk9QOwpAQCAt
MjM3MzksMjQgKzIzNzQzLDI0IEBAIGhhbmRsZV9vbmVfeGV2ZW50IChzdHJ1Y3QgeF9kaXNw
bGF5X2luZm8gKmRweWluZm8sCiAJCQkJCQkgICAgICZyZWFsX3gsICZyZWFsX3kpOwogCiAJ
CQkgIGlmICh4ZXYtPmRldGFpbCA8PSA1KQotCQkJICAgIGluZXYuaWUua2luZCA9IFdIRUVM
X0VWRU5UOworCQkJICAgIGluZXYua2luZCA9IFdIRUVMX0VWRU5UOwogCQkJICBlbHNlCi0J
CQkgICAgaW5ldi5pZS5raW5kID0gSE9SSVpfV0hFRUxfRVZFTlQ7CisJCQkgICAgaW5ldi5r
aW5kID0gSE9SSVpfV0hFRUxfRVZFTlQ7CiAKIAkJCSAgaWYgKHNvdXJjZSkKLQkJCSAgICBp
bmV2LmllLmRldmljZSA9IHNvdXJjZS0+bmFtZTsKKwkJCSAgICBpbmV2LmRldmljZSA9IHNv
dXJjZS0+bmFtZTsKIAotCQkJICBpbmV2LmllLnRpbWVzdGFtcCA9IHhldi0+dGltZTsKKwkJ
CSAgaW5ldi50aW1lc3RhbXAgPSB4ZXYtPnRpbWU7CiAKLQkJCSAgWFNFVElOVCAoaW5ldi5p
ZS54LCByZWFsX3gpOwotCQkJICBYU0VUSU5UIChpbmV2LmllLnksIHJlYWxfeSk7Ci0JCQkg
IFhTRVRGUkFNRSAoaW5ldi5pZS5mcmFtZV9vcl93aW5kb3csIGYpOworCQkJICBYU0VUSU5U
IChpbmV2LngsIHJlYWxfeCk7CisJCQkgIFhTRVRJTlQgKGluZXYueSwgcmVhbF95KTsKKwkJ
CSAgWFNFVEZSQU1FIChpbmV2LmZyYW1lX29yX3dpbmRvdywgZik7CiAKLQkJCSAgaW5ldi5p
ZS5tb2RpZmllcnMKKwkJCSAgaW5ldi5tb2RpZmllcnMKIAkJCSAgICB8PSB4X3hfdG9fZW1h
Y3NfbW9kaWZpZXJzIChkcHlpbmZvLAogCQkJCQkJICAgICAgIHhldi0+bW9kcy5lZmZlY3Rp
dmUpOwogCi0JCQkgIGluZXYuaWUubW9kaWZpZXJzIHw9IHhldi0+ZGV0YWlsICUgMiA/IGRv
d25fbW9kaWZpZXIgOiB1cF9tb2RpZmllcjsKKwkJCSAgaW5ldi5tb2RpZmllcnMgfD0geGV2
LT5kZXRhaWwgJSAyID8gZG93bl9tb2RpZmllciA6IHVwX21vZGlmaWVyOwogCQkJfQogCiAJ
CSAgICAgICpmaW5pc2ggPSBYX0VWRU5UX0RST1A7CkBAIC0yMzc3NywyNCArMjM3ODEsMjQg
QEAgaGFuZGxlX29uZV94ZXZlbnQgKHN0cnVjdCB4X2Rpc3BsYXlfaW5mbyAqZHB5aW5mbywK
IAkJICAgICAgaWYgKHhldi0+ZXZ0eXBlID09IFhJX0J1dHRvblJlbGVhc2UpCiAJCQl7CiAJ
CQkgIGlmICh4ZXYtPmRldGFpbCA8PSA1KQotCQkJICAgIGluZXYuaWUua2luZCA9IFdIRUVM
X0VWRU5UOworCQkJICAgIGluZXYua2luZCA9IFdIRUVMX0VWRU5UOwogCQkJICBlbHNlCi0J
CQkgICAgaW5ldi5pZS5raW5kID0gSE9SSVpfV0hFRUxfRVZFTlQ7CisJCQkgICAgaW5ldi5r
aW5kID0gSE9SSVpfV0hFRUxfRVZFTlQ7CiAKIAkJCSAgaWYgKHNvdXJjZSkKLQkJCSAgICBp
bmV2LmllLmRldmljZSA9IHNvdXJjZS0+bmFtZTsKKwkJCSAgICBpbmV2LmRldmljZSA9IHNv
dXJjZS0+bmFtZTsKIAotCQkJICBpbmV2LmllLnRpbWVzdGFtcCA9IHhldi0+dGltZTsKKwkJ
CSAgaW5ldi50aW1lc3RhbXAgPSB4ZXYtPnRpbWU7CiAKLQkJCSAgWFNFVElOVCAoaW5ldi5p
ZS54LCBscmludCAoeGV2LT5ldmVudF94KSk7Ci0JCQkgIFhTRVRJTlQgKGluZXYuaWUueSwg
bHJpbnQgKHhldi0+ZXZlbnRfeSkpOwotCQkJICBYU0VURlJBTUUgKGluZXYuaWUuZnJhbWVf
b3Jfd2luZG93LCBmKTsKKwkJCSAgWFNFVElOVCAoaW5ldi54LCBscmludCAoeGV2LT5ldmVu
dF94KSk7CisJCQkgIFhTRVRJTlQgKGluZXYueSwgbHJpbnQgKHhldi0+ZXZlbnRfeSkpOwor
CQkJICBYU0VURlJBTUUgKGluZXYuZnJhbWVfb3Jfd2luZG93LCBmKTsKIAotCQkJICBpbmV2
LmllLm1vZGlmaWVycworCQkJICBpbmV2Lm1vZGlmaWVycwogCQkJICAgIHw9IHhfeF90b19l
bWFjc19tb2RpZmllcnMgKGRweWluZm8sCiAJCQkJCQkgICAgICAgeGV2LT5tb2RzLmVmZmVj
dGl2ZSk7CiAKLQkJCSAgaW5ldi5pZS5tb2RpZmllcnMgfD0geGV2LT5kZXRhaWwgJSAyID8g
ZG93bl9tb2RpZmllciA6IHVwX21vZGlmaWVyOworCQkJICBpbmV2Lm1vZGlmaWVycyB8PSB4
ZXYtPmRldGFpbCAlIDIgPyBkb3duX21vZGlmaWVyIDogdXBfbW9kaWZpZXI7CiAJCQl9CiAK
IAkJICAgICAgZ290byBYSV9PVEhFUjsKQEAgLTIzODYzLDE2ICsyMzg2NywxNiBAQCBoYW5k
bGVfb25lX3hldmVudCAoc3RydWN0IHhfZGlzcGxheV9pbmZvICpkcHlpbmZvLAogCQkJCSYm
IHhldi0+dGltZSA+IGlnbm9yZV9uZXh0X21vdXNlX2NsaWNrX3RpbWVvdXQpCiAJCQkgICAg
ICB7CiAJCQkJaWdub3JlX25leHRfbW91c2VfY2xpY2tfdGltZW91dCA9IDA7Ci0JCQkJeF9j
b25zdHJ1Y3RfbW91c2VfY2xpY2sgKCZpbmV2LmllLCAmYnYsIGYsIHRydWUpOworCQkJCXhf
Y29uc3RydWN0X21vdXNlX2NsaWNrICgmaW5ldiwgJmJ2LCBmLCB0cnVlKTsKIAkJCSAgICAg
IH0KIAkJCSAgICBpZiAoeGV2LT5ldnR5cGUgPT0gWElfQnV0dG9uUmVsZWFzZSkKIAkJCSAg
ICAgIGlnbm9yZV9uZXh0X21vdXNlX2NsaWNrX3RpbWVvdXQgPSAwOwogCQkJICB9CiAJCQll
bHNlCi0JCQkgIHhfY29uc3RydWN0X21vdXNlX2NsaWNrICgmaW5ldi5pZSwgJmJ2LCBmLCB0
cnVlKTsKKwkJCSAgeF9jb25zdHJ1Y3RfbW91c2VfY2xpY2sgKCZpbmV2LCAmYnYsIGYsIHRy
dWUpOwogCiAJCQlpZiAoIU5JTFAgKHRhYl9iYXJfYXJnKSkKLQkJCSAgaW5ldi5pZS5hcmcg
PSB0YWJfYmFyX2FyZzsKKwkJCSAgaW5ldi5hcmcgPSB0YWJfYmFyX2FyZzsKIAkJICAgICAg
fQogCiAJCSAgaWYgKEZSQU1FX1hfRU1CRURERURfUCAoZikKQEAgLTIzODg4LDE0ICsyMzg5
MiwxNCBAQCBoYW5kbGVfb25lX3hldmVudCAoc3RydWN0IHhfZGlzcGxheV9pbmZvICpkcHlp
bmZvLAogCiAjaWZuZGVmIFVTRV9UT09MS0lUX1NDUk9MTF9CQVJTCiAJCSAgaWYgKGJhcikK
LQkJICAgIHhfc2Nyb2xsX2Jhcl9oYW5kbGVfY2xpY2sgKGJhciwgKFhFdmVudCAqKSAmYnYs
ICZpbmV2LmllLAorCQkgICAgeF9zY3JvbGxfYmFyX2hhbmRsZV9jbGljayAoYmFyLCAoWEV2
ZW50ICopICZidiwgJmluZXYsCiAJCQkJCSAgICAgICBzb3VyY2UgPyBzb3VyY2UtPm5hbWUg
OiBRbmlsKTsKICNlbHNlCiAJCSAgLyogTWFrZSB0aGUgIkN0cmwtTW91c2UtMiBzcGxpdHMg
d2luZG93IiB3b3JrIGZvciB0b29sa2l0CiAJCSAgICAgc2Nyb2xsIGJhcnMuICAqLwogCQkg
IGlmIChiYXIgJiYgeGV2LT5tb2RzLmVmZmVjdGl2ZSAmIENvbnRyb2xNYXNrKQogCQkgICAg
ewotCQkgICAgICB4X3Njcm9sbF9iYXJfaGFuZGxlX2NsaWNrIChiYXIsIChYRXZlbnQgKikg
JmJ2LCAmaW5ldi5pZSwKKwkJICAgICAgeF9zY3JvbGxfYmFyX2hhbmRsZV9jbGljayAoYmFy
LCAoWEV2ZW50ICopICZidiwgJmluZXYsCiAJCQkJCQkgc291cmNlID8gc291cmNlLT5uYW1l
IDogUW5pbCk7CiAJCSAgICAgICpmaW5pc2ggPSBYX0VWRU5UX0RST1A7CiAJCSAgICB9CkBA
IC0yMzkyMSw4ICsyMzkyNSw4IEBAIGhhbmRsZV9vbmVfeGV2ZW50IChzdHJ1Y3QgeF9kaXNw
bGF5X2luZm8gKmRweWluZm8sCiAJCSAgZGV2aWNlLT5ncmFiICY9IH4oMSA8PCB4ZXYtPmRl
dGFpbCk7CiAJCX0KIAotCSAgICAgIGlmIChzb3VyY2UgJiYgaW5ldi5pZS5raW5kICE9IE5P
X0VWRU5UKQotCQlpbmV2LmllLmRldmljZSA9IHNvdXJjZS0+bmFtZTsKKwkgICAgICBpZiAo
c291cmNlICYmIGluZXYua2luZCAhPSBOT19FVkVOVCkKKwkJaW5ldi5kZXZpY2UgPSBzb3Vy
Y2UtPm5hbWU7CiAKIAkgICAgICBpZiAoZikKIAkJZi0+bW91c2VfbW92ZWQgPSBmYWxzZTsK
QEAgLTI0MjQzLDggKzI0MjQ3LDggQEAgaGFuZGxlX29uZV94ZXZlbnQgKHN0cnVjdCB4X2Rp
c3BsYXlfaW5mbyAqZHB5aW5mbywKIAkJICAqZmluaXNoID0gWF9FVkVOVF9EUk9QOwogI2Vu
ZGlmIC8qIFVTRV9HVEsgKi8KIAotCQkgIFhTRVRGUkFNRSAoaW5ldi5pZS5mcmFtZV9vcl93
aW5kb3csIGYpOwotCQkgIGluZXYuaWUudGltZXN0YW1wID0geGV2LT50aW1lOworCQkgIFhT
RVRGUkFNRSAoaW5ldi5mcmFtZV9vcl93aW5kb3csIGYpOworCQkgIGluZXYudGltZXN0YW1w
ID0geGV2LT50aW1lOwogCiAjaWZkZWYgSEFWRV9YX0kxOE4KIAkJICBpZiAoRlJBTUVfWElD
IChmKSkKQEAgLTI0MzU2LDcgKzI0MzYwLDcgQEAgaGFuZGxlX29uZV94ZXZlbnQgKHN0cnVj
dCB4X2Rpc3BsYXlfaW5mbyAqZHB5aW5mbywKIAkJCX0KIAkJICAgIH0KIAotCQkgIGluZXYu
aWUubW9kaWZpZXJzID0geF94X3RvX2VtYWNzX21vZGlmaWVycyAoZHB5aW5mbywgc3RhdGUp
OworCQkgIGluZXYubW9kaWZpZXJzID0geF94X3RvX2VtYWNzX21vZGlmaWVycyAoZHB5aW5m
bywgc3RhdGUpOwogCiAjaWZkZWYgWEtfRjEKIAkJICBpZiAoeF9kbmRfaW5fcHJvZ3Jlc3MK
QEAgLTI0Mzk0LDExICsyNDM5OCwxMSBAQCBoYW5kbGVfb25lX3hldmVudCAoc3RydWN0IHhf
ZGlzcGxheV9pbmZvICpkcHlpbmZvLAogCQkgIGlmIChrZXlzeW0gPj0gMzIgJiYga2V5c3lt
IDwgMTI4KQogCQkgICAgLyogQXZvaWQgZXhwbGljaXRseSBkZWNvZGluZyBlYWNoIEFTQ0lJ
IGNoYXJhY3Rlci4gICovCiAJCSAgICB7Ci0JCSAgICAgIGluZXYuaWUua2luZCA9IEFTQ0lJ
X0tFWVNUUk9LRV9FVkVOVDsKLQkJICAgICAgaW5ldi5pZS5jb2RlID0ga2V5c3ltOworCQkg
ICAgICBpbmV2LmtpbmQgPSBBU0NJSV9LRVlTVFJPS0VfRVZFTlQ7CisJCSAgICAgIGluZXYu
Y29kZSA9IGtleXN5bTsKIAogCQkgICAgICBpZiAoc291cmNlKQotCQkJaW5ldi5pZS5kZXZp
Y2UgPSBzb3VyY2UtPm5hbWU7CisJCQlpbmV2LmRldmljZSA9IHNvdXJjZS0+bmFtZTsKIAog
CQkgICAgICBnb3RvIHhpX2RvbmVfa2V5c3ltOwogCQkgICAgfQpAQCAtMjQ0MDcsMTQgKzI0
NDExLDE0IEBAIGhhbmRsZV9vbmVfeGV2ZW50IChzdHJ1Y3QgeF9kaXNwbGF5X2luZm8gKmRw
eWluZm8sCiAJCSAgaWYgKGtleXN5bSA+PSAweDAxMDAwMDAwICYmIGtleXN5bSA8PSAweDAx
MTBGRkZGKQogCQkgICAgewogCQkgICAgICBpZiAoa2V5c3ltIDwgMHgwMTAwMDA4MCkKLQkJ
CWluZXYuaWUua2luZCA9IEFTQ0lJX0tFWVNUUk9LRV9FVkVOVDsKKwkJCWluZXYua2luZCA9
IEFTQ0lJX0tFWVNUUk9LRV9FVkVOVDsKIAkJICAgICAgZWxzZQotCQkJaW5ldi5pZS5raW5k
ID0gTVVMVElCWVRFX0NIQVJfS0VZU1RST0tFX0VWRU5UOworCQkJaW5ldi5raW5kID0gTVVM
VElCWVRFX0NIQVJfS0VZU1RST0tFX0VWRU5UOwogCiAJCSAgICAgIGlmIChzb3VyY2UpCi0J
CQlpbmV2LmllLmRldmljZSA9IHNvdXJjZS0+bmFtZTsKKwkJCWluZXYuZGV2aWNlID0gc291
cmNlLT5uYW1lOwogCi0JCSAgICAgIGluZXYuaWUuY29kZSA9IGtleXN5bSAmIDB4RkZGRkZG
OworCQkgICAgICBpbmV2LmNvZGUgPSBrZXlzeW0gJiAweEZGRkZGRjsKIAkJICAgICAgZ290
byB4aV9kb25lX2tleXN5bTsKIAkJICAgIH0KIApAQCAtMjQ0MjUsMTMgKzI0NDI5LDEzIEBA
IGhhbmRsZV9vbmVfeGV2ZW50IChzdHJ1Y3QgeF9kaXNwbGF5X2luZm8gKmRweWluZm8sCiAJ
CQkJCVFuaWwpLAogCQkJICBGSVhOQVRQIChjKSkpCiAJCSAgICB7Ci0JCSAgICAgIGluZXYu
aWUua2luZCA9IChTSU5HTEVfQllURV9DSEFSX1AgKFhGSVhOQVQgKGMpKQorCQkgICAgICBp
bmV2LmtpbmQgPSAoU0lOR0xFX0JZVEVfQ0hBUl9QIChYRklYTkFUIChjKSkKIAkJCQkgICAg
ICA/IEFTQ0lJX0tFWVNUUk9LRV9FVkVOVAogCQkJCSAgICAgIDogTVVMVElCWVRFX0NIQVJf
S0VZU1RST0tFX0VWRU5UKTsKLQkJICAgICAgaW5ldi5pZS5jb2RlID0gWEZJWE5BVCAoYyk7
CisJCSAgICAgIGluZXYuY29kZSA9IFhGSVhOQVQgKGMpOwogCiAJCSAgICAgIGlmIChzb3Vy
Y2UpCi0JCQlpbmV2LmllLmRldmljZSA9IHNvdXJjZS0+bmFtZTsKKwkJCWluZXYuZGV2aWNl
ID0gc291cmNlLT5uYW1lOwogCiAJCSAgICAgIGdvdG8geGlfZG9uZV9rZXlzeW07CiAJCSAg
ICB9CkBAIC0yNDUzNSwxMSArMjQ1MzksMTEgQEAgaGFuZGxlX29uZV94ZXZlbnQgKHN0cnVj
dCB4X2Rpc3BsYXlfaW5mbyAqZHB5aW5mbywKIAkJICAgICAgU1RPUkVfS0VZU1lNX0ZPUl9E
RUJVRyAoa2V5c3ltKTsKIAkJICAgICAgLyogbWFrZV9saXNweV9ldmVudCB3aWxsIGNvbnZl
cnQgdGhpcyB0byBhIHN5bWJvbGljCiAJCQkga2V5LiAgKi8KLQkJICAgICAgaW5ldi5pZS5r
aW5kID0gTk9OX0FTQ0lJX0tFWVNUUk9LRV9FVkVOVDsKLQkJICAgICAgaW5ldi5pZS5jb2Rl
ID0ga2V5c3ltOworCQkgICAgICBpbmV2LmtpbmQgPSBOT05fQVNDSUlfS0VZU1RST0tFX0VW
RU5UOworCQkgICAgICBpbmV2LmNvZGUgPSBrZXlzeW07CiAKIAkJICAgICAgaWYgKHNvdXJj
ZSkKLQkJCWluZXYuaWUuZGV2aWNlID0gc291cmNlLT5uYW1lOworCQkJaW5ldi5kZXZpY2Ug
PSBzb3VyY2UtPm5hbWU7CiAKIAkJICAgICAgZ290byB4aV9kb25lX2tleXN5bTsKIAkJICAg
IH0KQEAgLTI0NTUxLDE0ICsyNDU1NSwxNCBAQCBoYW5kbGVfb25lX3hldmVudCAoc3RydWN0
IHhfZGlzcGxheV9pbmZvICpkcHlpbmZvLAogCiAJCSAgaWYgKG5ieXRlcykKIAkJICAgIHsK
LQkJICAgICAgaW5ldi5pZS5raW5kID0gTVVMVElCWVRFX0NIQVJfS0VZU1RST0tFX0VWRU5U
OwotCQkgICAgICBpbmV2LmllLmFyZyA9IG1ha2VfdW5pYnl0ZV9zdHJpbmcgKGNvcHlfYnVm
cHRyLCBuYnl0ZXMpOworCQkgICAgICBpbmV2LmtpbmQgPSBNVUxUSUJZVEVfQ0hBUl9LRVlT
VFJPS0VfRVZFTlQ7CisJCSAgICAgIGluZXYuYXJnID0gbWFrZV91bmlieXRlX3N0cmluZyAo
Y29weV9idWZwdHIsIG5ieXRlcyk7CiAKIAkJICAgICAgRnB1dF90ZXh0X3Byb3BlcnR5ICht
YWtlX2ZpeG51bSAoMCksIG1ha2VfZml4bnVtIChuYnl0ZXMpLAotCQkJCQkgIFFjb2Rpbmcs
IGNvZGluZywgaW5ldi5pZS5hcmcpOworCQkJCQkgIFFjb2RpbmcsIGNvZGluZywgaW5ldi5h
cmcpOwogCiAJCSAgICAgIGlmIChzb3VyY2UpCi0JCQlpbmV2LmllLmRldmljZSA9IHNvdXJj
ZS0+bmFtZTsKKwkJCWluZXYuZGV2aWNlID0gc291cmNlLT5uYW1lOwogCQkgICAgfQogCQkg
IGdvdG8geGlfZG9uZV9rZXlzeW07CiAJCX0KQEAgLTI0OTEyLDE1ICsyNDkxNiwxNSBAQCBo
YW5kbGVfb25lX3hldmVudCAoc3RydWN0IHhfZGlzcGxheV9pbmZvICpkcHlpbmZvLAogCQkJ
CQkJICAgeGV2LT5ldmVudF94LAogCQkJCQkJICAgeGV2LT5ldmVudF95LCBmKTsKIAotCQkJ
ICBpbmV2LmllLmtpbmQgPSBUT1VDSFNDUkVFTl9CRUdJTl9FVkVOVDsKLQkJCSAgaW5ldi5p
ZS50aW1lc3RhbXAgPSB4ZXYtPnRpbWU7Ci0JCQkgIFhTRVRGUkFNRSAoaW5ldi5pZS5mcmFt
ZV9vcl93aW5kb3csIGYpOwotCQkJICBYU0VUSU5UIChpbmV2LmllLngsIGxyaW50ICh4ZXYt
PmV2ZW50X3gpKTsKLQkJCSAgWFNFVElOVCAoaW5ldi5pZS55LCBscmludCAoeGV2LT5ldmVu
dF95KSk7Ci0JCQkgIFhTRVRJTlQgKGluZXYuaWUuYXJnLCBsb2NhbF9kZXRhaWwpOworCQkJ
ICBpbmV2LmtpbmQgPSBUT1VDSFNDUkVFTl9CRUdJTl9FVkVOVDsKKwkJCSAgaW5ldi50aW1l
c3RhbXAgPSB4ZXYtPnRpbWU7CisJCQkgIFhTRVRGUkFNRSAoaW5ldi5mcmFtZV9vcl93aW5k
b3csIGYpOworCQkJICBYU0VUSU5UIChpbmV2LngsIGxyaW50ICh4ZXYtPmV2ZW50X3gpKTsK
KwkJCSAgWFNFVElOVCAoaW5ldi55LCBscmludCAoeGV2LT5ldmVudF95KSk7CisJCQkgIFhT
RVRJTlQgKGluZXYuYXJnLCBsb2NhbF9kZXRhaWwpOwogCiAJCQkgIGlmIChzb3VyY2UpCi0J
CQkgICAgaW5ldi5pZS5kZXZpY2UgPSBzb3VyY2UtPm5hbWU7CisJCQkgICAgaW5ldi5kZXZp
Y2UgPSBzb3VyY2UtPm5hbWU7CiAJCQl9CiAKIAkJICAgICAgeF91bmNhdGNoX2Vycm9ycyAo
KTsKQEAgLTI1MDI2LDkgKzI1MDMwLDkgQEAgaGFuZGxlX29uZV94ZXZlbnQgKHN0cnVjdCB4
X2Rpc3BsYXlfaW5mbyAqZHB5aW5mbywKIAogCSAgICAgIGlmIChmICYmIGRldmljZS0+ZGly
ZWN0X3ApCiAJCXsKLQkJICBpbmV2LmllLmtpbmQgPSBUT1VDSFNDUkVFTl9VUERBVEVfRVZF
TlQ7Ci0JCSAgaW5ldi5pZS50aW1lc3RhbXAgPSB4ZXYtPnRpbWU7Ci0JCSAgWFNFVEZSQU1F
IChpbmV2LmllLmZyYW1lX29yX3dpbmRvdywgZik7CisJCSAgaW5ldi5raW5kID0gVE9VQ0hT
Q1JFRU5fVVBEQVRFX0VWRU5UOworCQkgIGluZXYudGltZXN0YW1wID0geGV2LT50aW1lOwor
CQkgIFhTRVRGUkFNRSAoaW5ldi5mcmFtZV9vcl93aW5kb3csIGYpOwogCiAJCSAgZm9yICh0
b3VjaHBvaW50ID0gZGV2aWNlLT50b3VjaHBvaW50czsKIAkJICAgICAgIHRvdWNocG9pbnQ7
IHRvdWNocG9pbnQgPSB0b3VjaHBvaW50LT5uZXh0KQpAQCAtMjUwNDAsOSArMjUwNDQsOSBA
QCBoYW5kbGVfb25lX3hldmVudCAoc3RydWN0IHhfZGlzcGxheV9pbmZvICpkcHlpbmZvLAog
CQkgICAgfQogCiAJCSAgaWYgKHNvdXJjZSkKLQkJICAgIGluZXYuaWUuZGV2aWNlID0gc291
cmNlLT5uYW1lOworCQkgICAgaW5ldi5kZXZpY2UgPSBzb3VyY2UtPm5hbWU7CiAKLQkJICBp
bmV2LmllLmFyZyA9IGFyZzsKKwkJICBpbmV2LmFyZyA9IGFyZzsKIAkJfQogCiAJICAgICAg
Z290byBYSV9PVEhFUjsKQEAgLTI1MDc3LDE3ICsyNTA4MSwxNyBAQCBoYW5kbGVfb25lX3hl
dmVudCAoc3RydWN0IHhfZGlzcGxheV9pbmZvICpkcHlpbmZvLAogCiAJCSAgaWYgKGYgJiYg
ZGV2aWNlLT5kaXJlY3RfcCkKIAkJICAgIHsKLQkJICAgICAgaW5ldi5pZS5raW5kID0gVE9V
Q0hTQ1JFRU5fRU5EX0VWRU5UOwotCQkgICAgICBpbmV2LmllLnRpbWVzdGFtcCA9IHhldi0+
dGltZTsKLQkJICAgICAgaW5ldi5pZS5tb2RpZmllcnMgPSBzdGF0ZSAhPSAyOworCQkgICAg
ICBpbmV2LmtpbmQgPSBUT1VDSFNDUkVFTl9FTkRfRVZFTlQ7CisJCSAgICAgIGluZXYudGlt
ZXN0YW1wID0geGV2LT50aW1lOworCQkgICAgICBpbmV2Lm1vZGlmaWVycyA9IHN0YXRlICE9
IDI7CiAKLQkJICAgICAgWFNFVEZSQU1FIChpbmV2LmllLmZyYW1lX29yX3dpbmRvdywgZik7
Ci0JCSAgICAgIFhTRVRJTlQgKGluZXYuaWUueCwgbHJpbnQgKHhldi0+ZXZlbnRfeCkpOwot
CQkgICAgICBYU0VUSU5UIChpbmV2LmllLnksIGxyaW50ICh4ZXYtPmV2ZW50X3kpKTsKLQkJ
ICAgICAgWFNFVElOVCAoaW5ldi5pZS5hcmcsIGxvY2FsX2RldGFpbCk7CisJCSAgICAgIFhT
RVRGUkFNRSAoaW5ldi5mcmFtZV9vcl93aW5kb3csIGYpOworCQkgICAgICBYU0VUSU5UIChp
bmV2LngsIGxyaW50ICh4ZXYtPmV2ZW50X3gpKTsKKwkJICAgICAgWFNFVElOVCAoaW5ldi55
LCBscmludCAoeGV2LT5ldmVudF95KSk7CisJCSAgICAgIFhTRVRJTlQgKGluZXYuYXJnLCBs
b2NhbF9kZXRhaWwpOwogCiAJCSAgICAgIGlmIChzb3VyY2UpCi0JCQlpbmV2LmllLmRldmlj
ZSA9IHNvdXJjZS0+bmFtZTsKKwkJCWluZXYuZGV2aWNlID0gc291cmNlLT5uYW1lOwogCQkg
ICAgfQogCQl9CiAKQEAgLTI1MTU2LDIwICsyNTE2MCwyMCBAQCBoYW5kbGVfb25lX3hldmVu
dCAoc3RydWN0IHhfZGlzcGxheV9pbmZvICpkcHlpbmZvLAogCQkgIGlmIChwZXYtPmV2ZW50
ID09IEZSQU1FX1hfV0lORE9XIChhbnkpKQogCQkgICAgeGlfY29tcHV0ZV9yb290X3dpbmRv
d19vZmZzZXRfcGluY2ggKGFueSwgcGV2KTsKIAotCQkgIGluZXYuaWUua2luZCA9IFBJTkNI
X0VWRU5UOwotCQkgIGluZXYuaWUubW9kaWZpZXJzCisJCSAgaW5ldi5raW5kID0gUElOQ0hf
RVZFTlQ7CisJCSAgaW5ldi5tb2RpZmllcnMKIAkJICAgID0geF94X3RvX2VtYWNzX21vZGlm
aWVycyAoZHB5aW5mbywgcGV2LT5tb2RzLmVmZmVjdGl2ZSk7CiAKLQkJICBYU0VUSU5UIChp
bmV2LmllLngsIGxyaW50IChwZXYtPmV2ZW50X3gpKTsKLQkJICBYU0VUSU5UIChpbmV2Lmll
LnksIGxyaW50IChwZXYtPmV2ZW50X3kpKTsKLQkJICBYU0VURlJBTUUgKGluZXYuaWUuZnJh
bWVfb3Jfd2luZG93LCBhbnkpOwotCQkgIGluZXYuaWUuYXJnID0gbGlzdDQgKG1ha2VfZmxv
YXQgKHBldi0+ZGVsdGFfeCksCi0JCQkJICAgICAgIG1ha2VfZmxvYXQgKHBldi0+ZGVsdGFf
eSksCi0JCQkJICAgICAgIG1ha2VfZmxvYXQgKHBldi0+c2NhbGUpLAotCQkJCSAgICAgICBt
YWtlX2Zsb2F0IChwZXYtPmRlbHRhX2FuZ2xlKSk7CisJCSAgWFNFVElOVCAoaW5ldi54LCBs
cmludCAocGV2LT5ldmVudF94KSk7CisJCSAgWFNFVElOVCAoaW5ldi55LCBscmludCAocGV2
LT5ldmVudF95KSk7CisJCSAgWFNFVEZSQU1FIChpbmV2LmZyYW1lX29yX3dpbmRvdywgYW55
KTsKKwkJICBpbmV2LmFyZyA9IGxpc3Q0IChtYWtlX2Zsb2F0IChwZXYtPmRlbHRhX3gpLAor
CQkJCSAgICBtYWtlX2Zsb2F0IChwZXYtPmRlbHRhX3kpLAorCQkJCSAgICBtYWtlX2Zsb2F0
IChwZXYtPnNjYWxlKSwKKwkJCQkgICAgbWFrZV9mbG9hdCAocGV2LT5kZWx0YV9hbmdsZSkp
OwogCiAJCSAgaWYgKHNvdXJjZSkKLQkJICAgIGluZXYuaWUuZGV2aWNlID0gc291cmNlLT5u
YW1lOworCQkgICAgaW5ldi5kZXZpY2UgPSBzb3VyY2UtPm5hbWU7CiAJCX0KIAogCSAgICAg
IC8qIE9uY2UgYWdhaW4gR1RLIHNlZW1zIHRvIGNyYXNoIHdoZW4gY29uZnJvbnRlZCBieQpA
QCAtMjU1MjQsMjYgKzI1NTI4LDI2IEBAIGhhbmRsZV9vbmVfeGV2ZW50IChzdHJ1Y3QgeF9k
aXNwbGF5X2luZm8gKmRweWluZm8sCiAJICAgICAgIGFscmVhZHkgYW4gdW5kZWxpdmVyZWQg
ZXZlbnQgb24gdGhlIHF1ZXVlLiAgKi8KIAkgICAgZ290byBPVEhFUjsKIAotCSAgaW5ldi5p
ZS5raW5kID0gTU9OSVRPUlNfQ0hBTkdFRF9FVkVOVDsKLQkgIGluZXYuaWUudGltZXN0YW1w
ID0gdGltZXN0YW1wOwotCSAgWFNFVFRFUk1JTkFMIChpbmV2LmllLmFyZywgZHB5aW5mby0+
dGVybWluYWwpOworCSAgaW5ldi5raW5kID0gTU9OSVRPUlNfQ0hBTkdFRF9FVkVOVDsKKwkg
IGluZXYudGltZXN0YW1wID0gdGltZXN0YW1wOworCSAgWFNFVFRFUk1JTkFMIChpbmV2LmFy
ZywgZHB5aW5mby0+dGVybWluYWwpOwogCiAJICAvKiBBbHNvIGRvbid0IGRvIGFueXRoaW5n
IGlmIHRoZSBtb25pdG9yIGNvbmZpZ3VyYXRpb24KIAkgICAgIGRpZG4ndCByZWFsbHkgY2hh
bmdlLiAgKi8KIAogCSAgY3VycmVudF9tb25pdG9ycwotCSAgICA9IEZ4X2Rpc3BsYXlfbW9u
aXRvcl9hdHRyaWJ1dGVzX2xpc3QgKGluZXYuaWUuYXJnKTsKKwkgICAgPSBGeF9kaXNwbGF5
X21vbml0b3JfYXR0cmlidXRlc19saXN0IChpbmV2LmFyZyk7CiAKIAkgIGlmICghTklMUCAo
RmVxdWFsIChjdXJyZW50X21vbml0b3JzLAogCQkJICAgICBkcHlpbmZvLT5sYXN0X21vbml0
b3JfYXR0cmlidXRlc19saXN0KSkpCi0JICAgIGluZXYuaWUua2luZCA9IE5PX0VWRU5UOwor
CSAgICBpbmV2LmtpbmQgPSBOT19FVkVOVDsKIAogCSAgZHB5aW5mby0+bGFzdF9tb25pdG9y
X2F0dHJpYnV0ZXNfbGlzdCA9IGN1cnJlbnRfbW9uaXRvcnM7CiAKIAkgIGlmICh4X2RuZF9p
bl9wcm9ncmVzcyAmJiB4X2RuZF91cGRhdGVfdG9vbHRpcCkKIAkgICAgeF9kbmRfbW9uaXRv
cnMgPSBjdXJyZW50X21vbml0b3JzOwogCi0JICBpZiAoaW5ldi5pZS5raW5kICE9IE5PX0VW
RU5UKQorCSAgaWYgKGluZXYua2luZCAhPSBOT19FVkVOVCkKIAkgICAgeF9kbmRfdXBkYXRl
X3Rvb2x0aXBfbm93ICgpOwogCX0KICNlbmRpZgpAQCAtMjU1OTEsOSArMjU1OTUsOSBAQCBo
YW5kbGVfb25lX3hldmVudCAoc3RydWN0IHhfZGlzcGxheV9pbmZvICpkcHlpbmZvLAogICAg
IH0KIAogIGRvbmU6Ci0gIGlmIChpbmV2LmllLmtpbmQgIT0gTk9fRVZFTlQpCisgIGlmIChp
bmV2LmtpbmQgIT0gTk9fRVZFTlQpCiAgICAgewotICAgICAga2JkX2J1ZmZlcl9zdG9yZV9i
dWZmZXJlZF9ldmVudCAoJmluZXYsIGhvbGRfcXVpdCk7CisgICAgICBrYmRfYnVmZmVyX3N0
b3JlX2V2ZW50X2hvbGQgKCZpbmV2LCBob2xkX3F1aXQpOwogICAgICAgY291bnQrKzsKICAg
ICB9CiAKLS0gCjIuNDUuMgoK

--------------6CEHqd6aPgp0PJXDuFj20sDf--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 2 Mar 2025 11:29:36 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Mar 02 06:29:36 2025
Received: from localhost ([127.0.0.1]:54652 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tohVn-00042K-Ax
	for submit <at> debbugs.gnu.org; Sun, 02 Mar 2025 06:29:36 -0500
Received: from sonic308-56.consmr.mail.ne1.yahoo.com ([66.163.187.31]:46504)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <luangruo@HIDDEN>)
 id 1tohVk-00041S-1z
 for 76559 <at> debbugs.gnu.org; Sun, 02 Mar 2025 06:29:32 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740914966; bh=dsr+l92BUKPLBqT9owJbfN+cCdZm+hrvCvb2obqELWs=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To;
 b=NcoDIkgaLYrq+7/xZIkURpd6uEK0T6GFWo058qXVscxqQbkpBePtyRVsPy8QS3O7fr3z62520DNm1cccEgWfIeK/zNkz9C7gfvqZufkS+PyfR7jfoeKALPPsaHZwnrAD2TjwzdtarRy/+mbna7BAeiYsUr5jhQX1ZPQUJtGWMBcKM87bSHUOSTzFOQ8MeTVoyes6jrRESDeIY7zNm8CYcD79gMQXfB7NEeJm2vd5DSqb7pv8G0vdC05Oi57ITq/8c8P8fMYYEggtSYK1tOc/Szc/CdcsW87qqsuSncqOuaUAI87NHBpuuhfdBlJH1MzzS2aufR+72/22RVp3VW5Kbg==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740914966; bh=b7CHbsm8d78/1yw1XkuYz2DI+ZpUEWZ3AkR/XN9dmDF=;
 h=X-Sonic-MF:From:To:Subject:Date:From:Subject;
 b=sRZ/3bpGpYQ9iG3DvJ7Wk+uPFJNaNM+Oz3UEvzV1Yy/zGQ0jQVU2o2tswECCEPVq29yyOY6oHwd+bvyEUeOoPsHvVxiKHPTnR9fYViJPKacbtw5ejceIdpeAxG2bIwNrEAdpjoeBnoyDe0eFUNxJSpAj9HHudXZCfh3bYASNsbLxPLGg8bxsEOw5ic1XDLWvNRMg66IFGrMVtUqAw94vn8eUZXdJ6VrdeAI9oWexN6IHgxPlifm1sJDgtoU4obNZZZySajnY0cUl6bPHmaxRT5J9HwOh8lvwLskBLG5Xw0zzCv3pynKMXfNd03GKdSfPnmENkc4XiszI4OHUJR2sbA==
X-YMail-OSG: S2UdaTIVM1njeDj_hRYutQ3eAO70CswMwrkOJ5p_zjDq5r.S0YewCnmMo7EU.6.
 m__aG.qrCzru1LYqdey7wxHz5WzhwD5pigu1VMcd48eWnlJUgZpoigOeshWO.WAVfTC9zTVOVhEv
 EX8XkDTXSA9nn1MIkOVxwLdOn2pRGP2r2cf_iU2WUpbRcg.b2JP1L6n0zsdoJqiKB0d7IlNW_Oae
 FXelUQ8xx0Hf93t2ja.HYv0gm3SXZbbmtrQkI0mwNaz42.3wAtQKJP.nrJ8YtwzuMM6847WBlBPC
 Pf1JGSA8pjIAN37I9dNStZEM.XNcoZb2GYm_pNKmC0WT2MFOLyH5oZvA4VnqjT6bynNBaYwCRiVJ
 4VF.9U2_Ik5ar8.HJI6Es1Q1IOcD.BDOAYXyldotMC6fsS2NewHDaTgcpdiaLavBLPRNz2hZ9SHS
 r.zfTzNst2KxJah7Xyj9FkmOnc95X2tRr8Ri3bI_vNo8k0LD.caYAndJDz9LWjCbM4stdfq.FttP
 mh3kfb4PCbcGGFcgYyrEn1NCmp1lP7RTBLi93qc8bRBpf2sPxwoqSQSCWpgJlDZTuKWRG3_QOBRk
 wBYc5G7cck3PMeMfJ1QkdemZduARkL5j0d.ezwwKgV1beN9EkavzKwzUVOkg_d2hSXyLVEP8uqF1
 dVm5dCsRcjCUSpJjumH6Aev8u2jo9cyLjsEz.144WuYXzz.3X9MnlsYuhVXj8JsTDqE5xq2eAQiW
 4aPHq3EO2TMNJPQrfuu5pZpZtC3EPO5dQaCLZgkoxBVTZIGJl.fyJA8SQodlFqKpKqFFUf_NqXxq
 DgtTkTFlT1u_rdxGoDs83iaNZtYwM4ErqWiRqbBeMkH_z63o8oZlz8Kgp82dkoywNMtSg_X5jajw
 Nng4AgAJ5bq7xowGxKWxzJg78eIpDiW7CWtlqyolqA8O.D22EPEA_pNh.Zbd37Kii_TQFs3N3uJb
 5Xxb1nPOzGVOr1R6cn.jD5cEBftZadFhAZ4_quNJPGdbL2Wr1Gl7qOPYt5wdo66IkR4zMnwNAfHL
 j01l7DcczCsCsJZpIAOcZtSnC6de32jtvlaCAJS1iOQBChKfukrTWDSRqtArXn86ZS8eyoUtsntR
 zZjgLZRb3FRd5rIWrnOzInMLMz7ZDj1xEfKTT8WXWP9JenZwA5InnWbbldhppYe.X.7SJcGL_GDP
 tR.BSkzUALfM4HvXSTmZHK8hGf4FYOb1L.BAXXmDQRWSk6INFVjytCOJMjy12GYRqSWOKxHeom45
 q3rbFnZAVVAmG1AAKMdILKU1c.LPqmv9GLZtD3v0.xMX83L6LWw3tmZX86mhrpSUF8XXNaTTL2uM
 cojK8Abyem6064mb6Yg1QX1x3D1k7yOrinhph84ov2bK.QMKNxUi9yEfSfA46HN_Vqp0iKj1H_xE
 CEaSYaGACYqb2BicgeFQXIthU2Z70y8bGfRxciDkXSz.pEnJuG2MKecegivEEH2T4rupwuyb4.ny
 0hn3slpXisAjlfeQKRj4nulZdXDGdEHd0tQbca_SV6J5JcNysM2KvbW3jUY.DgPHvay8lVq0ZOgN
 0oscurcjEz.6h5kTdjl2tLh8wdfHGw1CWOnzJ_H1RB6q2Gw_YUlse_4j0JQN507widpO4Hywqxlt
 7iHCSyLeTgO6a8ioQCg0Srxywk9WtE5vmV2AnQwmebkWAQptqThEcDLP2Gl717adAFko.Pf09Ihy
 W4NYtMAVMWQ5lfGDoZ3QzyIP6ouNCSA6QH1zIu6CgAUxmkVfvzPrmkauR.nCExiWPXxH0GYYyqvA
 zm.uNl_sDBKv5riFPa_gNMV2Jkna5KuAyY.zEOPy.FTo4jARTYh75U_d3zMnWo0HM8nggSYiKdyt
 q2ERVsOaIoq7ZjDe4e52.zROo0aU1l2fQNuqSnICv9_baPjsLJFffOf4l.iL9RWcw1.T_7_OJTjz
 HQcvRCHb8PJJD3nYphzZuufg3PcTLM1QJByheJ3KKrLCndC43tzzD76ffyvn3ATgB59emtUztU7l
 eRjYWePfaefKHYunCsnPoZLw_aNV5ap1iAxkWK10X.UIWOrarz9Ix3UOGaklaCsC_RwUyZpDNpBd
 1zO4Ltxz26Wyu00fS0_gxFPm_woiOO1Ij8EIq5PARyacFAJ4g0bM0MfSAon_kxLJntTULIaiSKYF
 eOS6sB3iqt8NekXLWr6JuwJu1Nsvdy8Yawbn55TffTKNTD_e2.cKoXIm6Y7DTFlZea6lObmKzeJp
 fIVusdIwveT9K3KsKDYJbfTeyXaMAYGVLH5cSTQIgjnQB13D162GF1eqXe6J918LR
X-Sonic-MF: <luangruo@HIDDEN>
X-Sonic-ID: a542e604-0504-4801-8e7b-ba0453489a7a
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic308.consmr.mail.ne1.yahoo.com with HTTP; Sun, 2 Mar 2025 11:29:26 +0000
Received: by hermes--production-sg3-9fc94b8df-swq4n (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID 55de4a96cc6a46d8629bebcc35a18ff9; 
 Sun, 02 Mar 2025 11:29:20 +0000 (UTC)
From: Po Lu <luangruo@HIDDEN>
To: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
In-Reply-To: <87senv3epk.fsf@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN>
 <s1ra5a70vwv.fsf@HIDDEN>
 <2b5ac4cc-ea40-416a-9e12-9cedd8172a59@HIDDEN>
 <87ikoslvd4.fsf@HIDDEN>
 <fb2eeca2-6477-4bdb-b439-008f0b065441@HIDDEN>
 <87y0xoj9vz.fsf@HIDDEN>
 <90aca5d0-438f-4598-be04-85ffe3f24239@HIDDEN>
 <87tt8bkg8i.fsf@HIDDEN> <87senv3epk.fsf@HIDDEN>
Date: Sun, 02 Mar 2025 19:29:13 +0800
Message-ID: <87cyezk6wm.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Mailer: WebService/1.1.23369
 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo
Content-Length: 824
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Paul Eggert <eggert@HIDDEN>, iura.mail@HIDDEN,
 Stefan Kangas <stefankangas@HIDDEN>, michael.albinus@HIDDEN,
 Eli Zaretskii <eliz@HIDDEN>, 76559 <at> debbugs.gnu.org, marian.iurie@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Pip Cet <pipcet@HIDDEN> writes:

> Are you going to report the GCC bug?  If not, I'd like to do so, with
> your permission.

By all means (and please don't even consider requesting my permission to
do so--Free Software means it is every person's birthright to take the
initiative into his own hands).

> Working around the problem may be more difficult, and it might be
> easiest to disable the SRA pass for bad GCC versions, but maybe
> something will occur to the GCC folks.

I had a very conservative workaround that disqualifies all accesses
where more than two incompatible aggregate types (all aggregates are
impacted, not just unions & records) are concerned are rejected, but
maybe it's too timid for their tastes or I omitted to post it in this
thread.  In the meantime, let's apply `-fno-tree-sra' on GCC.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 2 Mar 2025 10:33:25 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Mar 02 05:33:24 2025
Received: from localhost ([127.0.0.1]:54060 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1togdQ-00076X-Iv
	for submit <at> debbugs.gnu.org; Sun, 02 Mar 2025 05:33:24 -0500
Received: from mail-40133.protonmail.ch ([185.70.40.133]:25855)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <pipcet@HIDDEN>)
 id 1togdN-00075a-QU
 for 76559 <at> debbugs.gnu.org; Sun, 02 Mar 2025 05:33:23 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com;
 s=protonmail3; t=1740911595; x=1741170795;
 bh=PI7BH6M5QBcGGMiK5Xqa+oNhhUbmUFbeVqbhgPK4IPo=;
 h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References:
 Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID:
 Message-ID:BIMI-Selector:List-Unsubscribe:List-Unsubscribe-Post;
 b=ItuTKvxsazjW57OIMs6RMb5sDtSvdyu5rr/8wJz8zq3BX8ery7GJS3sMCzNoc37Yu
 WKLti9EFFSYdquAKbB2m8NW0fMAtgMLPAbweWhWflpqU81i0+X4SjQZGBAaWxs1rss
 B4yieeg510i3aJHzUqj/A20aAwDcp3gQe9PxxejRXjd+Ku8eqKnh/ssKedmVjFHIZ0
 AWXhBOV2o4uFfbJPbqELbLdJNF8KFItwCCiss49oiyq6ISP0GLvR7EOm68kKwSwCwy
 Aar+nQQ5UBECUXizUdEmHvSRf3PU5rVWeTLbJMxq0+eLiVR+qHObqg7UZJtKgeRodh
 bwFiMhErjl2iQ==
Date: Sun, 02 Mar 2025 10:33:09 +0000
To: Po Lu <luangruo@HIDDEN>
From: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#76559: 31.0.50;
 [-O3 + PGTK] Crash when 'copying as kill'/'killing word'
Message-ID: <87senv3epk.fsf@HIDDEN>
In-Reply-To: <87tt8bkg8i.fsf@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN>
 <s1ra5a70vwv.fsf@HIDDEN>
 <2b5ac4cc-ea40-416a-9e12-9cedd8172a59@HIDDEN> <87ikoslvd4.fsf@HIDDEN>
 <fb2eeca2-6477-4bdb-b439-008f0b065441@HIDDEN> <87y0xoj9vz.fsf@HIDDEN>
 <90aca5d0-438f-4598-be04-85ffe3f24239@HIDDEN> <87tt8bkg8i.fsf@HIDDEN>
Feedback-ID: 112775352:user:proton
X-Pm-Message-ID: 0356256b009a90acc85b154117df40d1b80470b8
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Paul Eggert <eggert@HIDDEN>, iura.mail@HIDDEN,
 Stefan Kangas <stefankangas@HIDDEN>, michael.albinus@HIDDEN,
 Eli Zaretskii <eliz@HIDDEN>, 76559 <at> debbugs.gnu.org, marian.iurie@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

R"Po Lu" <luangruo@HIDDEN> writes:

> Paul Eggert <eggert@HIDDEN> writes:
>
>> On 2025-03-01 21:10, Po Lu wrote:
>>>> I don't see why that assumption would cause GCC to generate the wrong
>>>> code here, as no single thread of execution would have two such
>>>> accesses.
>>> It doesn't take control flow into account, but rather _every statement
>>> operand_ in the current procedure that addresses an aggregate declared
>>> in the same procedure.
>>
>> In that case it's a GCC bug, right? Since GCC promises that one can do
>> union punning.
>
> Yes, that's what I was getting at.  I even proposed a fix.  But the GCC
> list has lately been infused with a series of threads proposing new
> obstacles to engaging with its developers (search "Sourceware
> infrastructure plans"), and I'm not interested...

Are you going to report the GCC bug?  If not, I'd like to do so, with
your permission.

As far as the problem itself is concerned, it's a minor oversight in the
SRA code which fails to account for holes when choosing a representative
union access out of a list of all places which access a given structure,
so the fix seems simple.

Working around the problem may be more difficult, and it might be
easiest to disable the SRA pass for bad GCC versions, but maybe
something will occur to the GCC folks.

Pip





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 2 Mar 2025 09:36:43 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Mar 02 04:36:43 2025
Received: from localhost ([127.0.0.1]:53414 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tofkZ-00073J-I9
	for submit <at> debbugs.gnu.org; Sun, 02 Mar 2025 04:36:43 -0500
Received: from woodpecker.gentoo.org
 ([2001:470:ea4a:1:5054:ff:fec7:86e4]:58301 helo=smtp.gentoo.org)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <sam@HIDDEN>) id 1tofkW-00072W-CG
 for 76559 <at> debbugs.gnu.org; Sun, 02 Mar 2025 04:36:41 -0500
Received: from mop.sam.mop (unknown [82.8.138.118])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange ECDHE (prime256v1) server-signature RSA-PSS (4096 bits)
 server-digest SHA256) (No client certificate requested)
 (Authenticated sender: sam)
 by smtp.gentoo.org (Postfix) with ESMTPSA id 8327134301D
 for <76559 <at> debbugs.gnu.org>; Sun, 02 Mar 2025 09:36:32 +0000 (UTC)
From: Sam James <sam@HIDDEN>
To: 76559 <at> debbugs.gnu.org
Subject: Reporting GCC bugs
Organization: Gentoo
User-Agent: mu4e 1.12.7; emacs 31.0.50
Date: Sun, 02 Mar 2025 09:36:29 +0000
Message-ID: <878qpnbwpu.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 76559
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Thank you for investigating.

GCC bugs are reported at https://gcc.gnu.org/bugzilla/, not via a
mailing list, and GCC patches go to the gcc-patches ML.

The gcc ML is for general discussion of development and so on (I also
don't think what you describe is a fair characterisation of the
discussions, but it's irrelevant is my point -- you needn't engage with
that mailing list at all).




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 2 Mar 2025 08:08:02 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Mar 02 03:08:02 2025
Received: from localhost ([127.0.0.1]:52475 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1toeMk-0006tM-8W
	for submit <at> debbugs.gnu.org; Sun, 02 Mar 2025 03:08:02 -0500
Received: from sonic308-56.consmr.mail.ne1.yahoo.com ([66.163.187.31]:34703)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <luangruo@HIDDEN>)
 id 1toeMg-0006sW-Oe
 for 76559 <at> debbugs.gnu.org; Sun, 02 Mar 2025 03:07:59 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740902872; bh=hpFk1B6NQoURHkO7+uX6M78AVhRchevxYdw6ndzCymU=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To;
 b=fSagjB1mzhXgFT46aL4wglS8+zyjIHKjCBsFOVMOGO0FGhcMpsyAW52qtHeN6nIckYk94OnuSHcsYNjSXr3Xd0MY0wBTuYMgPZ9t5dvUbBE9bc+61+EPRHRze61pxUg92KmOx6OrLGDXWBmGzGBf79RPnuuMCF4q6gBPGw75dz6dlfzHCqDkQpuMKq7C11ZJgblCQBiJf/ZoeJhYJ2gGWfiDCHmraFM9MLEutV14RSsyE0CsBLvGfL5B09h1zTZSIkiMB89ZCH/pY0/mDgH3DyoS2Ck/g2SBCXz+rcp/Wy0p0xHD7uvOISa5o735vkxlmCYLhyZ9A/yH0h686T2XuA==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740902872; bh=M4DfRjz21ZEkMBoLD2SKohSxV88LhkABVO0oyUxrbPz=;
 h=X-Sonic-MF:From:To:Subject:Date:From:Subject;
 b=p2b69AfMQv2xB02BSkPdKs8vObnxeSI7tH6p6TmsJHl8mgovdutpD+cA5huhv0T77X9THzpGKfyOweZJbR0xeADdFpcMoKcpyZiy2hCV5qBRaBDduAG9RVk2p+H6IBoLGVATJT+CEk3oPet3jO6poNzvJ+FJkYU8r3yjUiOB2fLmfovAx+8LLaOeUhNg+93+XjeLyM7QqoHD9ZHsAGvCPSc6oPhp1pLwJkL/EndAQFIeHiMakzVJXfpysC/PjklhsiJDccvwayFVOwUXaCtSBX3WcXR9olsNhmQ+OYYzi6nxGClfcQ4evk22DRKABOwK5sk4QOOWKhmohu+LS+TF+w==
X-YMail-OSG: dzNnPxoVM1nRSIftV25ItL1aGFR1zR.Qd0QAqxhJGcq8i4G2oh12GqwbLKsrEtL
 1OAsPpxGKnmKMp4dHtZE.qNxJZdYRHCB7p6boVp0Ge_Gz7wVSbEjJpraEVYuzY8qS8SH3pcKBbvs
 wMEWFgEN3WZxYCS9cSe4Y8YArCHnjJOMCs6hAYz9aTihk42lHh3XPeRQ5ghsX5muWR0anr8IF8pO
 pZXwQzBhyEeu4ZOPbD1XlDe_nxiR_m34MhhqqppwaIo7YTRMtUjbSWXfwlSGNDpffItr1LkcnK08
 Rvmx1gDIUTbnXzC8sHerHPUNGyeT8iuITrHwwbDQ3XBEe39q.zgFXo6tHM7DvaB_VoJuHVJ1xfVF
 lBXPdxPngUZwAdfZcrjWK.jTpjnUJrjzw9t86cA2cq7OIF7vMD1GIqapuSdQ9IApgOh_HRY8Mxk6
 DHqfNoIpc1GJ1IPXaR3Bpk9zqLx3yPTuwksx8g3UIzPIrzNX9eXQy.LqMB8L0OkSXBzgaTNncMvX
 7ZHbUVhbeQDVT8q1iw8dTzLaCSxL1KeXmEtw9FQy6_Z.y5Pb3KVH3XTdUw_ZfKhQD7WRIn_i7iL9
 UZnK7mNA2CtiBAAMLkOnxh2M1f_jbZ8PAxvbFCmljyDUAGUaXgH52oOynzo2bD7FmbJNoxM8kuMt
 PpJClycXkUH542ynH6D8cvHuiv9KhCQJ57nATVDFx3m5j4JudZfxLYKx9HBsnho5eMWFMq8hljUP
 fEFQphZ5Aqu02q0MQL2Rs4b1omQmHzNoF.9THWlDXCvH9b9PvcdjVik3gkr8vM_pvqJ.x3TDJ.c9
 Y95tiZIQZ04.Clp8Pi6rBSbEIlXtj1vYgxy1g6jMnvZw2Nm8lb.VusYj.Ffka9vn6jx3JTiD6Zgk
 2kpcA0ifJFNjGP00HrgzwLR6DN5YH.5JbwAvnO_m7v6MU8C4EbEyXFdlV7DjPlckuRYJAU1dQQT9
 AP4bij78PqEvcRtA9K4I_qUO0l_cyPRn0ouYsSgYgtloajyKW0.mhvYM6VMOfO_ySBh9cu_9.rgE
 EoxO9HasStnFjG1JLrc8ddQk2pDFOuq5a_apX3HDjuPh9M9Y8nkpfp7t6h6G_H7I_0MiKvQRmvWT
 l7FWLzGukQ4zikxcGuRDYQNQsSZBjuHmar5.DoKEvjD7WSWlTF1iMVjyckDniHDCbipcCsrI0Qa1
 AQNRwfcv9aZSt9N73zLG.jQX8gi5PkajtZHRUrYExU_7HI9m0Eq5pFNFSQTf3YdprZEFeuk3SVO5
 De1s5LzDj9mlEC.AbaDoNPqXmGxK6MqaL80KeQ1TT1gsJQm_bohnppVYEURQIvuY0HU35eS8Rbdg
 hhj9sSFVCfI_hnMaAU05iy1CVlLpFI9rBGYyBYOidmo4Lb5zawjCHfp1z.uglLTrmA4hbSqSh1R6
 _jZ89VdQutp5dnpSkVEglLzXaVpA7u5V.XzzIEgUqWPKyF4dEQ2gdGxv.jJMNF8LIkrNj42x5KHm
 _hRLE7Uc8hV2nYmbl_BufHUIDLFlMdYDcnZg9nEcYZiXvYr0ysWtHngbrzXrxFv.eZKN32nW5oMj
 boOH4U0_UZsPrXZK10WcUKHX73d7BYMyXuYL9hlWJ1VDqkD8cAWbxwg_sdkXvMTg.AaTgZi9szTL
 nf4_83cWV1_Nsiscjb.jIZruMpYR7nNSwoF27Zpew3OYluc1M7ZM4Uv9tbjctWF.EG4S0g6h3gUs
 EUse9xXxuYndt0Ply3_WrCy5cTVHEZwdL4N_rrP6XGNkLcpv3p9xZu.DhPhTHuFk_01_VrUvOiwz
 YSKXX14tYHPWZrwVT1fKY54ewFtgoFt8oD.eM6AuPkQaiMrVkOmFS8MMiUiH9AwnijMg68YbswFZ
 EB2IZE5jAaSTopmaQpS2E2SOyG00zqFOvM.S6KLbyo0g3MMBNMOUuaFV6nPUjzm67v.UCD2rd6V.
 13ZqHDyeOv8zAap1FNolkAtS.YiuQneAIurAGbRFvkx_AuIRw1rR1lDs3rTXVfS2iaBR_2jnb6Zu
 hLxGDWB8Gl8EGi0qjA5kA6Xd_lDwdCg5KCdlFxY.EGslWg5wv55RSwunZpsyNQZ.D..U6uRp2tcg
 Ul5ajVrQx59ayo5m7uRDD6tdgJFazhGYcTG_TAuUiOxpj0OjqVbYXtJ09SyJsITVjVYqOQgGUG2o
 TYTX2AbBAqiKRHy12AmWSn1EG9uxD9SsVJbFFHXN9R4cMI0MnrjATTQdxb9CqQVDtACEKu4mav7Q
 jtvUI0myAnKBaS55783HGUN3KfzYCQPPuEP31T2lBPRNCoOQ1mvyHomTdr2r0Ur0ebA--
X-Sonic-MF: <luangruo@HIDDEN>
X-Sonic-ID: 1f165414-ac68-4ec4-983d-b53ee0946fc0
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic308.consmr.mail.ne1.yahoo.com with HTTP; Sun, 2 Mar 2025 08:07:52 +0000
Received: by hermes--production-sg3-9fc94b8df-swq4n (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID de259abdaadae64dbf9863b3bd41d3f1; 
 Sun, 02 Mar 2025 08:07:47 +0000 (UTC)
From: Po Lu <luangruo@HIDDEN>
To: Paul Eggert <eggert@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
In-Reply-To: <90aca5d0-438f-4598-be04-85ffe3f24239@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN>
 <86tt8fu6dh.fsf@HIDDEN> <87o6yn1st8.fsf@HIDDEN>
 <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN>
 <s1ra5a70vwv.fsf@HIDDEN>
 <2b5ac4cc-ea40-416a-9e12-9cedd8172a59@HIDDEN>
 <87ikoslvd4.fsf@HIDDEN>
 <fb2eeca2-6477-4bdb-b439-008f0b065441@HIDDEN>
 <87y0xoj9vz.fsf@HIDDEN>
 <90aca5d0-438f-4598-be04-85ffe3f24239@HIDDEN>
Date: Sun, 02 Mar 2025 16:07:41 +0800
Message-ID: <87tt8bkg8i.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Mailer: WebService/1.1.23369
 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo
Content-Length: 753
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Pip Cet <pipcet@HIDDEN>, iura.mail@HIDDEN,
 Stefan Kangas <stefankangas@HIDDEN>, michael.albinus@HIDDEN,
 Eli Zaretskii <eliz@HIDDEN>, 76559 <at> debbugs.gnu.org, marian.iurie@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Paul Eggert <eggert@HIDDEN> writes:

> On 2025-03-01 21:10, Po Lu wrote:
>>> I don't see why that assumption would cause GCC to generate the wrong
>>> code here, as no single thread of execution would have two such
>>> accesses.
>> It doesn't take control flow into account, but rather _every statement
>> operand_ in the current procedure that addresses an aggregate declared
>> in the same procedure.
>
> In that case it's a GCC bug, right? Since GCC promises that one can do
> union punning.

Yes, that's what I was getting at.  I even proposed a fix.  But the GCC
list has lately been infused with a series of threads proposing new
obstacles to engaging with its developers (search "Sourceware
infrastructure plans"), and I'm not interested...




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 2 Mar 2025 06:54:55 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Mar 02 01:54:54 2025
Received: from localhost ([127.0.0.1]:51714 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1todDx-0005Hu-Lo
	for submit <at> debbugs.gnu.org; Sun, 02 Mar 2025 01:54:54 -0500
Received: from mail.cs.ucla.edu ([131.179.128.66]:38680)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eggert@HIDDEN>)
 id 1todDw-0005HH-0o
 for 76559 <at> debbugs.gnu.org; Sun, 02 Mar 2025 01:54:52 -0500
Received: from localhost (localhost [127.0.0.1])
 by mail.cs.ucla.edu (Postfix) with ESMTP id 65F543C01EBB1;
 Sat,  1 Mar 2025 22:54:46 -0800 (PST)
Received: from mail.cs.ucla.edu ([127.0.0.1])
 by localhost (mail.cs.ucla.edu [127.0.0.1]) (amavis, port 10032) with ESMTP
 id U9q_uJocaPvz; Sat,  1 Mar 2025 22:54:46 -0800 (PST)
Received: from localhost (localhost [127.0.0.1])
 by mail.cs.ucla.edu (Postfix) with ESMTP id 2662D3C01EBB3;
 Sat,  1 Mar 2025 22:54:46 -0800 (PST)
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.cs.ucla.edu 2662D3C01EBB3
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs.ucla.edu;
 s=9D0B346E-2AEB-11ED-9476-E14B719DCE6C; t=1740898486;
 bh=yK9C9YEV+Rh1R/6AUpNlIdoBN8N3xLPYFsCNymb8Gh8=;
 h=Message-ID:Date:MIME-Version:To:From;
 b=LQCODCqcF98r4HLg4tFoI8ZCluxuSkL9lXxK7h0SpqI7wXo3U31pB5u/nhPiRnTqB
 8dR8FQ7On7itPKXNTJn/1hv44G3ygV6QtzrN+xwWZLi5eWgJHBc7ZYZzMxOV7bOU0I
 UOZJ5H7t/6DdQ8Z/O3pOF4qxZdJ685c210krGxw4q1t3nXSVJ3szLHorDDMxepjxZN
 El5/jMkqGpoAPvQeQQZzpPjgi8noN/JRfdd9Ya4hnDXaSxjiwMq9jG9v7caHSaPbqo
 BYkGTFgvMGUPhqVEKEcNEq/ZhmW2QbwtFGOTNrSgi5rdh2DudqCJSkSSsPtCDb845m
 GfhbCt8tg38Pw==
X-Virus-Scanned: amavis at mail.cs.ucla.edu
Received: from mail.cs.ucla.edu ([127.0.0.1])
 by localhost (mail.cs.ucla.edu [127.0.0.1]) (amavis, port 10026) with ESMTP
 id fJDFfZHsvnot; Sat,  1 Mar 2025 22:54:46 -0800 (PST)
Received: from [192.168.254.12] (unknown [47.147.225.25])
 by mail.cs.ucla.edu (Postfix) with ESMTPSA id DFEB93C01EBB1;
 Sat,  1 Mar 2025 22:54:45 -0800 (PST)
Message-ID: <90aca5d0-438f-4598-be04-85ffe3f24239@HIDDEN>
Date: Sat, 1 Mar 2025 22:54:45 -0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
To: Po Lu <luangruo@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN> <86tt8fu6dh.fsf@HIDDEN>
 <87o6yn1st8.fsf@HIDDEN>
 <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN>
 <s1ra5a70vwv.fsf@HIDDEN>
 <2b5ac4cc-ea40-416a-9e12-9cedd8172a59@HIDDEN> <87ikoslvd4.fsf@HIDDEN>
 <fb2eeca2-6477-4bdb-b439-008f0b065441@HIDDEN> <87y0xoj9vz.fsf@HIDDEN>
Content-Language: en-US
From: Paul Eggert <eggert@HIDDEN>
Organization: UCLA Computer Science Department
In-Reply-To: <87y0xoj9vz.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Pip Cet <pipcet@HIDDEN>, iura.mail@HIDDEN,
 Stefan Kangas <stefankangas@HIDDEN>, michael.albinus@HIDDEN,
 Eli Zaretskii <eliz@HIDDEN>, 76559 <at> debbugs.gnu.org, marian.iurie@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

On 2025-03-01 21:10, Po Lu wrote:
>> I don't see why that assumption would cause GCC to generate the wrong
>> code here, as no single thread of execution would have two such
>> accesses.
> It doesn't take control flow into account, but rather _every statement
> operand_ in the current procedure that addresses an aggregate declared
> in the same procedure.

In that case it's a GCC bug, right? Since GCC promises that one can do 
union punning.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 2 Mar 2025 05:10:29 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Mar 02 00:10:28 2025
Received: from localhost ([127.0.0.1]:50460 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tobat-00030x-QP
	for submit <at> debbugs.gnu.org; Sun, 02 Mar 2025 00:10:28 -0500
Received: from sonic308-10.consmr.mail.ne1.yahoo.com ([66.163.187.33]:33023)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <luangruo@HIDDEN>)
 id 1tobaq-000308-F7
 for 76559 <at> debbugs.gnu.org; Sun, 02 Mar 2025 00:10:25 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740892218; bh=B5TAz10CRh+TI9r7Qzp4TlOiolZpAD6Kx9OvL5mnsLg=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To;
 b=t+RuggruSVOcXmbR+fOXTVhYyNEyktPN8uV37uMiVhVf74UcNrEUCZyNKVef4cRuEgqvMBqePMslAcfT0/pfg7zB4Lkw8TsYXPQLgPsJk50aZc7KYwlZbE8R6hUhTLORSo/ueIr5uVVsfR/zIxjxrqIDRmge6nW0Fy6SxuXsiathU1sMaZt6mgF9dOOB64RqWFrgFRoJ+NuwBdwBek0Yc4GADSa/9iRz0ujM/+qCszQKJ68XWnMc61zwwJxrWGiGlkR0P6z+AmHc8VO76mPeItQykBgYEUqVfDwZN6igM6eviCpNb/LwblwUc2DchAFq+OaRcK8Vya5ZdZDx+rWkGw==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740892218; bh=fJGoHc9Ec7TQV2RLTGnCGwAZ9UGJaOfHXudjVZq+I99=;
 h=X-Sonic-MF:From:To:Subject:Date:From:Subject;
 b=P2YmhhMu7PknNq4vYY9LRoMV1E6Ro6eNtuoPREyzWVfXJ7ch5AEF1kh99NOwx0n80EkLyjTgeWsERwBeU2IGjsn8gBXUdR/lkXZiB604P/So37MnDt7hk269ndiFjovVHl4IxQlGxDTr6Uam90Q7zA5oHlsfx0BLYVMxNL9eq61U3G+ASqHOzhZqaUv3C3sb1kEvye8DdaewRtMeAq2tEeghperdrRIUZAaU+iyXMNzjNawipuoyLuvGKPSFc8Cl+ELNfTYQsgaaKVzHJxG42AZl98zaW18Nhc9ZbOcIdTakI5LjdolencWDe/DhITyjWOx2n8JcMKZoHKJOVi89mg==
X-YMail-OSG: 6M1BqYAVM1lZJ7NxzovWVTDNUdajUCuCJ2NWgmhGV.nM_qNaLbyVssrqxL782r0
 VLVYcnLSJIQom0Yfy.tvlYL65Orhy4n_8.tQHg667Rf_j4s0k8_8eC9Ht4Y_dsih848yf.gQEHmh
 7UJNNAfx2.8h16Q9hpqMnev0OYhCSDXJLkQRfqcjhw0EEw5pNFUQv4GnBKrCz33LQqXtkMNDW9vA
 k1UiHi.ZIuwyfuKdOumjhQV4Ukpk.FRtLJY7f_hzxTMlpar4LJ0Tof_9dnKkveQWO6oYSDAEgMjQ
 v4.H_bkAPwTdePgIE6.7wbG9nLCJe0bXnbeJiEv5qp_8EOeG4QFsxYP_jjESPGtEHOmRNscEbeLU
 i9Dn1zHC8TgUnQHvpyPavNjDdR3l7yXQc8lC7nLJ07CY10LX3bsg7nPYp7r0dLW30XVsz86pEYCH
 HMvoNZclSFIp8CxCpE..qtxEndHORZN1WSx6MPI_bA2WdAfuCddmHhBVcPjZLpJDfycWYjFFbldC
 HLD9nCzq7INgHxkTpQsRusbrX9mApf0QWhaLR.lVQzjGpF6OfgIsKP2Oni608NW_zrthKJUjmhBt
 2wqIo2aHv6DRmKGCo8KYT4y9nYh3ap6jg.4RBRIYr7nY2flX51wTwTkfBF47MqzmIuG2oqHrVqh1
 ThdTF5EhT_pbrnJSpZW4AumIZM.5yeB57E0vNpgHSPSrOELqCCIy2FmSB.FCSmy6YaOLFFw5blwm
 D_dpwblDndNQXKxPR70nvp.c_HBETmy5CKsd4eHi07UJ.PvQEma_y4Z81pa5RIZiQSmXMY7F87.C
 fOZYNegi4dLzGLA7snJxbYtvxbwYC_3l9_k18Je.PygjpQPzkT5BLZWSKeAT0QYgySDnp._wE4Ag
 q9p6rwpq9eYwEaZ1U6pgO0lRhcSmwVGqGbiBxSTyGxAofmIHxD0YEJROcoU6X7hGlZVJM1Ol8N8E
 94AjVzOyPmcarUgHHWSZjejZZsoZ.j2L_IzZGFMiVggrRGV4ZCzbYe6q99gLvM.hJFb0Wtk0N18F
 Aj3JmbcOQFudSLwqni9rnKUV.umKM9CCUEN0_xJD9mT1jG3jwL_kmQsuUOxp5eErkhw_HIf3607l
 oDfBVOy4dYMWbMvyNej.3m6JUrfhu_wCOc3N2gCLTyb_dam2.xmYliLBAid5sN_gpjn_QTdrKYbI
 QYxo.b1KFMtJG2JMVmy2Ds5QJlLqx8Yh_Avd16Fb7wanrE_iI7MtuzPfnx9h9h0GWfxttuWiDB9K
 f4srEoHDPIhqLADfjaDdWRA4rMc9HaUUYw1IBfHPJd1MOpF.TiejLL0FuCPiW6z9Wu_fdhl_uJve
 9R8jiUVKrCzZe8BexuxMKQoqmGG_qVX0vOTQSawHrsLW7oLvWuzuC_pbkOTMcBdYwgBx5UuiL4Ay
 Kq3aa4J5zTTMUzJcQ3O2Q2AQTKK_IqzALOyZoE1iPs87XB3OQ5PHDTUucvfl6YjskdXs4W01c1Cc
 KmrA6JF571y0fZpAP9Bs8QhRTuln73TA44WNoUzXHO4jCRrEH.lAST5D9xD82GYc6DmZE8mEjlEO
 9_SXt68xkwhNyZx5G8VeYOu9YQWRXvcdIMstWYCFyU5tENjP4zNuiCuZ8ZsB_u1DoUCretn5sA0W
 4IdvZ8RQa0vHRDbLTITDONqpWo2iwllLS1Fi3D2x0tyVSvnUd9IRQg6qrhx0FnJxdYqY_v7kiN1A
 N279oY2kfEkYgviO6ABVwMDk.VcUnImBGlf2HxAwW51bcnTIHgxV0ssD2iOMYHNJOrNMMUSUUiN8
 dhJGhLJ6IV_8wnAiDQJ63.mwtC9Blx6SYMz_jBKa_k184gDuI6OVf3nIJvh9G9cg.HBWt.rL5AO7
 8PlePe_jHa5AzwaVeBmMpB79B0UEYmn74K1xfHV5wE34x9DxeTDZ8j6n8caHEEha56oZhNdk8nEM
 tZWz5YYbFIrd2sN36TvekLpCAs1U.CKI.yDcELa.xDrI6gY33HN9Vw.6THhHmeaUv.km1JSpH8XH
 gWnvz.vASddMJXBAPVQ4PDL9DgFKg41Wh.YobyborjqmxGArRzIOvYURqG9f9ph6Os30Cdny_Y6Q
 .j2fR6LAYySZHvCr_47OU3tB7gdDweA_hbMbkrreHfw_H1.5uEiYu6w5J4ZY8GXzOaSK7fZxMnHg
 3mRJ4gdY5ZWGEyG71gn6UEmeF8gVV3NBfYVe.R.rxmbiZ3JBxph6rHJQU2y9By5VOQpwdtF_QFCD
 sWIYhLuhqTdWsn_TzKj_.Hxt4txPU7BBTgvpqjBUw8rsexMc5gBGmtRrrU3sb3A--
X-Sonic-MF: <luangruo@HIDDEN>
X-Sonic-ID: 88fa1252-03a5-4ed7-9781-d51b30c4eaae
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic308.consmr.mail.ne1.yahoo.com with HTTP; Sun, 2 Mar 2025 05:10:18 +0000
Received: by hermes--production-sg3-9fc94b8df-h7dct (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID deaa7f4b2ae0f435ee9a02c23dc48648; 
 Sun, 02 Mar 2025 05:10:14 +0000 (UTC)
From: Po Lu <luangruo@HIDDEN>
To: Paul Eggert <eggert@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
In-Reply-To: <fb2eeca2-6477-4bdb-b439-008f0b065441@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN>
 <86tt8fu6dh.fsf@HIDDEN> <87o6yn1st8.fsf@HIDDEN>
 <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN>
 <s1ra5a70vwv.fsf@HIDDEN>
 <2b5ac4cc-ea40-416a-9e12-9cedd8172a59@HIDDEN>
 <87ikoslvd4.fsf@HIDDEN>
 <fb2eeca2-6477-4bdb-b439-008f0b065441@HIDDEN>
Date: Sun, 02 Mar 2025 13:10:08 +0800
Message-ID: <87y0xoj9vz.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Mailer: WebService/1.1.23369
 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo
Content-Length: 2132
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Pip Cet <pipcet@HIDDEN>, iura.mail@HIDDEN,
 Stefan Kangas <stefankangas@HIDDEN>, michael.albinus@HIDDEN,
 Eli Zaretskii <eliz@HIDDEN>, 76559 <at> debbugs.gnu.org, marian.iurie@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Paul Eggert <eggert@HIDDEN> writes:

> On 2025-03-01 05:43, Po Lu wrote:
>> I surmise that it doesn't fix the underlying compiler issue if you add
>> __attribute__ ((force_inline)) to kbd_buffer_store_buffered_event, as it
>> is a product of an assumption by GCC's SRA pass that no two accesses of
>> a single local aggregate declaration with the same offset and size but
>> of different types alias.
>
> I don't see why that assumption would cause GCC to generate the wrong
> code here, as no single thread of execution would have two such
> accesses.

It doesn't take control flow into account, but rather _every statement
operand_ in the current procedure that addresses an aggregate declared
in the same procedure.  Just read perform_intra_sra in gcc/tree-sra.cc.
find_var_candidates, scan_function, analyze_all_variable_accesses, and
sra_modify_function_body, don't walk any manner of control dependence
graph, but all declarations and basic blocks defined in a function.

sort_and_splice_var_accesses excludes all but one access to a single
aggregate with the same offset and size.  Since the existence of a
record reference thereby excludes the union, totally_scalarizable_type_p
concludes that the access admits of "total secularization", and
analyze_all_variable_accesses proceeds to scalarize this record
reference.  Subsequently, sra_modify_assign observes that the access of
union access on the RHS of this statement (where the `ev' declaration in
evq_flush is substituted for `*event' by inlining):

      *kbd_store_ptr = *event;

has the same size and offset as the access to `event->ie' (`ev.ie'),
deletes the statement, and substitutes a series of loads produced by the
scalarization of the access to `ev.ie', without any regard to the type
of the RHS.  If it is arranged that `union buffered_input_event' be
declared before `struct input_event', the former will receive a lower
UID and a greater precedence with analyze_all_variable_accesses, and
exclude the loads of `struct input_event' from consideration, which
eliminates the problem in this specific instance because unions are not
totally scalarizable.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 2 Mar 2025 02:14:58 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Mar 01 21:14:58 2025
Received: from localhost ([127.0.0.1]:48174 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1toYr3-0005rG-My
	for submit <at> debbugs.gnu.org; Sat, 01 Mar 2025 21:14:58 -0500
Received: from mail.cs.ucla.edu ([131.179.128.66]:40538)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eggert@HIDDEN>)
 id 1toYqy-0005qA-MP
 for 76559 <at> debbugs.gnu.org; Sat, 01 Mar 2025 21:14:55 -0500
Received: from localhost (localhost [127.0.0.1])
 by mail.cs.ucla.edu (Postfix) with ESMTP id 78A643C01EBB0;
 Sat,  1 Mar 2025 18:14:46 -0800 (PST)
Received: from mail.cs.ucla.edu ([127.0.0.1])
 by localhost (mail.cs.ucla.edu [127.0.0.1]) (amavis, port 10032) with ESMTP
 id U52jynoS_xRd; Sat,  1 Mar 2025 18:14:46 -0800 (PST)
Received: from localhost (localhost [127.0.0.1])
 by mail.cs.ucla.edu (Postfix) with ESMTP id 300063C01EBB1;
 Sat,  1 Mar 2025 18:14:46 -0800 (PST)
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.cs.ucla.edu 300063C01EBB1
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs.ucla.edu;
 s=9D0B346E-2AEB-11ED-9476-E14B719DCE6C; t=1740881686;
 bh=EPGZ5GbAoai5ip6EIqLiAPm05vDpAviJPgTHqE91O5s=;
 h=Message-ID:Date:MIME-Version:To:From;
 b=Fr/SE0CAvYkQKwTXiCtFO+5xHNdpR/UTY3DLw5nJNl+ot5oaUWAe4KzJPeqKjBChL
 bdxjwZUvt81Wdc/eQcXlUIguDdwklMf2/tWaRdpXdg7b2xFRwHuudtwYpscjtUnTgx
 /vZOI6abOpAZoeb0sxyThPOaJLU24b8M634b4DrhA7+X9d6+9m0tqBZezCrJ2bXExD
 Nz3Ahjei+uAGvGjUvoclMC542hk67z714Gwp4iE4s7UJdl7uDJlfIC0SbvGkuoM/s2
 tgiVpzlQNTEMyy0iZD13JWK9hrix7tqG9K3HQzpT+7u2XQmQ4LK1leLMQV22XvP1wY
 WSNgpoZxCF1Qw==
X-Virus-Scanned: amavis at mail.cs.ucla.edu
Received: from mail.cs.ucla.edu ([127.0.0.1])
 by localhost (mail.cs.ucla.edu [127.0.0.1]) (amavis, port 10026) with ESMTP
 id biGyCw7_CH00; Sat,  1 Mar 2025 18:14:46 -0800 (PST)
Received: from [192.168.254.12] (unknown [47.147.225.25])
 by mail.cs.ucla.edu (Postfix) with ESMTPSA id F2CEF3C01EBB0;
 Sat,  1 Mar 2025 18:14:45 -0800 (PST)
Message-ID: <fb2eeca2-6477-4bdb-b439-008f0b065441@HIDDEN>
Date: Sat, 1 Mar 2025 18:14:45 -0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
To: Po Lu <luangruo@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN> <86tt8fu6dh.fsf@HIDDEN>
 <87o6yn1st8.fsf@HIDDEN>
 <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN>
 <s1ra5a70vwv.fsf@HIDDEN>
 <2b5ac4cc-ea40-416a-9e12-9cedd8172a59@HIDDEN> <87ikoslvd4.fsf@HIDDEN>
Content-Language: en-US
From: Paul Eggert <eggert@HIDDEN>
Organization: UCLA Computer Science Department
In-Reply-To: <87ikoslvd4.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Pip Cet <pipcet@HIDDEN>, iura.mail@HIDDEN,
 Stefan Kangas <stefankangas@HIDDEN>, michael.albinus@HIDDEN,
 Eli Zaretskii <eliz@HIDDEN>, 76559 <at> debbugs.gnu.org, marian.iurie@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

On 2025-03-01 05:43, Po Lu wrote:
> I surmise that it doesn't fix the underlying compiler issue if you add
> __attribute__ ((force_inline)) to kbd_buffer_store_buffered_event, as it
> is a product of an assumption by GCC's SRA pass that no two accesses of
> a single local aggregate declaration with the same offset and size but
> of different types alias.

I don't see why that assumption would cause GCC to generate the wrong 
code here, as no single thread of execution would have two such accesses.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 1 Mar 2025 13:52:35 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Mar 01 08:52:35 2025
Received: from localhost ([127.0.0.1]:35824 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1toNGc-0001vZ-KH
	for submit <at> debbugs.gnu.org; Sat, 01 Mar 2025 08:52:35 -0500
Received: from sonic303-21.consmr.mail.ne1.yahoo.com ([66.163.188.147]:36692)
 by debbugs.gnu.org with esmtps
 (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2)
 (envelope-from <luangruo@HIDDEN>) id 1toNGZ-0001ul-0q
 for 76559 <at> debbugs.gnu.org; Sat, 01 Mar 2025 08:52:33 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740837144; bh=IT650VoQBD++AmYUjqvcqO8cHi4j3RIG3hNtT+jxG4M=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To;
 b=cizf8cm1jyPPh1kDWTnskI9mlgY/NvXA320vNJ/nlmvb1w5Nef01+b2g3gZafMoBoLjLL0E5zdFbxh6grlMUbHLFZz6IYacLYMaKdvJooCHoFF3Cu8oks+jHPpTnE5Yqwd8U5we5MsWJ4kRSjIKZsObNEcknwO3gNVWQcpiEveQPpbDmMane+TatBOe++sda6E52lzQsLiYZI3JX7ITALLfwJyUToCAnbD+prlZ9s8WpDPWP0KOd3E9aM0aWB6/npfehEhkv70OL3H3JebgV+oCg3o8EsWA/Sq3MhMrtYD8SNJ55lVrFHhcBKu5cUUFZxzJc+d4NUt6yUFm/sbvKLw==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740837144; bh=7fL+Wn+2/xXc8fyhToDdTAPZTu073Hd5FK+wCo9L0hU=;
 h=X-Sonic-MF:From:To:Subject:Date:From:Subject;
 b=sIxtlYCZVnvLgNZCDY+KlvlyD5Nu+DjdFW9wpdHeWy2c/oCZ9y5VFP6qAQtOeRP4Q4EdtDkkH1CFPKHvXq6dNWE6tPj8A0J4xspsofY+As0K1zZnHKWiVygvwIv52IFcUJ01keA+cfBrIgWa83/1x16aVMKknFyWzUlA5L2B6mWYNLx1EdFZFUdYxGW0JVspak0jzKhThBauJJdG4dVQhmM/xPtPFaCIAzKY9uYWNK1nFYAeHQUOL26gx0XUrg9fJuAFC5PbHkqLznpqTsQfZoMFnkU7k02fRavQXC7mlSlpajsXfUy0SAvu9okCN1OIgOdlW1yubuKXo0C8bqCTtg==
X-YMail-OSG: voJVbcgVM1mmh.OPS2GiEeSN7kpePoMCdZY2edtANMNch2PMTQjm4ZWERndsruR
 94EEvpU7k5ZOSbKrYZ_z0L.5LFcOxdgRqMGHIC1E.H7yuDnTnxlleY01aCczFWdsFUN7BgbD3jnT
 5Bj1FrZSeytplbpE2OqKBxPwOFjZEt7FDO9v.EfAqtzbtfq1LqWd2yU.EXloVAcEdhmxxdPZZ_K4
 blU7GVMeO_PxGNy2QYXieiGidtuwWkW0orlpaRZXMeR2mvYZu6Tg5HU2TRw4i2wMD6eozZxB9pTj
 CxvIGJwL9qWHGbjuZg851ehKA.rXDb7HNvLOhgYSEgLJomwu7nI60ddnEzFP9Dv4FiWp2xtpetOQ
 NPS2FPtnW8RC0X88XUBwRJdUEwWiGRICGO3IPvQ1LxGeSUmAUX2ni85FKY9fqbgiISoes5EZk8Pa
 aAJMQaobXS9XoluIsjXN3J90aODRhRRPpNCR7DJt1RZwvVip9DOO_Iw6eGgGbQmZi4wGggjzs8Zn
 SPvOStAL8tX1AzxC6M_UEKc1_VUn33Z5RnvY86JCPoRWOLL7iVp1.vgOooIEyD2bhH.19ODOLOAo
 eOPmsmUDGNGYZBf2SLFyn0UyhRJbB5xTSYtCw7_4N1UwROm5WQ7LHquJAMo8RkNpgw00VU_0yP1j
 Tz14Pop9HHdbUd4A4rQ1CyMfbMBKeuuwL8hCapTnSCDm18Pxxg5n.CLAnppGLVh73KvhlFxUJXcf
 D1i4Kjv2jwNz9j4Mill_4YgMnN1B0bqw.QMYB_wYYR8aN_ZDO8qtdYWiEdt27u3aow4CBcShPJub
 ZtUdL7ACCIH9k8YVD3enuVoKoY0sykk115RX_TM0XflW7g_Wo3z8rox4pcsx1me_b4IrBUlgx7FY
 fxHu5ZT2.kTUEOYdDPsyebNwJKLzb8JWe6H0QLZDCKZfIPw8z96F9sI9xGp3XczzmW6hbGgSyHHv
 HSkTy0F6THrzINtjKg4dIUGKsIgkhe7MiY_JtAo.JQalGJXUKkn_cNkO67kvUpKGldw.zYaj7v_d
 LBFWGwxHdXhFxkPpZ5Y6t99tzhOivD8WoGF5PvaSQ8uT4pibWf65PHBgOL_2cqW53sviX070kjgB
 uFsLId3yLhnStGY6mTzzeKnWsCmRk1Uq7RhOunaWhyCH0YwqBzjkCD8gnkRZvg8v4G8Dn_5E80Dy
 w4VYhWWIkMVicirDioIQMFA4ZjVtznQU3ieJhq3RKJ3oTh6DmMmbxOamMMi2nykBlridu0tot8F5
 94TMttChfnTUUrw81l6Ej00B75FeVlon1nxbXPuqkwwDRmVBYJaCOTtiydVT.XU2W5eOa1IQGT15
 b.aSkQq7VOR5nC.QQVuWHqnYB5e65TWLHLfaSKTid2Nk6nO3sCHPz.MVQ_81SpvsEIotz1EyiDqu
 hgqus5FKnOUjPOxjNlnAw.LsA0dhRmsb0MsmIgoeS6xLnSEnQPdJFMvcJcauKMrnEHfpuITiUlvJ
 adbgJ9uMytsBLUXjJWT9IZIjUihq7imsSnIOvK6c7IlrduwewpCjFXF4cUDJYJRDP0rgfszwEDX4
 jjma0W92MoeG2mhgma.DFkYK79P6eG0xAb4zq.n2DhjOl2pJDc772D.wYIhTy2yZSQ_VUzpSH_H3
 hZVlfu.48xDsoool.oKhAa.5j8x3MhLFa23VLd_0URpyCrihuQNk_xgvOf2wF8wOlJG05fkJ8lUo
 Bk19Ppz6QO7cjih_hoYyOa5x070s1rSw80aCamE_mr_0DZsZKVdFa99phfNyT3SELLf.Mm1cUjgB
 OADrGicuX5mciCmxxNXg_3Pl0YOUyvnMidSExplHo_Q68xqZprz2S2E90ri1rGnBpuaQ1TqlKO0J
 L7H6ojMuCBENrUNhmvP39Wu0psJIOH81acQO9VZduTBDvP9Q6ylpCtsoPRftj68vhNfhbW3tLqsI
 XDwG4fbQ3XBx1gninbMKFcOTB_etcHXGjb0NjxXXkJ4bQIFy1nxsRvykhHbsdWjcsn9CS32J9l7M
 kQqnWuLd6HUvSKrBZ1KOzN2teI6_bK2DEpLH.B1OqHhunBwSEm3zMQrPSAFwki6rISHK15CtoD_H
 jmyOzk7nhUER4b.ezsfXhqiV5PxMObyMKZL.xwbJsVRRNvdGpR0t4VB0zLoPCt8wm.nFlxLDEDwd
 vT9doBAw2bJkmvyVrT1J7qJI81GUwwd7eb8RdVtrX2gISziF9Ok1Y6_zY5_X0wApQP0niOYmDyd0
 Xqm10QAarJviFRTDt2Sp9vsNjsyNfS_pLmGw8OZMcdYQ93Q8Q3NAwl4DaznoJeE8l
X-Sonic-MF: <luangruo@HIDDEN>
X-Sonic-ID: 4549dd0e-ac63-4803-8129-be6ddb13c301
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic303.consmr.mail.ne1.yahoo.com with HTTP; Sat, 1 Mar 2025 13:52:24 +0000
Received: by hermes--production-sg3-9fc94b8df-h7dct (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID 389745ca285dae92afb5f978683975d4; 
 Sat, 01 Mar 2025 13:52:19 +0000 (UTC)
From: Po Lu <luangruo@HIDDEN>
To: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
In-Reply-To: <877c596l85.fsf@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN>
 <86tt8fu6dh.fsf@HIDDEN> <87o6yn1st8.fsf@HIDDEN>
 <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN>
 <s1ra5a70vwv.fsf@HIDDEN>
 <2b5ac4cc-ea40-416a-9e12-9cedd8172a59@HIDDEN>
 <877c596l85.fsf@HIDDEN>
Date: Sat, 01 Mar 2025 21:52:13 +0800
Message-ID: <87eczgluya.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Mailer: WebService/1.1.23369
 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo
Content-Length: 3122
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Paul Eggert <eggert@HIDDEN>, michael.albinus@HIDDEN,
 marian.iurie@HIDDEN, iura.mail@HIDDEN, Eli Zaretskii <eliz@HIDDEN>,
 76559 <at> debbugs.gnu.org, Stefan Kangas <stefankangas@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Pip Cet <pipcet@HIDDEN> writes:

> If patches like this one are necessary:
>
> @@ -3807,7 +3812,20 @@ kbd_buffer_store_buffered_event (union buffered_input_event *event,
>    union buffered_input_event *next_slot = next_kbd_event (kbd_store_ptr);
>    if (kbd_fetch_ptr != next_slot)
>      {
> -      *kbd_store_ptr = *event;
> +      switch (kind)
> +	{
> +#if defined HAVE_X11 || defined HAVE_PGTK
> +	case SELECTION_REQUEST_EVENT: case SELECTION_CLEAR_EVENT:
> +	  struct selection_input_event const *sie = event;
> +	  kbd_store_ptr->sie = *sie;
> +	  break;
> +#endif
> +	default:
> +	  struct input_event const *ie = event;
> +	  kbd_store_ptr->ie = *ie;
> +	  break;
> +	}
> +
>        kbd_store_ptr = next_slot;
>  #ifdef subprocesses
>        if (kbd_buffer_nr_stored () > KBD_BUFFER_SIZE / 2
>
> essentially all code dealing with X events needs to be rewritten, since
> they use the same approach.  My vague memory is that C always made an
> exception for unions like XEvent or our union buffered_input_event,
> where the first element of all union members is identical and used
> to decide which of the union members is "fully" active.

Correct.  But I think Paul's point is that the pointed-to object is not
a union, and in consequence that the exception does not apply.

> Looking at the -fdump-tree-sra-details output, I still think it's weird
> that no whole-structure access for "ev" is being recorded for evq_flush
> (and its inlined functions):
>
> access { base = (8089)'ev', offset = 0, size = 512, expr = ev.ie, type = struct input_event, reverse = 0, grp_read = 1, grp_write = 1, grp_assignment_read = 1, grp_assignment_write = 1, grp_scalar_read = 0, grp_scalar_write = 0, grp_total_scalarization = 1, grp_hint = 0, grp_covered = 1, grp_unscalarizable_region = 0, grp_unscalarized_data = 0, grp_same_access_path = 0, grp_partial_lhs = 0, grp_to_be_replaced = 0, grp_to_be_debug_replaced = 0}
>
> is the only recorded such access unless I comment out
>
> 	      //*hold_quit = event->ie;
>
> access { base = (8089)'ev', offset = 0, size = 512, expr = ev, type = union buffered_input_event, reverse = 0, grp_read = 1, grp_write = 1, grp_assignment_read = 1, grp_assignment_write = 1, grp_scalar_read = 0, grp_scalar_write = 0, grp_total_scalarization = 0, grp_hint = 0, grp_covered = 0, grp_unscalarizable_region = 0, grp_unscalarized_data = 1, grp_same_access_path = 1, grp_partial_lhs = 0, grp_to_be_replaced = 0, grp_to_be_debug_replaced = 0}

GCC assumes that, being of the same size and having the same offset, the
access to `struct input_event' never aliases another access in the same
procedure with the same properties but a different type.  Which type
prevails is contingent on the order in which they are defined.  If an
incomplete declaration of `union buffered_input_event' is inserted
before `struct input_event', you will observe the access to `ev.ie'
disappearing in place of that to `ev' as a whole.

> So maybe it is time to ask the GCC folks for help here, even though we
> do not have a reduced reproducer for the problem (which may well be on
> our end) yet.)

We do now.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 1 Mar 2025 13:43:43 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Mar 01 08:43:43 2025
Received: from localhost ([127.0.0.1]:35728 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1toN82-00016m-PR
	for submit <at> debbugs.gnu.org; Sat, 01 Mar 2025 08:43:43 -0500
Received: from sonic305-21.consmr.mail.ne1.yahoo.com ([66.163.185.147]:36936)
 by debbugs.gnu.org with esmtps
 (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2)
 (envelope-from <luangruo@HIDDEN>) id 1toN80-00015x-1I
 for 76559 <at> debbugs.gnu.org; Sat, 01 Mar 2025 08:43:40 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740836613; bh=I2euw5iEAHjOESZVDFiQfpSF2aI5MZyqCD87JknDUZA=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To;
 b=ATkLvpQlVdURbtqGyObg1ulWjPOGmRP02cgTYrTsnuf/PgTA38/0DL3M2hdxTlw+QyiUlHqLP58tYUkQmbsMthdRkLcdQA5Nsek057xv0XYHhfePqZ08bqrsNEwYw9Po0d1I76Urq30wAQ6Cei1Gq4rTh9gCpIZeCKGSZ9pCNOWoIOc5XrpeVWNir/4UvHCT7ZVIdt7tTPzhlPcY1f+U1CA71Y+USymSJJxTnCE2KRl5tIcsj1U5C8a9AKokaPK3MbhfyuAu38V0U78PPnwnER2FdJPQ3o6MNNFw5z3mNUE3P4S2R3mee2G6UJLf7kD26su5NevC9g/sXB2MagTTzA==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740836613; bh=rbQs7t3zhskJgMKmnGjKPEloIhFwDU63WiXzOr5TvfM=;
 h=X-Sonic-MF:From:To:Subject:Date:From:Subject;
 b=q/IQHSr+knv2X0IMb0eBR6zehZFF6/GfRPdbcNkrS/3DVsPmpl4+TyrhcifwJjP31KgqFO6UcsbKcdTRbltSHIKeFeGWZ9Fx4tVtA8ANAu5tCDQtwVy7izfMxFKNExtMmd7hWW0+Aohwz/0Tn4vzMy5RYzQCkQbhqMm6ZlTazGbsCTrP5BtqI7GPPSfdd0Ing2GW1iP4EoGhF99V7U8jTZE2m2atqcHYdjuWUzptb+0Ch2BDM47V42lImX342i+c8MgSmqmVZrFNafS5OccesNEz0rILjvKVhPxSZ5SHPJiWEjNpz8NjANiGP/V1fpsTT/o3ZKeuq3aJKEmlVr3+3w==
X-YMail-OSG: 2usMZsgVM1kA7cErD_K9cS8PT8VuhpgB6mwYu7CCcsxBB3sbcXqV9etkFRaog97
 4PX872OFS1zvSmV6vZ1xzhSSK43Qx5pCgKR4isdIQakPqzGrszv78PoGwSTVXqhgY92do26sgZUh
 uaGb5lPyOEPO1P6O5dlLgktcRVatzTU.ktiJeRy7OR_y_pyXYmY5OvSRfQJ3aveVrDgYsPcehEcM
 eW8QQ5Dqa1lfhGsuPU..9wSveet6XI1FyJHj.iznCqzolTDEE8mHocPfs7keeLF_ps_90.Lil5gi
 YCbcMw03rnz2tU9eMaSrj63t5iynFgPSs1ewZz7gsxgQhYcHZpCxfDiPkIDKqYoyOQxZbHmv4Ywu
 aDCxTdMM89knYEv7XuqueEgIwIncWyAOLn6TwbqyxW_SomtzSCUyAQTV0IyX_Fc6jqvotZcCYTvZ
 aZqTJ9h44YPPnBtz3l28Z25TKW7DpZ9gBMBTlCm8rybonlJxnqV6s82Mct0IXsCdh.DM4bZKTYN4
 7l0oYyyO3h2YK_Z2MhXh9D96HwuZa_BWs_CEgQjKth89IQ2gyy3zNI7fToFolKfw5XAHezwBHiZz
 XJiwNS3D9CeV87k2_ciLMIhPr4A0mF4jIkANu_wHOgy3RAaSwzPUsfSULI.i86How4SNrVVX53an
 O..MF7TYmgisHDIIzLuOygfhZBy4yVrjMi_Hm6_dVaAsJLvt18Wza89G3POiNgJUNghSKtJe.g__
 QfUmh53Zc3QQ77pKvaBZK5RWhy.01eZp4MlIXuOeoN_YMDkyYabEP_I8S50Hq.Nv10USIpfL.XNF
 Mjf0IxOONmMY1Cr1SkZfVIQ5UEPyvUhvbc4h2D6Ob2nM6Cyv..UJ0GnF2CMOphvBb3g9FIv6XMUn
 ZICvl1_NPwE_bJxBVTaeVaUEQaaTCr5lNTOhDy_TFTlNRbDv06HpGU9D_OqeJkVcAAeOt6aWzRIq
 WlZfPm0mFLh82ueF_KlZR3Ql9V5HJwogvImxsxaqiNjxxZ.VeSygv0BvXcdRrGi4sqAKn44siYNJ
 Xbfediaa3zYpjBYJsKXeR2YoHR9YHjTHKKTvm9F0.x4feffhWKqz7Nd45GrxOSjgcAZoTCDq8OXU
 btO25aeNsRygpGfx1xpuKc5RgdOpiMoCfOEcpYWiKh8Dk7pe.go5pdfMcixp9rFN6Lm7LqJrqPHz
 Kzw2z5tzIIXgB28Sx6D8Qq9AjLt4O0f1PjfWtMeicNDTeduxV7JaXO3JiUV07AAqCyyjmFGTf.hl
 0OKjIlC5oRn6wgnC94MEOhjd2zNwEONp_ntQIBMDL.4AEKwbrO2wFwGkI59w_Gc0WIv9yJq3509K
 khC7xbA.1WWUn1kmbszSAFslgfqdeyiKVh9crUoTa9k9q2ZItpyyQhrY.49FkBwD9OCma32JwPqG
 c3jTFGq6haP6DkDE8181Kh4Al2jNRN62zVpu8KQSpzLBsiOjsDEC359AnFnQAUswxYybmytcOCPZ
 7HLZtlBkWynxY2yRJzYDqq7N9ZazDPgO2p8wqJR37MPAkIpYk3rIQR9gJpqWV5uGHzUdvx3yn5_6
 wds6PiB2BTf6wcpOUONRC4yJbtrS9jv3Dnlaott1FTrgjEo2rlxSk2rvrL1WuQFt1_VxhzL3ia_A
 z0TiIphH_cc2WntfW56XC5rTH37RtqfGTsbFtfOCrMg3tUHXSDPxu0NeckkOV.ZPlzfuOLhKMfXg
 Z1rU9EPg4u1TRi2X1iir8jnNHA_zV16.IghYEWZt9qiYJosuGwFBZ6qhjam.At8IDYAF_wKIxzsK
 xQRoqrRJqiE8AZTsc6qVy1qXmhbdP9GbVjHjnm8eU35N4gYWIpN5t6.EiTe4ndp3bNwHJ8kkcArh
 LTCUeAJV.ll.H1H8JlDCDyNBFPEnsp.d9imY28oGDsjy1O1cU6B1MYM_DRTziBMTk6y9GHiwcYHV
 KAkYCa1nldjf8qq8sgegnFRis.ep9ZOqCw0K0a88PFEHQgPiQoevbVgwlzcI2CNSKvOu9Musj9ym
 prsSGk7DPXDoa071PbmxRCv03zERsGsSv78WNabB0uOnwWTZVf2MfgoMBmlPooeHoJ9qUn0VGiw6
 sfdgCKABTU2kVKPFlg27nUjjCK4P43o4Jkpe78Xhj.CIP4MWzD9IXLR9Bore64OpSnLbAUklLYD9
 tQEX8V8O_3hpLNXmB6.hJhUv2sNP2z0E7fM9vE8hFthsC3HbTjQBW6D5YWyFcLuY_udfkM2ssYeg
 Ki9WsPA9Egl1JOxMH7QjdDPQoLoJNl9I94EfL_ZrJ5cZDzOhH0AG9am.fSsngHik-
X-Sonic-MF: <luangruo@HIDDEN>
X-Sonic-ID: aac1bc54-462f-4e24-89d3-3d19ab68aa7a
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic305.consmr.mail.ne1.yahoo.com with HTTP; Sat, 1 Mar 2025 13:43:33 +0000
Received: by hermes--production-sg3-9fc94b8df-4t2r2 (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID 49458964cfbf8f697ac33385fc7849c7; 
 Sat, 01 Mar 2025 13:43:27 +0000 (UTC)
From: Po Lu <luangruo@HIDDEN>
To: Paul Eggert <eggert@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
In-Reply-To: <2b5ac4cc-ea40-416a-9e12-9cedd8172a59@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN>
 <86tt8fu6dh.fsf@HIDDEN> <87o6yn1st8.fsf@HIDDEN>
 <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN>
 <s1ra5a70vwv.fsf@HIDDEN>
 <2b5ac4cc-ea40-416a-9e12-9cedd8172a59@HIDDEN>
Date: Sat, 01 Mar 2025 21:43:19 +0800
Message-ID: <87ikoslvd4.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Mailer: WebService/1.1.23369
 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo
Content-Length: 1479
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Pip Cet <pipcet@HIDDEN>, iura.mail@HIDDEN,
 Stefan Kangas <stefankangas@HIDDEN>, michael.albinus@HIDDEN,
 Eli Zaretskii <eliz@HIDDEN>, 76559 <at> debbugs.gnu.org, marian.iurie@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Paul Eggert <eggert@HIDDEN> writes:

> True, the later accessing is undefined as per C23 =C2=A76.5.1 =C2=B67. Bu=
t the
> patch you proposed still does that sort of accessing, as the code
> still accesses event->kind when event is a union pointer not a struct
> pointer. (Also, the patched code doesn't copy the struct input_event
> on platforms where ! (HAVE_X11 || HAVE_PGTK); I assume that wasn't
> intended.)

Clearly not...

> One littler thing. The pointer cast (even without any further access)
> is undefined as per C23 =C2=A76.3.2.3 =C2=B67 if the original pointer is =
not
> correctly aligned for the cast's type. Although we have a
> static_assert that the alignment is OK, we don't need that assumption
> or its static_assert if we fix the more-important accessing problem.
>
> So I propose the attached patch instead, to fix the above.

I surmise that it doesn't fix the underlying compiler issue if you add
__attribute__ ((force_inline)) to kbd_buffer_store_buffered_event, as it
is a product of an assumption by GCC's SRA pass that no two accesses of
a single local aggregate declaration with the same offset and size but
of different types alias.  (Mine does, as `struct input_event' and
`struct selection_input_event' are of different sizes, so that the
accesses are not taken to alias.)  Besides, I did not succeed in
convincing the OP's version of GCC's to inline
kbd_buffer_store_buffered_event without expressly directing so despite
having enabled LTO.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 1 Mar 2025 11:32:11 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Mar 01 06:32:10 2025
Received: from localhost ([127.0.0.1]:34244 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1toL4k-0002w1-5Y
	for submit <at> debbugs.gnu.org; Sat, 01 Mar 2025 06:32:10 -0500
Received: from mail-4322.protonmail.ch ([185.70.43.22]:51405)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <pipcet@HIDDEN>)
 id 1toL4g-0002uy-Pr
 for 76559 <at> debbugs.gnu.org; Sat, 01 Mar 2025 06:32:07 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com;
 s=protonmail3; t=1740828720; x=1741087920;
 bh=VqFlARAa5Es0QkIToxwPGu1jUVXKWbE8/x+ufDgKgjE=;
 h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References:
 Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID:
 Message-ID:BIMI-Selector:List-Unsubscribe:List-Unsubscribe-Post;
 b=Zuo1f5WF1jRKzg5dPog+7GCb31s2x8Mny3tuKvEw8JOV6U61H2EweLFLcY7kpi/w+
 0MpGJyAKJ5Ty/176BCcALp8jYW4So4seSIDHXcbKeGmNd3MElAn6kyNRbKGiMYKq+f
 /xRKe8oTkSxZ4W/OWHwWEl8lTpBmL1TYXEN1HsX/R09fCVE5HG60i9AR4s6WXOPcDF
 SLaf5RjBm67cXkNJKE45E49OcNgwUsJBlgRE+BCzW0SOwAX41La7AK6GMc4TBkiJuB
 JOjEvPeQXBDDH+gn4pFp2SdEKrGyTDOykUijofEnoCklyNe2eKUZ5KbPQ+pg0l/zhR
 N6Fl2kzqTtCSw==
Date: Sat, 01 Mar 2025 11:31:55 +0000
To: Paul Eggert <eggert@HIDDEN>
From: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#76559: 31.0.50;
 [-O3 + PGTK] Crash when 'copying as kill'/'killing word'
Message-ID: <877c596l85.fsf@HIDDEN>
In-Reply-To: <2b5ac4cc-ea40-416a-9e12-9cedd8172a59@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN> <86tt8fu6dh.fsf@HIDDEN>
 <87o6yn1st8.fsf@HIDDEN>
 <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN>
 <s1ra5a70vwv.fsf@HIDDEN>
 <2b5ac4cc-ea40-416a-9e12-9cedd8172a59@HIDDEN>
Feedback-ID: 112775352:user:proton
X-Pm-Message-ID: daa6cc381caf6ec48f423a29e27bfc7df1ae689a
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Po Lu <luangruo@HIDDEN>, iura.mail@HIDDEN, marian.iurie@HIDDEN,
 michael.albinus@HIDDEN, Eli Zaretskii <eliz@HIDDEN>, 76559 <at> debbugs.gnu.org,
 Stefan Kangas <stefankangas@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

"Paul Eggert" <eggert@HIDDEN> writes:

> On 2025-02-27 16:12, Po Lu wrote:
>>>      kbd_buffer_store_buffered_event ((union buffered_input_event *) ev=
ent,
>>> =09=09=09=09     hold_quit);
>>>    }
>>>
>>> That cast is invalid and the resulting code need not work as one might
>>> expect with a circa 1978 C compiler.
>> The cast is valid.  It is accessing a union buffered_input_event from
>> the resultant pointer that is not.
>>
>> "... an aggregate or union type that includes one of the aforementioned
>> types among its members (including, recursively, a member of a
>> subaggregate or contained union), or ..."
>
> True, the later accessing is undefined as per C23 =C2=A76.5.1 =C2=B67. Bu=
t the
> patch you proposed still does that sort of accessing, as the code still
> accesses event->kind when event is a union pointer not a struct pointer.
> (Also, the patched code doesn't copy the struct input_event on platforms
> where ! (HAVE_X11 || HAVE_PGTK); I assume that wasn't intended.)

If patches like this one are necessary:

@@ -3807,7 +3812,20 @@ kbd_buffer_store_buffered_event (union buffered_inpu=
t_event *event,
   union buffered_input_event *next_slot =3D next_kbd_event (kbd_store_ptr)=
;
   if (kbd_fetch_ptr !=3D next_slot)
     {
-      *kbd_store_ptr =3D *event;
+      switch (kind)
+=09{
+#if defined HAVE_X11 || defined HAVE_PGTK
+=09case SELECTION_REQUEST_EVENT: case SELECTION_CLEAR_EVENT:
+=09  struct selection_input_event const *sie =3D event;
+=09  kbd_store_ptr->sie =3D *sie;
+=09  break;
+#endif
+=09default:
+=09  struct input_event const *ie =3D event;
+=09  kbd_store_ptr->ie =3D *ie;
+=09  break;
+=09}
+
       kbd_store_ptr =3D next_slot;
 #ifdef subprocesses
       if (kbd_buffer_nr_stored () > KBD_BUFFER_SIZE / 2

essentially all code dealing with X events needs to be rewritten, since
they use the same approach.  My vague memory is that C always made an
exception for unions like XEvent or our union buffered_input_event,
where the first element of all union members is identical and used
to decide which of the union members is "fully" active.

Looking at the -fdump-tree-sra-details output, I still think it's weird
that no whole-structure access for "ev" is being recorded for evq_flush
(and its inlined functions):

access { base =3D (8089)'ev', offset =3D 0, size =3D 512, expr =3D ev.ie, t=
ype =3D struct input_event, reverse =3D 0, grp_read =3D 1, grp_write =3D 1,=
 grp_assignment_read =3D 1, grp_assignment_write =3D 1, grp_scalar_read =3D=
 0, grp_scalar_write =3D 0, grp_total_scalarization =3D 1, grp_hint =3D 0, =
grp_covered =3D 1, grp_unscalarizable_region =3D 0, grp_unscalarized_data =
=3D 0, grp_same_access_path =3D 0, grp_partial_lhs =3D 0, grp_to_be_replace=
d =3D 0, grp_to_be_debug_replaced =3D 0}

is the only recorded such access unless I comment out

=09      //*hold_quit =3D event->ie;

access { base =3D (8089)'ev', offset =3D 0, size =3D 512, expr =3D ev, type=
 =3D union buffered_input_event, reverse =3D 0, grp_read =3D 1, grp_write =
=3D 1, grp_assignment_read =3D 1, grp_assignment_write =3D 1, grp_scalar_re=
ad =3D 0, grp_scalar_write =3D 0, grp_total_scalarization =3D 0, grp_hint =
=3D 0, grp_covered =3D 0, grp_unscalarizable_region =3D 0, grp_unscalarized=
_data =3D 1, grp_same_access_path =3D 1, grp_partial_lhs =3D 0, grp_to_be_r=
eplaced =3D 0, grp_to_be_debug_replaced =3D 0}

So maybe it is time to ask the GCC folks for help here, even though we
do not have a reduced reproducer for the problem (which may well be on
our end) yet.)

Pip





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 1 Mar 2025 11:29:57 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Mar 01 06:29:57 2025
Received: from localhost ([127.0.0.1]:34215 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1toL2b-0002eA-DW
	for submit <at> debbugs.gnu.org; Sat, 01 Mar 2025 06:29:57 -0500
Received: from sonic308-56.consmr.mail.ne1.yahoo.com ([66.163.187.31]:41615)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <luangruo@HIDDEN>)
 id 1toL2Z-0002dF-1s
 for 76559 <at> debbugs.gnu.org; Sat, 01 Mar 2025 06:29:55 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740828588; bh=GpwirKZnM98VRwiNxDzoPI4lVJT6qb7CVehkeCe8poE=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To;
 b=JI5kz3K+3EI8v2A0r/48g5h4qibBqU02bo/C+bfpM5fv9n+CTnKsTvyXvGtrVbXU1+7dB9MlhwzzacgEqk+cPuIedkYBAydf+jur0FDYTdpT2A3RGfzAv6IfoAwQR9fLSRm2Ftpu8MYPvh/qdQuEDtc2vY629QoZcICbMeenKUy2M4DPpvYYqUtaqv8+BIsxpHA8x++IQs2fDpjPyftLCwdhxjTqPt30cnmvewEpJJJBkqS+AQS1AOcZlPuOIKqHtUUo5E/w8drx6zYWqAtMOwSRDyhcnxu1JjW5nASCcmxM7bm1N4BPR8IVsEx2huiIYqsGxzyHq3I4hhOzNUJoSg==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740828588; bh=LY9NO0xfwUF0rKOX/HuEUAflRQG0l8NRdbF6C6ZghE8=;
 h=X-Sonic-MF:From:To:Subject:Date:From:Subject;
 b=NoGb3ASRIM0gNfmyJN6Vw/vNFp7u/p1KNsqNZgXdgUGd0qnZ6RR3aA7xg4exrW0UIzNFzoS0x22ILpJq9V26Bqm7suGBUIxSf2bSda1v2lt4WYnQM0tBOssGPzr0A9qw3Ap+oVDv2c1y485tZIF2Oqd6gVtF1KmV4h7uOR5W4HRefNZvtNWeVd/kPqVfI/KxSS5ONIDVHygRywpHSqI3vezLRQNUt0zmAaE+VbXH/idxTWRULmQTFuMO9WEh3k9kfV7JfQcRSgy+vRW1Y2ApHjhhd4I65zKSWKPJ1+W2ZeTiP4V/Rf8nPiJhdMizWkDcTKzVhuLHmqmcJrA+EPXgwg==
X-YMail-OSG: o9niYvsVM1kRoVPvFbBBNJfG3DN3_GQqvJjT3r.WvfMZ4aexDDRBg3lL2l88DgD
 dVo6.Zicu1II2morLkWlIoSy7sYSP.s6nnyKhWTsvERkbnP8kKbMo6jW4uZBMuJonEW3cDaDfmF_
 9qtlaR0tAkoIQ8BxCID.VTsEIKo5jUHCez83Iy0hiz7RioblwIrl4ZUiK8NHcco6rWPAEp_l6EYo
 KZF4gRIl6GGNtTVu8yGKy.V9dgeRSxPzufH0pSLrJhiq2dMSNC6zyeGHssDRmJ9wjed9zc8WovaJ
 n0AfLDyzk7sUus1FJogpMiFDaAE1YgqZk9pJeNg0GqBNvEIdfezqWkezLoK_Q9LenrY6hs9slHzH
 PvzFOo7E..n.zjLQ9Bb9XDuk_mXJGwJriuccZLsKfCetE8sFL7fvQV16m14prtMLfnHyNT.K4Z17
 l_LuFfY1EKT9JdFbaraADihQ.W7M3UyroJMs_5mz_tsz2v7ab8TwHi2uQIhg.1EJMbikFcnr3RUj
 O1zDki1pBdazr_5CQtMTKoqMHD4cMyJuemw2Ujz8rwG8kg29wUOWL4ipv.O2bgNZaw5IeMWgKkuV
 4aRSoUNqHNOq7oS3EhEHQ3aJ5hgS9W62MPnFwjglCsqw2Nq7bpN6os7XWL4iEZvm2LqN4.AXzBz6
 QDtqYORgLlup7K7sKhycXkcs8WPbSLW4sLp5Ou_isPN6xDsd154OzvltIMy74bH1ffUtzLzVkByc
 XOvuR89xpTLXyVjTHfcH4FDeLTEMlvHF6qdgR8Np.U_3EqHmzJAycCTL_1kMKIemugBeHcc7ZlY2
 fXfPOHr8f3d6p9ktOTgw2PDPg2mGcrVsODr7Q29ZbG0Ozz4.J8bYvRSLXtIb8VHYBA.xJtr4sJRP
 vVPI0gKlssK_zEGJ4JPK12evqi5MgIBolLtsVbF.SgBs_BqB3TNNvp8tle7n1Uot6HYWxcpDHvRZ
 1vXNrlfBg1mAABEwzXbKiYOwcMPpAB8ndkUGswdSUw0SKueFCBfLjwwOyr0vPSu8V2TdEkW_igqG
 CbHBc06Qdzt2fLq6IYw_u1XhBiQi64qbCa3s.2THOnO0v9N11sNlJi5h17mxHuQIaet6R0nGYeer
 SOAKT6pk24yx3YxrGsEJT0lAKUmCfG.gceTpwm0LG4mpPZT9LZvghRhkwZbRcg03i1uzUFrOtPnl
 LCsVJwF8q5NGoDUj1HYQ5oJLkf52rl5sq7r9f00Ot3ulnxIromPLfi_Fh_v8OxdSuUEWMXeF_Pj5
 0vvHtzeaUbEkuHEIuJhIGFK5rOVFXvkmfdRt0W0iklSp.llM3hE0MwG.d6XTn7aHEMiaiYcN5zAL
 yIaJvQnPTRygWIIf2_x6sxsEIFcx502YIG6.LH3X8LmzgR4p3m.ac0eXkTv05ZVmyj5vcQ0CAdXG
 3C3AOGcSXjjkwT2Ca.0FuiXDqnr1916Qk3Vjz3QE1gFzVuIiQ5R8C_5XC5oHBwwt1WtBjyNc44KI
 w09eSuleSqT1MhP6samBwSLgmRSPvA0rl8sru7ERisKX_zKBnJMFF450eT.UO9w1PzglKwMRiIqT
 I_m.QhDvk73CdoO5sVBrCr6jLI5DvV3VRTvT5BCWLHiIEd7D.nmxyyCHHP8c0WtLUcdm0fGVWncD
 5w09TUm7elgFeBIwGldqPlI.zK0PhB_TAbvmAHNtRd99tVdaJCJPkXkJUdZ9wOQ1xs_g.1hvxUGB
 uGhviIOxGR41Llhw.Jr5kzhO_pc2r4.v1gn4sFbkcSdC7mkSUIeim9sHC.xJOboXPFN.u60KVSY2
 W3ocZSVasugH5LbOTOU8dvgyUkP60LJX2yTapVoKv_M4cBMTMhGQHwafkmN5x5PAyHi3Mkvlr3jw
 OsYXsp3U2HFTp4PKFk0dvzGM_JL62mQGV9eZgmTixXKnW0CI0Sfd6RuOzJNrQykgop.Oap_pVvq1
 iDs8cqIpQ_PS82ozMerfWoxE2LzNRi8l743tjK80obNCNFw4TtGujjjx7bDE8hKZleSQc8vmDEw1
 eVlMQ9.95r3IHuoMLNlmqqjF0vsC.WDyw1FjTTZiLvIZ9llETIFRC8sS7d_MFGDm4_GjbYiqMThM
 Va3IP5nPtDqeUDpVs4RctgOfGDnPBguNM8MmPBujKiInWR0a0oT_0bWx_PmGZ3lVNyzqoO7o.QTr
 HCJ.CzQQgY6Rx05kLP3ssp5ttfSYtLLn2qAa1WUY4XEfHBYpFlDqiXL4H530AAFYVJ8Cd4Wxd4Ik
 ckfyVHLKfwV8mSbbhgq4uBv.HAi7sLCrbwuwnOWDnGkxQbE1Vs1MzprCoYa9KtQ--
X-Sonic-MF: <luangruo@HIDDEN>
X-Sonic-ID: 63ec873a-9909-49ed-ac66-7c0824ae063e
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic308.consmr.mail.ne1.yahoo.com with HTTP; Sat, 1 Mar 2025 11:29:48 +0000
Received: by hermes--production-sg3-9fc94b8df-4rthq (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID 3bf4ee0ebafd862b0e5739a904b11a59; 
 Sat, 01 Mar 2025 11:29:41 +0000 (UTC)
From: Po Lu <luangruo@HIDDEN>
To: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
In-Reply-To: <87cyf16oh5.fsf@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <87wmdc4osq.fsf@HIDDEN>
 <CAP+jDP6E=BdUHT3+w0g4QO1GYv5vDcx-VNmEPFp5UyLKhsCZow@HIDDEN>
 <87cyf44k7h.fsf@HIDDEN> <87o6yoar1m.fsf@HIDDEN>
 <8734fz39nx.fsf@HIDDEN> <874j0fo950.fsf@HIDDEN>
 <87senyc840.fsf@HIDDEN> <87v7stl9n0.fsf@HIDDEN>
 <87cyf16oh5.fsf@HIDDEN>
Date: Sat, 01 Mar 2025 19:29:36 +0800
Message-ID: <87mse5kmzj.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Mailer: WebService/1.1.23369
 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo
Content-Length: 669
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Michael Albinus <michael.albinus@HIDDEN>,
 Iurie Marian <marian.iurie@HIDDEN>, 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Pip Cet <pipcet@HIDDEN> writes:

> That does seem to be an actual bug, where SRA does the wrong thing if a
> function is marked with __attribute__ ((optimize (0))).  At first glance
> (-fdump-tree-sra-details) it seems like the whole-structure access in
> that function is ignored, which makes sense if the SRA pass isn't run
> for a non-optimized function but still assumes it has looked at all
> accesses.

Intraprocedural SRA is not so sophisticated as you assume, alas.  It
does not account for data flow at all, only decls and the operands of
GIMPLE statements throughout the totality of a procedure, and it is
undermined by quite a substantial oversight.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 1 Mar 2025 11:25:29 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Mar 01 06:25:29 2025
Received: from localhost ([127.0.0.1]:34153 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1toKyH-0002G1-7I
	for submit <at> debbugs.gnu.org; Sat, 01 Mar 2025 06:25:29 -0500
Received: from sonic303-21.consmr.mail.ne1.yahoo.com ([66.163.188.147]:33198)
 by debbugs.gnu.org with esmtps
 (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2)
 (envelope-from <luangruo@HIDDEN>) id 1toKyD-0002FE-D0
 for 76559 <at> debbugs.gnu.org; Sat, 01 Mar 2025 06:25:26 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740828318; bh=GKeZxcs7IzuJnGu5Fio3+eWI2KhwrlP0OhmJ2wPE73U=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To;
 b=r2AxP7gu1oG3Fx5JbV5rGTyfEU5vcqhfgomBNMPFp7wJjXjYANxgiFBYSnyycCr3iWB2NKeZeWfjHGRGQUUkQA9lo+ZWBG3QK2GcIyvykOQjPNmSEQoUZ2fnZXty1kuH0dfuwLsUbe/UwdbMbVXwOaX3UClkDfIu55/C1kl5bWhcq+8YG8JWXQIYd+9klDDmMfztfVXBqwOmRcBZxNL/uJ6Wb8CCWxVp/4ruL2iHUezik5Q2lxOme7p6HNIr1eTn/ItgZaiJIp6strjX3L2N5YsNaMcb1Rw9o/W1qeJoCgGY6LRerN/1NRWcJ/GSSGmdr4M5x55riY6Kt6J7fZsDWQ==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740828318; bh=tQaSHwrJk39GHJaAW1FhVlxE0Ra8FxByff1rY7p0vp0=;
 h=X-Sonic-MF:From:To:Subject:Date:From:Subject;
 b=SIAOMRiUTDvMGgqH9nRa++7urPxeT2aVoUUaB9kjL8MBVWqKj1TYV8JXNFsHHh3R7OuCWkIoSf3fUreq34QxT6YfTcdX3joGpRph1D6hhqQWMp+DoOvQeG0WkG4bKrspovJf//kjOcFBW596jg6KwvA6dZ5y2O+mUAS30fPdlxKQhkx8FGfx53tfn31VI7YxJh0P3FwtCQjvWm4GnUafIIOUvipjgfwM0Iqihg513uoBpFQ5X6iqik1YTS1M6DxFeiYDFc8oQnYbBKRw6yGi8kdx3bUJJB37FlnmsaKVBzvDSR40SLKFph/EsS+I6ONageWgEDxcuP+7qmSHRBGu6A==
X-YMail-OSG: b4Ki3eEVM1nOvggxlIZ.vV9vR8xPgXLVFrTRVNzVgKbvsmP5lzxTqVjCUpoHbpM
 YCow_1bEN6K3eky.L3aGUFgZ7VDR2WM.winVmAQJ1Nm2U76cUDo1BcqISQWg9FWOJ4y0cUWzig2D
 LlWyT2rAYVXbaR8r5L16VYH3pqxPuHBWNG2N_x2wl34m0wVf0u7m.Uj9oT5yG6jwuDaLASd6kWI2
 Tbvykf579GmVN1YeKyQxudOd7QV8UILmbrVTL0KM3wPS4ik0YTE9M30rhbfasVRBmBZtlE1Neuvi
 2ljGlZMfMgtR7REaucgfbrfuIQYbAtDdqvdWI1P_rUfj8RMhZlwV2qAlKUdIBdXyYPjn3d5PjxQS
 B.pvCKZrOEYdDU967x2ODj0KF6nnkGEbL03kX6qq7NjBo1MxcwDSosOyv23nH4_dCIlAzZHDCfRC
 VhnbKlDozp5dh5cny.MACs8Kdm19lBcf6a_MDhCAuE974pXxuRjyQJPPb233IRhw15O4hq24Rq0k
 N5isvFDPZJHc69_vRu6jyHtrrN3LVSH6AZnt3bDoZARSriqWcS4lWjxevYVpYa22y5DB3K16pcg1
 vwyzVuVWbtpDYq_gs8Kunb77daZ5Usse5p4d8qAVwGtjKnMyv3oPYI.AFggS9FgJMMA1.1ui.J1k
 qmbwFDE.MfoNB0lq.tE1bbbMicaaxybUUUBAu.ehqmeJCrYUww31JvZTBwK4J_U13MYmOLf3BfYA
 .aYKJvqpS75dk8Y6xA3UMHZ.aXFD1Wj9aab.h.GeArBsflLwg1sD1a.ymKiSzec4TcJO4KJw8XyE
 z5JW0YIj5VFuNyUa5qiZsFNxLM7_2_Eo5V.LWtr3qCr2UfbthgzGpDNw7zwxIoX3QpthBhwWKJBc
 u__dYeXzi7fj860946stnlROfNLZD9xFk2i.mTgBo9T8Ay4KHDogZNhZ2OstdjJviWHqIwpc2r_j
 0hpyGkdeWSBFQO51S5ZPW0BNhzrjX.HYNVT52DB7StilDSvm.RLviUGoOfMuQaq6zUJ5zdccZ6sK
 8ll2DuO_9eE3udkCimvX4u6Kr2WBgL3BOC6yn8uv1eaPLBF0yb02h9zckyGmv7zyHns2QuIcH6dk
 Sk.QAIciAzDVqeeZkRTGAKKLqi2tt_XLbTBQUi0i8432gtvLzVrIvHYX0E.cTD8Y1gCDa2nCYWtz
 H5pC13q8SxuuhzFcgkAX1rhepIbY3fHsutxwl2EtVafmecMbFrRCK1dc7zorUy9KfoY_nn8NcYtT
 XEHX1VBZznvtOfvMCkjW205iRmzLmTSqVPIugM.nTTfSyVQxUywnKPtOlt2xVhIQ4RtexXOT4aHE
 EVvhZC1LFrvPrn90HRrrRykN9drjAO.Ow8INyQ23ThLG4O2Pn48BfM.FJPEHb89pYYLhSmXYlHnx
 jgF658wMnhX8K5hEu9xbRkcxtCgqB5cHBBN8fRejKf0aSNPszyPIB_bpIyMynOVQEfymrDri_6Eb
 EwggOGhoIYh6B7LJNA1i67VQbjXxOR6VZ.fnB9D7DQ._In7bbj5KWUeF3xrscOalQl1G9PM.LX6L
 AeVhT02oQ6vwJJZe6XOPFcAkTjxxCRhVrqvvsTmgPahbhLzTNVK4lxl7ywy051UuhG4DuUZzsde3
 v3laDXFhpeJzdY_tSRChWyjVQnxlWl1igiLNZDIxdn2HQtxXPMHbEnaXig5UWLEN9RkPIBXUzdnR
 fbVEVB82r.ub70nTabafDuvz0dVw3Q3VbWK58eD6p7jaOenTX4DgcsW4YkLXNPDVZWA0xf1ugwUM
 YHWYq5huAPf0HLbuKmreOVbc7uQ7gjpnReK.Zx6LeWW3YdWO3urmIdgQ2wkcT0sDOP1mYL4ICW7R
 jqDDkWIWTwVpuiPwnFb8HTy4C49PfKSips4sVz1ARWAJEy7ROYBzlm.lOi8HNKh3HeWMiPyqvTvO
 1464Swy7HZIwoBr6Ljn9tlxIjzBwCzbVQRiKZOCqFGIQxBnlZqMDOHVCObShjGFhBL_GM4W5m33_
 SyWFZFZQMlu53Nhe2AovakTPEk1CxSVfm52keQSc6IdyFevEfiR3Qf4BE4jwQyWbzBOvJ9IO5BsB
 8qDtuW4UFJEvGKa3U3ur58HRszT01s9gadAWJbxnd6AZRidsNsX6zkHt.MLJ8dr3JFAX4Fw5yW9l
 xvx7vd4.nd2W94Os2tK3mJbmDZYNOvod37GDDnWnHgpwNaWX1uwDhnY0PZ9jcXCZZ20PGm_0HfcH
 BCSfZd8mZp4CnA1cYJxJgVGDt.xyBZrqbrqqw0BaLq1qhmmXvsji877gIfSF2
X-Sonic-MF: <luangruo@HIDDEN>
X-Sonic-ID: 003a373f-414b-47c7-a3f9-2e8594906389
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic303.consmr.mail.ne1.yahoo.com with HTTP; Sat, 1 Mar 2025 11:25:18 +0000
Received: by hermes--production-sg3-9fc94b8df-dn2wh (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID ae45061ec892192382789c61744c21ca; 
 Sat, 01 Mar 2025 11:25:11 +0000 (UTC)
From: Po Lu <luangruo@HIDDEN>
To: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
In-Reply-To: <87senyc840.fsf@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <87wmdc4osq.fsf@HIDDEN>
 <CAP+jDP6E=BdUHT3+w0g4QO1GYv5vDcx-VNmEPFp5UyLKhsCZow@HIDDEN>
 <87cyf44k7h.fsf@HIDDEN> <87o6yoar1m.fsf@HIDDEN>
 <8734fz39nx.fsf@HIDDEN> <874j0fo950.fsf@HIDDEN>
 <87senyc840.fsf@HIDDEN>
Date: Sat, 01 Mar 2025 19:25:06 +0800
Message-ID: <87r03hkn71.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Mailer: WebService/1.1.23369
 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo
Content-Length: 5238
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Michael Albinus <michael.albinus@HIDDEN>,
 Iurie Marian <marian.iurie@HIDDEN>, 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--=-=-=
Content-Type: text/plain

Pip Cet <pipcet@HIDDEN> writes:

> My understanding is it is safe to access an entire union at once, as the
> old code did, and that GCC concluded based on the undefined behavior
> elsewhere that the only possible union members were those with the holes
> in the right place.

I have reached the bottom of this unpleasant business.  The following
reproducer does not require enabling LTO or type punning (or casts at
all, come to that), just "gcc-15 -std=c99 -O3".


--=-=-=
Content-Type: text/plain
Content-Disposition: attachment; filename=reduction-single.c

#include <stdio.h>
#include <stdint.h>

enum event_kind
{
  NO_EVENT,
  ASCII_KEYSTROKE_EVENT,
  SELECTION_REQUEST_EVENT,
};

struct input_event
{
  enum event_kind kind;
  unsigned code;
  unsigned modifiers;
  long device;
};
struct selection_input_event
{
  enum event_kind kind;
  int *dpyinfo;
};
union buffered_input_event
{
  enum event_kind kind;
  struct input_event ie;
  struct selection_input_event sie;
};
void kbd_buffer_store_buffered_event ();
union buffered_input_event *get_kbd_fetch_ptr ();
void init_keyboard ();
enum
{
  KBD_BUFFER_SIZE = 1024,
};

union buffered_input_event kbd_buffer[KBD_BUFFER_SIZE];
union buffered_input_event *kbd_store_ptr;

void
kbd_buffer_store_buffered_event (union buffered_input_event *event,
     struct input_event *hold_quit)
{
  if (event->kind == ASCII_KEYSTROKE_EVENT)
    {
      *hold_quit = event->ie;
      return;
    }
  *kbd_store_ptr = *event;
}

void
init_keyboard (void)
{
  kbd_store_ptr = kbd_buffer;
}

union buffered_input_event *
get_kbd_fetch_ptr (void)
{
  return kbd_buffer;
}

static union buffered_input_event event_q[1];

static void
evq_flush (struct input_event *hold_quit)
{
  union buffered_input_event ev = event_q[0];
  kbd_buffer_store_buffered_event (&ev, hold_quit);
}

int
__attribute__ ((optimize (0)))
main (void)
{
  union buffered_input_event inev, result;
  struct input_event hold_quit;

  init_keyboard ();
  __builtin_memset (&inev, 0, sizeof inev);
  __builtin_memset (&hold_quit, 0, sizeof hold_quit);
  inev.sie.kind = SELECTION_REQUEST_EVENT;
  inev.sie.dpyinfo = (void *) (uintptr_t) -1;
  event_q[0] = inev;
  evq_flush (&hold_quit);
  __builtin_memcpy (&result, get_kbd_fetch_ptr (), sizeof inev);
  printf ("%lx %d\n", (uintptr_t) result.sie.dpyinfo,
   (int) hold_quit.kind);
  return 0;
}

--=-=-=
Content-Type: text/plain


GCC's intraprocedural SRA pass operates by collecting all references to
decls of aggregate type in a procedure, and creating a tree in which
every node represents all references to each decl which share an
identical offset and size such that the most general reference appears
nearest to the top.  In creating such a tree, it assumes that a sorting
function will arrange a vector of references in decreasing order of
generality: larger references appear before smaller ones, aggregate
references before complex or vector references, integral reference
before reals, references to types of greater precision before those of
lesser precision, and, all else being equal, the sorting is stabilized
by reference to the order in which the operand types are defined.
Accordingly, the first element of the vector is assumed to provide the
root of a tree.  The compiler proceeds by "totally scalarizing" a decl's
references from its root, if it is of record type and every field is
itself scalar or scalarizable, and scalarizing all statements that
reference the same decl with the same offset and size in the manner
previously defined.

Many properties of every reference to a declaration are fixed at this
time, such as whether the declaration is completely encompassed by
scalarized variables, which fails when a union or a struct is excluded
from a decl's access tree for being identical in offset and size, but
has a different data layout from the type of the access at its root.

In Emacs's case it should be possible to circumvent this problem by
creating an incomplete declaration of `union buffered_input_event'
before `struct input_event', so that the union may be defined first and
inhibit total scalarization, but this will not address the oversight in
GCC.  This eliminates the miscompilation, but also a minor class of
optimizations.  I believe this optimization must be re-engineered if it
is optimally to scalarize combinations of union and member references.

diff --git a/gcc/tree-sra.cc b/gcc/tree-sra.cc
index c26559edc66..edd9b477b39 100644
--- a/gcc/tree-sra.cc
+++ b/gcc/tree-sra.cc
@@ -2483,6 +2483,19 @@ sort_and_splice_var_accesses (tree var)
 		}
 	      unscalarizable_region = true;
 	    }
+	  else if (AGGREGATE_TYPE_P (access->type)
+		   && AGGREGATE_TYPE_P (ac2->type)
+		   && !types_compatible_p (access->type, ac2->type))
+	    {
+	      if (dump_file && (dump_flags & TDF_DETAILS))
+		{
+		  fprintf (dump_file, "Cannot scalarize the following region "
+			   "because data may be scalarized in an incompatible "
+			   "format.\n");
+		  dump_access (dump_file, access, false);
+		}
+	      unscalarizable_region = true;
+	    }
 	  else if (types_risk_mangled_binary_repr_p (access->type, ac2->type))
 	    {
 	      if (dump_file && (dump_flags & TDF_DETAILS))

--=-=-=--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 1 Mar 2025 10:21:53 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Mar 01 05:21:53 2025
Received: from localhost ([127.0.0.1]:33439 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1toJyi-0001Zr-Q7
	for submit <at> debbugs.gnu.org; Sat, 01 Mar 2025 05:21:53 -0500
Received: from mail-10631.protonmail.ch ([79.135.106.31]:34099)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <pipcet@HIDDEN>)
 id 1toJye-0001Yx-6T
 for 76559 <at> debbugs.gnu.org; Sat, 01 Mar 2025 05:21:50 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com;
 s=protonmail3; t=1740824501; x=1741083701;
 bh=rAFrVPT8apZ+Gz8MJF4uGzxeMbAtX95U9Rd84gYkGrc=;
 h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References:
 Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID:
 Message-ID:BIMI-Selector:List-Unsubscribe:List-Unsubscribe-Post;
 b=EqyHngOP4Kg9RdqtRhRLJP8br2xIVaRphzgqY6WVONpoHwjmWnFIr8s2Ozm36o8aw
 HxJ/wfcpHVGOCCMPRGTxvtgC4Q6L+E1hzQoLcRHmx+xAVPGGkL+cIrm49bETUup3Ox
 hsRidEc1x1ASxY1YRcKARKm5dzhAfGWBUC90bbORRJmpS9ASDQxNqyY9u7jxyzfRLW
 nytK3fcz1ICt2LePhsATvmGYFZBQyINusRwTkgKkAIMKty0g3vJV1aA2sLwmLfW8OP
 3PVsjASdCLOifad/VY1dA3huIcIu3ZK6qKweuvsHzQr1O02D55DydWSGVsJOAKa+Im
 lZGBJ40tg0cFg==
Date: Sat, 01 Mar 2025 10:21:38 +0000
To: Po Lu <luangruo@HIDDEN>
From: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#76559: 31.0.50;
 [-O3 + PGTK] Crash when 'copying as kill'/'killing word'
Message-ID: <87cyf16oh5.fsf@HIDDEN>
In-Reply-To: <87v7stl9n0.fsf@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <87wmdc4osq.fsf@HIDDEN>
 <CAP+jDP6E=BdUHT3+w0g4QO1GYv5vDcx-VNmEPFp5UyLKhsCZow@HIDDEN>
 <87cyf44k7h.fsf@HIDDEN> <87o6yoar1m.fsf@HIDDEN>
 <8734fz39nx.fsf@HIDDEN> <874j0fo950.fsf@HIDDEN>
 <87senyc840.fsf@HIDDEN> <87v7stl9n0.fsf@HIDDEN>
Feedback-ID: 112775352:user:proton
X-Pm-Message-ID: 2e875b41af5dcbcd658e51db13a4f1e93de85419
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Michael Albinus <michael.albinus@HIDDEN>,
 Iurie Marian <marian.iurie@HIDDEN>, 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

"Po Lu" <luangruo@HIDDEN> writes:

> Pip Cet <pipcet@HIDDEN> writes:
>
>> My understanding is it is safe to access an entire union at once, as the
>> old code did, and that GCC concluded based on the undefined behavior
>> elsewhere that the only possible union members were those with the holes
>> in the right place.
>
> BTW, if so, how do you explain this reproducer?  At no point in the
> code's execution is hold_quit ever read or written to.

That does seem to be an actual bug, where SRA does the wrong thing if a
function is marked with __attribute__ ((optimize (0))).  At first glance
(-fdump-tree-sra-details) it seems like the whole-structure access in
that function is ignored, which makes sense if the SRA pass isn't run
for a non-optimized function but still assumes it has looked at all
accesses.

So we should definitely report this (after reducing to a single file and
fixing the prototypes), and any of our suspicions about wrong behavior
for other code.

Please let us know the GCC bug number(s).

Pip





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 1 Mar 2025 03:20:41 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 28 22:20:41 2025
Received: from localhost ([127.0.0.1]:57147 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1toDP5-00085i-Js
	for submit <at> debbugs.gnu.org; Fri, 28 Feb 2025 22:20:40 -0500
Received: from sonic310-25.consmr.mail.ne1.yahoo.com ([66.163.186.206]:33445)
 by debbugs.gnu.org with esmtps
 (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2)
 (envelope-from <luangruo@HIDDEN>) id 1toDP1-00084x-BH
 for 76559 <at> debbugs.gnu.org; Fri, 28 Feb 2025 22:20:37 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740799228; bh=lWrtm47ecyz+d5eFR0thqF4yCTkJxcvYlWzPZtI/s8o=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To;
 b=uGo2Bx94wrld3/7vRlgGk3qcvNKj/eudcU+fmOCER6qL7v0srT2dGmDnoZ3HQRUch8DJeUs3JG2m6E2yMh/2hrMb9kYLCbUR6087ZZS5POwnmhgqb3d7EVoenUHMPlXWNUDtd1PF19C8gqosL4lRJ5gDb2dB27h2mvBMY4CnXyphBzFcUxY4XSK4CCDhLgFzUqA8546v4Gm8oQsU68uUgxnHGxeP6wMFL+E7cv8EWk0JW7PuycG+5llDb5pdJMmFS341Tlwh5ArZSuFHw8Qoqxvcyk8kEXvAtNFqRNPwlmv9FbRhWQq6fo3fHMzvH7DCpxY3NDMiUmzrL6Q+LxZ0Bw==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740799228; bh=pqYF05gWrS0TwocpJUsAE52yK+FMF4HWWAkb38BeHap=;
 h=X-Sonic-MF:From:To:Subject:Date:From:Subject;
 b=t0h3sioNkNXTgj5ED/4WIK755DNQo3c/wrgipT7mQadSt88rMrrKLav2XjKCBh2VTZnTN69QQShCcxUzjvYNJtocTEZDrR3rJhpRsqTa2tui9RQjGGBzRpwa2i//qhPUMBKjH6xXSXPW4afBtKrdEe6xWhcPxv01cqH4CNmuo3gF5nlgAWv7YAKwXI+LeKV/D2liHWKjt/PM4PCPpjVoDeAIw3xvR477GyLa27J1ShbPms8VxuoCbu3sSIGeKTgXhUzUOIFgWM9uz/K02BbZfN9bKGGKpYvqEl0T+4dMHET3aYIquRWoD62rcrWtjmcJ8Atf5Hwl9n1BnwaCX6lQeg==
X-YMail-OSG: EuCcs9sVM1kiB3W7Qwd_SaZu7ODFQEjYZk3qYSA_alm9vMpkBC2A9dz72mDr8gA
 rv4.y5z5o38HyaM7zUyjzuBKcqqt4.XMWYHopj6efq3ePewidg0e8qhOfy.94l2NomZPE6w9CChX
 znfj2BftOiyexMv23Tq3Gz1ANBk0DzdvFWQ2nhTX2nn_IgmMOUiAG_sEq_8RPxoOtyyO9_QMVypK
 U0FNQxvx4jk5T0bEfRsNiwBIwnhEXd036MglSifIdSdt6JXLMSfkkAKUD_5DKuBoyhQwrbEHy89W
 I2Whz2Kfnsgk2E6JZLhoOOlwJK_kzrlWQSWTFTR2Pw7eQJdzRJ1cR7miTnv8.bIST5NE.nTvzzgu
 davEP7cBCHFB2uESQonPE9eIGZfkVWTqQ5gLRNJs0pz7hwQZUbW7SMtAZX5imPuwKQWvN.xvbgEs
 T0BJkTEOKftW5JaV2XfZZokW.QxKif9JibhwKyQR6G_x04iD5jEaeJ5A_Cuq7.Fvm6TudoGgfCfE
 S37jWn4G80wuMgvKkk8ip466QQ8MVbJOC8hIfbQUagc1kFVZJMdVk71MVR0kAb8fz5uXlyG.v1pW
 4D.zcX.yEOmJUp4PWiZx0kzboC_eCGmjfxGI5MdIeZVcfs8erES9DbNWqHfBuYcu94L41yDSS46R
 m8MdQ_8Qm2JemgA0o57cL17k8NCIMqS4iXJkY_BqKB83Weu7I72dV7P4.KGek6je7MFjtTT7dWF3
 e.klR7V20vFzr0gFf015XTq5Wvr7EHLjzINRC4.cYljyDBLRNK_PlJmCX.U1NXtUTYN77ZrLpl6L
 mWry6MLkMqUHPFG1MxrMtFsYL_TKDlOtksjxIFdNl0FCsmDMuoh9PScFaLU2jRcb7uEIiaxNjjJo
 0yrP6mWdKRHBC0L0axxGfnUz9X1GIEpcvPclq0.Yc0fLnDi52yoET.9.1lA6kf.MpKUyze9RNTMq
 AJiBjLLUkgYspJ9uT0zuUnxGqvqkeFMhr9ikuaMMzoh2gVIAEBaKGUmHbcDXv23V5S4KiJ.huQPq
 CegITOynsGa9Gi51ShyQY0Nip5PzXl4ujAScEOmcR6De0y2jcH9GLg6mVqnspw37r_3Yj2Pc5ZFm
 aRJ_a4PcRv2fTDH792ONJ7lwPwE3X7pdqpzx9pP0oIrnj8QeroxDxaeffGW8g2hfPTc8TuHYpKLa
 kpbkmtsqKxJnfjLR0lk2R_IgmWvCJoVPVKhTn9GipCMb_5OUTqXWtN7bE1.w3Pbev5eQ41b3NDVx
 ov.ZjLd.VjzUAWiL9iHAPSMotDTcUD1DDetoevHJYcDOIoEYB7c111zfyqlxrkcxZ0lLx4STf7OP
 5v4KVNrYulCNq14jxfnDia8hgPyEAGVk3JPAOmIlp8ytc9Y6S8SzX0y6Sesxs.Oni_gWkqmiW0zI
 Wds8oXWqFMKqxg2Sbz1HlH5ZWHwvBNwwNd7JafYGw2hrlotAw7.1lI1RcU2d8IteQf0cOqn7sxEM
 QbEXco56Rz_XgNCzB0Pe634KvqZ3ajk4.tLrzJra3qOWpp8rihC1UdBknc6zNs26rRq41a0QBs1Q
 PtdtC2YC2HGGEcFMJayCybIrQ4__wjsBhgt.NnVG.TjkeYDMX2gf61Q5UhtxYoPaC.Z7PpTq65WV
 uFdt6IIR_gPIWG655Kak9q_1oEsd_gAUyofumU853JZQ_meQRdBz506Iqy8K6wnuIf3951cQlzB2
 2yM5pxkeL85xVLyWwTeTvBn1D_8TEdK5W2sDHZ2w3FWomBaC5f4g9AJVeSp_hFyVV2h6VGsCUnEd
 Q8oELkw85mzfQeq7bb7wdFWrI9irFOeiZFoKRi3UoghyO3rYqGxpb2bEBstYXX1x54OvjIkz4QDr
 4lC3kUiEP_i9sFsPM2if5IUuejszVuvZQ0NX3XP74WoB2jI0DrgmsZfTCibKzaaRiEVv0zyEBpTv
 qGa.L8lMCogvgO9fwIZFBow4Zi0kJ3vIjfENqUgU.2713izXh99ZXpXUKYHRDgUsbkob_m1Dkwfr
 5e9iQxDg5nPlam8NGSOqAL56kpuTSJ0PumqtW2gIiz4HRkp1xFY0mYCnvQuwT51wKYDnB9sWa9D2
 esmN9rPuWZrxVXMIh79f1siiT9zmKBtFfy4aRcUJJukVhUhXpmMOVYYtrHRdxywUgSe1d.1rX2tS
 uyYRCFhCv7bLbIjUesPBgAXXN5IgZb1wBmqRwQu5LqPubpuJam2YOosb2Nb9u.wA.oLrbiij.OX2
 TsS8TUQt6qRehJomYee0L5Hcq5JdwSN2W1toj5TuS1ybeiIKSY4kN84k-
X-Sonic-MF: <luangruo@HIDDEN>
X-Sonic-ID: c6df57fc-21c7-45bc-8cd9-dc5bacb81b96
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic310.consmr.mail.ne1.yahoo.com with HTTP; Sat, 1 Mar 2025 03:20:28 +0000
Received: by hermes--production-sg3-9fc94b8df-h7dct (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID 880cf0922a4389417f16318f902da7a8; 
 Sat, 01 Mar 2025 03:20:24 +0000 (UTC)
From: Po Lu <luangruo@HIDDEN>
To: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
In-Reply-To: <87senyc840.fsf@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <87wmdc4osq.fsf@HIDDEN>
 <CAP+jDP6E=BdUHT3+w0g4QO1GYv5vDcx-VNmEPFp5UyLKhsCZow@HIDDEN>
 <87cyf44k7h.fsf@HIDDEN> <87o6yoar1m.fsf@HIDDEN>
 <8734fz39nx.fsf@HIDDEN> <874j0fo950.fsf@HIDDEN>
 <87senyc840.fsf@HIDDEN>
Date: Sat, 01 Mar 2025 11:20:19 +0800
Message-ID: <87v7stl9n0.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Mailer: WebService/1.1.23369
 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo
Content-Length: 2610
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Michael Albinus <michael.albinus@HIDDEN>,
 Iurie Marian <marian.iurie@HIDDEN>, 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--=-=-=
Content-Type: text/plain

Pip Cet <pipcet@HIDDEN> writes:

> My understanding is it is safe to access an entire union at once, as the
> old code did, and that GCC concluded based on the undefined behavior
> elsewhere that the only possible union members were those with the holes
> in the right place.

BTW, if so, how do you explain this reproducer?  At no point in the
code's execution is hold_quit ever read or written to.


--=-=-=
Content-Type: text/plain
Content-Disposition: attachment; filename=reduction.h

enum event_kind
{
  NO_EVENT,
  ASCII_KEYSTROKE_EVENT,
  SELECTION_REQUEST_EVENT,
};
#define ENUM_BF(TYPE) enum TYPE
struct input_event
{
  ENUM_BF (event_kind) kind;
  unsigned code;
  unsigned modifiers;
  long device;
};
struct selection_input_event
{
  ENUM_BF (event_kind) kind;
  int *dpyinfo;
};
union buffered_input_event
{
  ENUM_BF (event_kind) kind;
  struct input_event ie;
  struct selection_input_event sie;
};
void kbd_buffer_store_buffered_event ();
union buffered_input_event *get_kbd_fetch_ptr ();
void init_keyboard ();
enum
{
  KBD_BUFFER_SIZE = 1024,
};


--=-=-=
Content-Type: text/plain
Content-Disposition: attachment; filename=reduction1.c

#include "reduction.h"

union buffered_input_event kbd_buffer[KBD_BUFFER_SIZE];
union buffered_input_event *kbd_store_ptr;

void
kbd_buffer_store_buffered_event (union buffered_input_event *event,
				 struct input_event *hold_quit)
{
  if (event->kind == ASCII_KEYSTROKE_EVENT)
    {
      *hold_quit = event->ie;
      return;
    }
  *kbd_store_ptr = *event;
}

void
init_keyboard (void)
{
  kbd_store_ptr = kbd_buffer;  
}

union buffered_input_event *
get_kbd_fetch_ptr (void)
{
  return kbd_buffer;
}

--=-=-=
Content-Type: text/plain
Content-Disposition: attachment; filename=reduction.c

#include <stdio.h>
#include <stdint.h>
#include "reduction.h"

static union buffered_input_event event_q[1];

static void
evq_flush (struct input_event *hold_quit)
{
  union buffered_input_event ev = event_q[0];
  kbd_buffer_store_buffered_event (&ev, hold_quit);
}

int
__attribute__ ((optimize (0)))
main (void)
{
  union buffered_input_event inev, result;
  struct input_event hold_quit;

  init_keyboard ();
  __builtin_memset (&inev, 0, sizeof inev);
  __builtin_memset (&hold_quit, 0, sizeof hold_quit);
  inev.sie.kind = SELECTION_REQUEST_EVENT;
  inev.sie.dpyinfo = (void *) (uintptr_t) -1;
  event_q[0] = inev;
  evq_flush (&hold_quit);
  __builtin_memcpy (&result, get_kbd_fetch_ptr (), sizeof inev);
  printf ("%lx %d\n", (uintptr_t) result.sie.dpyinfo,
	  (int) hold_quit.kind);
  return 0;
}

--=-=-=--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 1 Mar 2025 00:08:50 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 28 19:08:50 2025
Received: from localhost ([127.0.0.1]:54943 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1toAPQ-0002kL-UU
	for submit <at> debbugs.gnu.org; Fri, 28 Feb 2025 19:08:50 -0500
Received: from sonic317-33.consmr.mail.ne1.yahoo.com ([66.163.184.44]:42431)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <luangruo@HIDDEN>)
 id 1toAPN-0002jJ-2e
 for 76559 <at> debbugs.gnu.org; Fri, 28 Feb 2025 19:08:46 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740787718; bh=QVJeJQAi7/ylQZppRR5LDdLAd0kmSGFQ0Xx5BK2KDt0=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To;
 b=VmDsgj+ZjAt9BTm6rPcxAb3hRPNzRy9opfE1obQeqR342OkDRgKl/yAF3NhCe/89sfDMYsUkWHXBZ59db2p4g4pIir/2lt5BNMlrff5HbOo3LGXYcHrkbR8Ty1JkpLsK5v5gUtMuzFQeTTqp6Q4EOJRWxf/UJYnrww1R1AQ+sQFXSFm+StRkJd/+WlwQv/4JsV/HuLTOxrtE5YoCJYzcA48GMePg0L0xoLSeVeNAnhX4EPdJV/Vlf+v9hWJHHk/DrdcyE4XRC0oPRQzpxUquQWoip04HqZljp/0XKL/7XkX/KhcZ9Hu+5I35Tr0InurfGvSKkHl4dGvfL4oa2D/aLw==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740787718; bh=WXhZzFLGGgq6OOkltWJQn11nQ1vGMXPqFnbRTYwYHVP=;
 h=X-Sonic-MF:From:To:Subject:Date:From:Subject;
 b=CVY6BdF6niWUARqRFAXdJh7GBJM9U+0/Qx9Lr6l2fpS7gdIC/ejoIzDa6Lw2JAo1xCXfqtb0IF1XtZvabsWLNDc/nurAwx6Vledv0Ly5cr2W+Tf1UVhVOFe/Lz91V3A8LTbOEmVqrJDGEWey1JgzqSgvVzIn7H6qUmWcyqE2mnZUyw3545QSs6MmBLH//fGtUc/WWj+u5xDjXftmueyifmi1eBsbLBV8LxREi1sHmONrqgOiKTWJZuCuxi7Gywg2BNDqow2Cpx9W6MYwGQxOclibBVSk6lidZR9vcMclalC+r8YW8eSAEthAgypjo8ZMK//x9SkH9ufG7qp8UGFNdA==
X-YMail-OSG: SPb3aFsVM1no5Ah6pm_vT2vyOKpUCWy3RymTvVbaloESlJqlQ_KAs6qyxv6.Bzr
 CB45XD0ulFfY8D_wY7OtFAXDtZ0EwECP_WfcQ8mjVg4zDLjrikuUrr4EjS3l2_E3JFgqsYqYx4VL
 nY3C7ZYqyXOgVoORNNyYsYZh0DDyGK5_aunJ7NUXvumZLjwX2raAA6nxbNOtrNmX8yGz8gq6oqOE
 J5jJge8ntjwyrUdG5I1gXiugG1ZVRRLrBAinEhYUAwKDWzY5e0qQurD0Xwr3_opLVU_zS1Gnfa0I
 Rl6NbOwt6neBSU70k6LlbQ_rkSAeLig_.pQge1APBNDTM57ysuD3b9IwsfQpxVwp674N9yHzd6E1
 EfrdRJDBPIQuOvGinoIAxfapNLJGrxiXnTOy9fWG6JISQCxn6XzKAJkHUSCiSbM0_1XMg6YfCyRz
 dSo5ObI0_V3NpeDi9iTSEX0nvf8pVdMO9yFCeKM.HnOeWvy.JyKclK7W1tSpOytsb6n.OmGxeA7c
 bM6bCxpjYEPjo58h80Yastsyx.TyZFGXIWTK5fCKExfej4QCQ12oNvBR_Op0k5Gz0oRKfO3O71Nk
 .7bdwcqUodeWu72c3NLkgfJEJu65QlDDQ2DQ7aYuFM3liOdRPRzNrN7T52jxlij538y_dctXJm93
 LklEcj_HcSUbJAbG_iRaa7IEABdZtdSQODwzKYitwgDxP7481DEJceatmaaA5GNt4fDnEvyUPkDD
 wSf5MCgP0mUfbB_BBhEe88PLG1BSN0cAl2S_CxlJyx7nLQNfGWl_3OnbOb00xjJhkK8nobPtnnCU
 rtXBCRN7eDCJ.cOzM8Y5iAPV0UXc392hgrzIgLTT2IUhIOXJDxSj3M6wjQ3Bd7NVmbAtkgrfGMSQ
 n7sTml_cx._aC.yG3GylthsDCCYlxiH3JxIVFL6RH2bmpXuznVfL_h8DS5NjKHCZuI.seLTTSbNX
 XHvpPFeed.5FqIeGG5cNVq2jwZfrVEYLGaO8lyk51E.lnPF.X2a5PtvDjPtPa5nNYzsSCnyupCsQ
 kpThcYQAHbMfjTzKoQwODjHS1bIcUj5PUdt6IL8_K6ZBQ_SfDD8nf6lBYhVs9DFRLZ.nr.ELAHXr
 2ugD15rlXvCyWi5EgYWssknuvfknYnPDHefyo09AEasNXlz5LExeRvSuMOEiUZYseljiFDZj_0rG
 GnGPRaQisQmORaF2pF3HGT7.Nye2su068o4FFyMbVNpAEwkt7Z1vl97AsGmbEffWP4l31bYEqCd5
 B6KWcSULlTCF_.s9y5Kn8Wz6OKqleb_AMvEEPRNknwxKUuIKwKRqLIILx30m.aXam6.OA7S39cFI
 7JHYphLf0ridYkAeNr7YJydkM5qTZz0WHoz4nieXB0syTqd_ybd5XwnCkN5.4qCYlxeDUOAPHL8N
 fZf20KBN6xcN7WCnQjxnlSIDZ1EYXf47aBkRRE2ElGBlfSdDJuJgc6QBwAwpZVsruDGYkkVqHUQ7
 x3caHveIv5.CSNTFpKg76OUfk8qTkejQ4G78kfccmObt9.IChiG6R__mIrMxAlGSd9ArFys.W_g6
 JFjBLsp_daFbB.XHJthmvVoRWx6EXPp4jIfwMUsz9XZxCGAFrqBEMBsE2vJs.4gDK8SI4y_TrWDp
 zF.47tMVDChI60oxeh6Stce.sOyHODxjJR0ZTsHB0.ug5HV.n57UTsvxL307zDCmat3MceXgPc0Y
 5TCizcYNcN.QYKD6DC.E9uoudM0h6Gy7w9tw4w7IVNnKLs80mEuA.cMQLbSi50uH0szA0SUCNOxr
 _lKHqWiELUvlRm9ori4AURUS9Pr08pN1TIEZpR8Bf_AVzu48SkT0a3iY.Bg4fNxpWiz91vmCjvmy
 KnoTfqFeAQ5gn4RK8fZHrTksBmzi_2dEaRvUfqvQ6l_ZeaHSNX1eVvf_.K0SOpSZpum6o77dEmFY
 DuVbQG9GwJCqOeqQaYy6hb__pSkhebCyXiKfVpDC8dtpDbdsCe7UbsRaKYZUUepM5bZX.xrW8RnO
 HmvNzeEAoxRdAzDqPhjeNNMbHbDPf.BpjGvK_EsKJTu2hNl5LptBVrjpkR.wcXWWo_S7Ub66raFi
 ebpNFipUo6OksopkSulC4IIXMgFYchHPZ9gsGB.sQYs8Euf0OsTN4L08jbwPK0oXBgdPU16x6cqW
 _vHdRBOX9dOl78hr6PRdT4dcynaoqKmF7ZIGSye68AAW57WeSVRqe_GakPT8sEFlHuAUhVXkr2ce
 0Fb03wzlgQlNlJNK7iMkW8YhY6IKY9OWqvqM6pQ--
X-Sonic-MF: <luangruo@HIDDEN>
X-Sonic-ID: cd638a46-92a4-42f8-ac7d-99639ca2b774
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic317.consmr.mail.ne1.yahoo.com with HTTP; Sat, 1 Mar 2025 00:08:38 +0000
Received: by hermes--production-sg3-9fc94b8df-thkxk (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID de62b07bd246a373b380f84650db6618; 
 Sat, 01 Mar 2025 00:08:33 +0000 (UTC)
From: Po Lu <luangruo@HIDDEN>
To: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
In-Reply-To: <87senyc840.fsf@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <87wmdc4osq.fsf@HIDDEN>
 <CAP+jDP6E=BdUHT3+w0g4QO1GYv5vDcx-VNmEPFp5UyLKhsCZow@HIDDEN>
 <87cyf44k7h.fsf@HIDDEN> <87o6yoar1m.fsf@HIDDEN>
 <8734fz39nx.fsf@HIDDEN> <874j0fo950.fsf@HIDDEN>
 <87senyc840.fsf@HIDDEN>
Date: Sat, 01 Mar 2025 08:08:29 +0800
Message-ID: <s1ro6ylwr2a.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Mailer: WebService/1.1.23369
 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo
Content-Length: 2267
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Michael Albinus <michael.albinus@HIDDEN>,
 Iurie Marian <marian.iurie@HIDDEN>, 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Pip Cet <pipcet@HIDDEN> writes:

> My understanding is it is safe to access an entire union at once, as
> the old code did, and that GCC concluded based on the undefined
> behavior elsewhere that the only possible union members were those
> with the holes in the right place.

If a union is accessed from a pointer to a struct, the two types are
incompatible and the result may be a trap representation.  AFAIK.  By
contrast, it is perfectly alright for a union pointer to alias one of
its members, according to 6.5 Expressions: "an aggregate or union type
that includes one of the aforementioned types among its members
(including, recursively, a member of a subaggregate or contained
union)".

>> I propose this patch:
>>
>> diff --git a/src/keyboard.c b/src/keyboard.c
>> index b22814d702d..0c83880c491 100644
>> --- a/src/keyboard.c
>> +++ b/src/keyboard.c
>> @@ -3807,7 +3807,13 @@ kbd_buffer_store_buffered_event (union buffered_input_event *event,
>>    union buffered_input_event *next_slot = next_kbd_event (kbd_store_ptr);
>>    if (kbd_fetch_ptr != next_slot)
>>      {
>> -      *kbd_store_ptr = *event;
>> +#if defined HAVE_X11 || defined HAVE_PGTK
>> +      if (event->kind == SELECTION_REQUEST_EVENT
>> +	  || event->kind == SELECTION_CLEAR_EVENT)
>> +	kbd_store_ptr->sie = event->sie;
>> +      else
>> +	kbd_store_ptr->ie = event->ie;
>> +#endif /* HAVE_X11 || defined HAVE_PGTK */
>>        kbd_store_ptr = next_slot;
>>  #ifdef subprocesses
>>        if (kbd_buffer_nr_stored () > KBD_BUFFER_SIZE / 2
>
> While the patch does happen to invoke more undefined behavior in a way
> which prevents this particular bug, I don't think we should apply it.
> The old code in this specific place was perfectly okay (and the new
> code contains a bug if neither HAVE_X11 nor HAVE_PGTK is defined).
>
> I still think the patch I posted, which avoids the problem by removing
> what appears to be undefined behavior, is a better idea; but I also
> still don't understand how undefined behavior in one code path infects
> other code paths that don't go through the function.

But I don't believe there's any undefined behavior beyond reading a
union from a pointer to a struct object.  It is definitely sanctioned
for a union to alias one of its members.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 28 Feb 2025 18:34:19 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 28 13:34:19 2025
Received: from localhost ([127.0.0.1]:52625 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1to5Bi-00076T-Bb
	for submit <at> debbugs.gnu.org; Fri, 28 Feb 2025 13:34:19 -0500
Received: from mail.cs.ucla.edu ([131.179.128.66]:40432)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eggert@HIDDEN>)
 id 1to5Bf-00075a-7e
 for 76559 <at> debbugs.gnu.org; Fri, 28 Feb 2025 13:34:16 -0500
Received: from localhost (localhost [127.0.0.1])
 by mail.cs.ucla.edu (Postfix) with ESMTP id F0CCC3C020F46;
 Fri, 28 Feb 2025 10:34:08 -0800 (PST)
Received: from mail.cs.ucla.edu ([127.0.0.1])
 by localhost (mail.cs.ucla.edu [127.0.0.1]) (amavis, port 10032) with ESMTP
 id SN6A7c13LzqN; Fri, 28 Feb 2025 10:34:08 -0800 (PST)
Received: from localhost (localhost [127.0.0.1])
 by mail.cs.ucla.edu (Postfix) with ESMTP id 5C7F53C020F7D;
 Fri, 28 Feb 2025 10:34:08 -0800 (PST)
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.cs.ucla.edu 5C7F53C020F7D
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs.ucla.edu;
 s=9D0B346E-2AEB-11ED-9476-E14B719DCE6C; t=1740767648;
 bh=orf6HKX6u2f9hgghgzuBpOx8i/GnoE/a9TSJlwrU63k=;
 h=Message-ID:Date:MIME-Version:To:From;
 b=RmA0HkfsCc8dkrbVi1h8BsGVEUisI4FXvV+6D2pf4RsQuB5ghmYAbePecLllgp0IT
 uPIGkMoNYbexl1s5nzSwe8eYJQcyF4MYSSkeTuxRW9RR8JWADV2r6YWmOoPba7S8R9
 8qsESZ+MD3DhRRXIz988fEAAXkgWG3Pgm7jgO0nqJkeqb9tYECJJYgDlFdqjFTX1nh
 R5VHg3XdIs/nJYnFCGWcTR33JA/2ewgfJUWcrNGuKVDS+4wK0BV95Y6RL9Y5NTp7zI
 3oc5l4Bfvfd8nHHGylJnpu/7OAHbPACKPiXOC5NaSXDH0K2kvWxXi5hOgpT8IxO4Jt
 C27B+3bt+Tquw==
X-Virus-Scanned: amavis at mail.cs.ucla.edu
Received: from mail.cs.ucla.edu ([127.0.0.1])
 by localhost (mail.cs.ucla.edu [127.0.0.1]) (amavis, port 10026) with ESMTP
 id PidVFoG1ES0I; Fri, 28 Feb 2025 10:34:08 -0800 (PST)
Received: from [192.168.254.12] (unknown [47.147.225.25])
 by mail.cs.ucla.edu (Postfix) with ESMTPSA id 2361C3C020F46;
 Fri, 28 Feb 2025 10:34:08 -0800 (PST)
Content-Type: multipart/mixed; boundary="------------Z2V4GLnLEaroX7tPKeMNaxbp"
Message-ID: <2b5ac4cc-ea40-416a-9e12-9cedd8172a59@HIDDEN>
Date: Fri, 28 Feb 2025 10:34:07 -0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
To: Po Lu <luangruo@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN> <86tt8fu6dh.fsf@HIDDEN>
 <87o6yn1st8.fsf@HIDDEN>
 <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN>
 <s1ra5a70vwv.fsf@HIDDEN>
Content-Language: en-US
From: Paul Eggert <eggert@HIDDEN>
Organization: UCLA Computer Science Department
In-Reply-To: <s1ra5a70vwv.fsf@HIDDEN>
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Pip Cet <pipcet@HIDDEN>, iura.mail@HIDDEN,
 Stefan Kangas <stefankangas@HIDDEN>, michael.albinus@HIDDEN,
 Eli Zaretskii <eliz@HIDDEN>, 76559 <at> debbugs.gnu.org, marian.iurie@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

This is a multi-part message in MIME format.
--------------Z2V4GLnLEaroX7tPKeMNaxbp
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 2025-02-27 16:12, Po Lu wrote:
>>      kbd_buffer_store_buffered_event ((union buffered_input_event *) e=
vent,
>> 				     hold_quit);
>>    }
>>
>> That cast is invalid and the resulting code need not work as one might
>> expect with a circa 1978 C compiler.
> The cast is valid.  It is accessing a union buffered_input_event from
> the resultant pointer that is not.
>=20
> "... an aggregate or union type that includes one of the aforementioned
> types among its members (including, recursively, a member of a
> subaggregate or contained union), or ..."

True, the later accessing is undefined as per C23 =C2=A76.5.1 =C2=B67. Bu=
t the=20
patch you proposed still does that sort of accessing, as the code still=20
accesses event->kind when event is a union pointer not a struct pointer.=20
(Also, the patched code doesn't copy the struct input_event on platforms=20
where ! (HAVE_X11 || HAVE_PGTK); I assume that wasn't intended.)

One littler thing. The pointer cast (even without any further access) is=20
undefined as per C23 =C2=A76.3.2.3 =C2=B67 if the original pointer is not=
=20
correctly aligned for the cast's type. Although we have a static_assert=20
that the alignment is OK, we don't need that assumption or its=20
static_assert if we fix the more-important accessing problem.

So I propose the attached patch instead, to fix the above.
--------------Z2V4GLnLEaroX7tPKeMNaxbp
Content-Type: text/x-patch; charset=UTF-8;
 name="0001-Fix-union-pointer-aliasing-when-storing-events.patch"
Content-Disposition: attachment;
 filename*0="0001-Fix-union-pointer-aliasing-when-storing-events.patch"
Content-Transfer-Encoding: base64

RnJvbSBiYjUyYjA2Nzk1ZjMzMzQ2ZmYzMzBhNmE0ODcxZGY1YjBiMzRkZTRlIE1vbiBTZXAg
MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEVnZ2VydCA8ZWdnZXJ0QGNzLnVjbGEuZWR1
PgpEYXRlOiBGcmksIDI4IEZlYiAyMDI1IDEwOjI5OjE4IC0wODAwClN1YmplY3Q6IFtQQVRD
SF0gRml4IHVuaW9uIHBvaW50ZXIgYWxpYXNpbmcgd2hlbiBzdG9yaW5nIGV2ZW50cwoKVGhp
cyBmaXhlcyBCdWcjNzY1NTkuCiogc3JjL2tleWJvYXJkLmMgKGtiZF9idWZmZXJfc3RvcmVf
YnVmZmVyZWRfZXZlbnQpOiBBY2NlcHQgZW51bQpldmVudF9raW5kIGFuZCB2b2lkIHBvaW50
ZXIgaW5zdGVhZCBvZiBhIHNpbmdsZSB1bmlvbiBwb2ludGVyLgpBbGwgY2FsbGVycyBjaGFu
Z2VkLgooaXNfaWdub3JlZF9ldmVudF9raW5kKTogQWNjZXB0IGVudW0gZXZlbnRfa2luZCwg
bm90IGEgcG9pbnRlciB0bwp0aGUgZXZlbnQuICBBbGwgY2FsbGVycyBjaGFuZ2VkLgoqIHNy
Yy9rZXlib2FyZC5jIChrYmRfYnVmZmVyX3N0b3JlX2J1ZmZlcmVkX2V2ZW50KToKKiBzcmMv
a2V5Ym9hcmQuaCAoa2JkX2J1ZmZlcl9zdG9yZV9ldmVudF9ob2xkKToKTWFrZSB0aGUgcG9p
bnRlciBhIHBvaW50ZXItdG8tY29uc3Qgd2hpbGUgd2UncmUgYXQgaXQuCiogc3JjL2tleWJv
YXJkLmggKGtiZF9idWZmZXJfc3RvcmVfZXZlbnRfaG9sZCk6CldlIG5vIGxvbmdlciBuZWVk
IHRoZSBzdGF0aWNfYXNzZXJ0IG9yIHRoZSBjYXN0LgoqIHNyYy9wZ3RrdGVybS5jIChwZ3Rr
X3NlbGVjdGlvbl9ldmVudCk6IEZpeCBhIGNsb3NlbHkgcmVsYXRlZCBidWcKd2hlcmUgd2Ug
aW5pdGlhbGl6ZWQgdGhlIHdyb25nIHVuaW9uIG1lbWJlci4KLS0tCiBzcmMvYW5kcm9pZHRl
cm0uYyB8ICA0ICsrLS0KIHNyYy9ndGt1dGlsLmMgICAgIHwgIDMgKystCiBzcmMva2V5Ym9h
cmQuYyAgICB8IDU0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0t
LS0tLS0tCiBzcmMva2V5Ym9hcmQuaCAgICB8ICA5ICsrKy0tLS0tCiBzcmMvcGd0a3Rlcm0u
YyAgICB8ICA0ICsrLS0KIHNyYy94dGVybS5jICAgICAgIHwgIDIgKy0KIDYgZmlsZXMgY2hh
bmdlZCwgNDYgaW5zZXJ0aW9ucygrKSwgMzAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv
c3JjL2FuZHJvaWR0ZXJtLmMgYi9zcmMvYW5kcm9pZHRlcm0uYwppbmRleCAzY2I5ZWFiMzYw
Ni4uZTJiYzZkYjE2YWMgMTAwNjQ0Ci0tLSBhL3NyYy9hbmRyb2lkdGVybS5jCisrKyBiL3Ny
Yy9hbmRyb2lkdGVybS5jCkBAIC0xMDg0LDcgKzEwODQsNyBAQCBoYW5kbGVfb25lX2FuZHJv
aWRfZXZlbnQgKHN0cnVjdCBhbmRyb2lkX2Rpc3BsYXlfaW5mbyAqZHB5aW5mbywKIAkJICBp
bmV2LmllLmNvZGUgPSA2NjsKIAkJfQogCi0JICAgICAga2JkX2J1ZmZlcl9zdG9yZV9idWZm
ZXJlZF9ldmVudCAoJmluZXYsIGhvbGRfcXVpdCk7CisJICAgICAga2JkX2J1ZmZlcl9zdG9y
ZV9idWZmZXJlZF9ldmVudCAoaW5ldi5pZS5raW5kLCAmaW5ldiwgaG9sZF9xdWl0KTsKIAkg
ICAgfQogCiAJICBjb3VudCArPSBuY2hhcnM7CkBAIC0xODE3LDcgKzE4MTcsNyBAQCBoYW5k
bGVfb25lX2FuZHJvaWRfZXZlbnQgKHN0cnVjdCBhbmRyb2lkX2Rpc3BsYXlfaW5mbyAqZHB5
aW5mbywKICBPVEhFUjoKICAgaWYgKGluZXYuaWUua2luZCAhPSBOT19FVkVOVCkKICAgICB7
Ci0gICAgICBrYmRfYnVmZmVyX3N0b3JlX2J1ZmZlcmVkX2V2ZW50ICgmaW5ldiwgaG9sZF9x
dWl0KTsKKyAgICAgIGtiZF9idWZmZXJfc3RvcmVfYnVmZmVyZWRfZXZlbnQgKGluZXYuaWUu
a2luZCwgJmluZXYsIGhvbGRfcXVpdCk7CiAgICAgICBjb3VudCsrOwogICAgIH0KIApkaWZm
IC0tZ2l0IGEvc3JjL2d0a3V0aWwuYyBiL3NyYy9ndGt1dGlsLmMKaW5kZXggMDc3MDg3NGVi
NDAuLmY2YTIxNWUwZTkwIDEwMDY0NAotLS0gYS9zcmMvZ3RrdXRpbC5jCisrKyBiL3NyYy9n
dGt1dGlsLmMKQEAgLTY1NDcsNyArNjU0Nyw4IEBAIHhnX3dpZGdldF9rZXlfcHJlc3NfZXZl
bnRfY2IgKEd0a1dpZGdldCAqd2lkZ2V0LCBHZGtFdmVudCAqZXZlbnQsCiAgIGlmIChpbmV2
LmllLmtpbmQgIT0gTk9fRVZFTlQpCiAgICAgewogICAgICAgeGdfcGVuZGluZ19xdWl0X2V2
ZW50LmtpbmQgPSBOT19FVkVOVDsKLSAgICAgIGtiZF9idWZmZXJfc3RvcmVfYnVmZmVyZWRf
ZXZlbnQgKCZpbmV2LCAmeGdfcGVuZGluZ19xdWl0X2V2ZW50KTsKKyAgICAgIGtiZF9idWZm
ZXJfc3RvcmVfYnVmZmVyZWRfZXZlbnQgKGluZXYuaWUua2luZCwgJmluZXYsCisJCQkJICAg
ICAgICZ4Z19wZW5kaW5nX3F1aXRfZXZlbnQpOwogICAgIH0KIAogICBYTm9PcCAoRlJBTUVf
WF9ESVNQTEFZIChmKSk7CmRpZmYgLS1naXQgYS9zcmMva2V5Ym9hcmQuYyBiL3NyYy9rZXli
b2FyZC5jCmluZGV4IGIyMjgxNGQ3MDJkLi43N2U1NTdlODUyZiAxMDA2NDQKLS0tIGEvc3Jj
L2tleWJvYXJkLmMKKysrIGIvc3JjL2tleWJvYXJkLmMKQEAgLTQwOCw3ICs0MDgsNyBAQCAj
ZGVmaW5lIFJFQURBQkxFX0VWRU5UU19JR05PUkVfU1FVRUVaQUJMRVMJKDEgPDwgMikKIHN0
YXRpYyB2b2lkIGRlbGl2ZXJfdXNlcl9zaWduYWwgKGludCk7CiBzdGF0aWMgY2hhciAqZmlu
ZF91c2VyX3NpZ25hbF9uYW1lIChpbnQpOwogc3RhdGljIHZvaWQgc3RvcmVfdXNlcl9zaWdu
YWxfZXZlbnRzICh2b2lkKTsKLXN0YXRpYyBib29sIGlzX2lnbm9yZWRfZXZlbnQgKHVuaW9u
IGJ1ZmZlcmVkX2lucHV0X2V2ZW50ICopOworc3RhdGljIGJvb2wgaXNfaWdub3JlZF9ldmVu
dF9raW5kIChlbnVtIGV2ZW50X2tpbmQpOwogCiAvKiBBZHZhbmNlIG9yIHJldHJlYXQgYSBi
dWZmZXJlZCBpbnB1dCBldmVudCBwb2ludGVyLiAgKi8KIApAQCAtMzYyOSw3ICszNjI5LDcg
QEAgcmVhZGFibGVfZXZlbnRzIChpbnQgZmxhZ3MpCiAJCSAgICAgICYmIChldmVudC0+a2lu
ZCA9PSBGT0NVU19JTl9FVkVOVAogCQkJICB8fCBldmVudC0+a2luZCA9PSBGT0NVU19PVVRf
RVZFTlQpKQogCQkgICAgIHx8IChpbnB1dF9wZW5kaW5nX3BfZmlsdGVyX2V2ZW50cwotCQkJ
ICYmIGlzX2lnbm9yZWRfZXZlbnQgKGV2ZW50KSkpKQorCQkJICYmIGlzX2lnbm9yZWRfZXZl
bnRfa2luZCAoZXZlbnQtPmtpbmQpKSkpCiAjaWZkZWYgVVNFX1RPT0xLSVRfU0NST0xMX0JB
UlMKIAkJICAmJiAhKChmbGFncyAmIFJFQURBQkxFX0VWRU5UU19JR05PUkVfU1FVRUVaQUJM
RVMpCiAJCSAgICAgICAmJiAoZXZlbnQtPmtpbmQgPT0gU0NST0xMX0JBUl9DTElDS19FVkVO
VApAQCAtMzcxNCw3ICszNzE0LDExIEBAIGtiZF9idWZmZXJfc3RvcmVfZXZlbnQgKHJlZ2lz
dGVyIHN0cnVjdCBpbnB1dF9ldmVudCAqZXZlbnQpCiAgIGtiZF9idWZmZXJfc3RvcmVfZXZl
bnRfaG9sZCAoZXZlbnQsIDApOwogfQogCi0vKiBTdG9yZSBFVkVOVCBvYnRhaW5lZCBhdCBp
bnRlcnJ1cHQgbGV2ZWwgaW50byBrYmRfYnVmZmVyLCBmaWZvLgorLyogU3RvcmUgYSBraW5k
LUtJTkQgRVZFTlQgb2J0YWluZWQgYXQgaW50ZXJydXB0IGxldmVsIGludG8ga2JkX2J1ZmZl
ciwgZmlmby4KKyAgIEVWRU5UIGlzIGVpdGhlciBhIHN0cnVjdCBpbnB1dCBldmVudCAqLCBv
ciBhIHN0cnVjdAorICAgc2VsZWN0aW9uX2lucHV0X2V2ZW50ICosIG9yIGEgdW5pb24gYnVm
ZmVyZWRfaW5wdXRfZXZlbnQgKjsgaXQgaXMgbm90CisgICBhIHBvaW50ZXIgdG8gdGhlIHVu
aW9uIGFzIGRlcmVmZXJlbmNpbmcgc3VjaCBhIHBvaW50ZXIsIGV2ZW4gdG8gZ2V0CisgICBq
dXN0IGl0cyAna2luZCcgbWVtYmVyLCB3b3VsZCB2aW9sYXRlIEMyMyBzZWN0aW9uIDYuNS4x
IHBhcmEgNy4KIAogICAgSWYgSE9MRF9RVUlUIGlzIDAsIGp1c3Qgc3R1ZmYgRVZFTlQgaW50
byB0aGUgZmlmby4KICAgIEVsc2UsIGlmIEhPTERfUVVJVC5raW5kICE9IE5PX0VWRU5ULCBk
aXNjYXJkIEVWRU5ULgpAQCAtMzcyNSwzNCArMzcyOSwzNSBAQCBrYmRfYnVmZmVyX3N0b3Jl
X2V2ZW50IChyZWdpc3RlciBzdHJ1Y3QgaW5wdXRfZXZlbnQgKmV2ZW50KQogICAgc3Vic2Vx
dWVudCBpbnB1dCBldmVudHMgaGF2ZSBiZWVuIHBhcnNlZCAoYW5kIGRpc2NhcmRlZCkuICAq
LwogCiB2b2lkCi1rYmRfYnVmZmVyX3N0b3JlX2J1ZmZlcmVkX2V2ZW50ICh1bmlvbiBidWZm
ZXJlZF9pbnB1dF9ldmVudCAqZXZlbnQsCitrYmRfYnVmZmVyX3N0b3JlX2J1ZmZlcmVkX2V2
ZW50IChlbnVtIGV2ZW50X2tpbmQga2luZCwgdm9pZCBjb25zdCAqZXZlbnQsCiAJCQkJIHN0
cnVjdCBpbnB1dF9ldmVudCAqaG9sZF9xdWl0KQogewotICBpZiAoZXZlbnQtPmtpbmQgPT0g
Tk9fRVZFTlQpCisgIGlmIChraW5kID09IE5PX0VWRU5UKQogICAgIGVtYWNzX2Fib3J0ICgp
OwogCiAgIGlmIChob2xkX3F1aXQgJiYgaG9sZF9xdWl0LT5raW5kICE9IE5PX0VWRU5UKQog
ICAgIHJldHVybjsKIAotICBpZiAoZXZlbnQtPmtpbmQgPT0gQVNDSUlfS0VZU1RST0tFX0VW
RU5UKQorICBpZiAoa2luZCA9PSBBU0NJSV9LRVlTVFJPS0VfRVZFTlQpCiAgICAgewotICAg
ICAgaW50IGMgPSBldmVudC0+aWUuY29kZSAmIDAzNzc7CisgICAgICBzdHJ1Y3QgaW5wdXRf
ZXZlbnQgY29uc3QgKmluZXYgPSBldmVudDsKKyAgICAgIGludCBjID0gaW5ldi0+Y29kZSAm
IDAzNzc7CiAKLSAgICAgIGlmIChldmVudC0+aWUubW9kaWZpZXJzICYgY3RybF9tb2RpZmll
cikKKyAgICAgIGlmIChpbmV2LT5tb2RpZmllcnMgJiBjdHJsX21vZGlmaWVyKQogCWMgPSBt
YWtlX2N0cmxfY2hhciAoYyk7CiAKLSAgICAgIGMgfD0gKGV2ZW50LT5pZS5tb2RpZmllcnMK
KyAgICAgIGMgfD0gKGluZXYtPm1vZGlmaWVycwogCSAgICAmIChtZXRhX21vZGlmaWVyIHwg
YWx0X21vZGlmaWVyCiAJICAgICAgIHwgaHlwZXJfbW9kaWZpZXIgfCBzdXBlcl9tb2RpZmll
cikpOwogCiAgICAgICBpZiAoYyA9PSBxdWl0X2NoYXIpCiAJewotCSAgS0JPQVJEICprYiA9
IEZSQU1FX0tCT0FSRCAoWEZSQU1FIChldmVudC0+aWUuZnJhbWVfb3Jfd2luZG93KSk7CisJ
ICBLQk9BUkQgKmtiID0gRlJBTUVfS0JPQVJEIChYRlJBTUUgKGluZXYtPmZyYW1lX29yX3dp
bmRvdykpOwogCiAJICBpZiAoc2luZ2xlX2tib2FyZCAmJiBrYiAhPSBjdXJyZW50X2tib2Fy
ZCkKIAkgICAgewogCSAgICAgIGtzZXRfa2JkX3F1ZXVlCi0JCShrYiwgbGlzdDIgKG1ha2Vf
bGlzcHlfc3dpdGNoX2ZyYW1lIChldmVudC0+aWUuZnJhbWVfb3Jfd2luZG93KSwKKwkJKGti
LCBsaXN0MiAobWFrZV9saXNweV9zd2l0Y2hfZnJhbWUgKGluZXYtPmZyYW1lX29yX3dpbmRv
dyksCiAJCQkgICAgbWFrZV9maXhudW0gKGMpKSk7CiAJICAgICAga2ItPmtiZF9xdWV1ZV9o
YXNfZGF0YSA9IHRydWU7CiAKQEAgLTM3NzEsNyArMzc3Niw3IEBAIGtiZF9idWZmZXJfc3Rv
cmVfYnVmZmVyZWRfZXZlbnQgKHVuaW9uIGJ1ZmZlcmVkX2lucHV0X2V2ZW50ICpldmVudCwK
IAogCSAgaWYgKGhvbGRfcXVpdCkKIAkgICAgewotCSAgICAgICpob2xkX3F1aXQgPSBldmVu
dC0+aWU7CisJICAgICAgKmhvbGRfcXVpdCA9ICppbmV2OwogCSAgICAgIHJldHVybjsKIAkg
ICAgfQogCkBAIC0zNzgyLDkgKzM3ODcsOSBAQCBrYmRfYnVmZmVyX3N0b3JlX2J1ZmZlcmVk
X2V2ZW50ICh1bmlvbiBidWZmZXJlZF9pbnB1dF9ldmVudCAqZXZlbnQsCiAJICB7CiAJICAg
IExpc3BfT2JqZWN0IGZvY3VzOwogCi0JICAgIGZvY3VzID0gRlJBTUVfRk9DVVNfRlJBTUUg
KFhGUkFNRSAoZXZlbnQtPmllLmZyYW1lX29yX3dpbmRvdykpOworCSAgICBmb2N1cyA9IEZS
QU1FX0ZPQ1VTX0ZSQU1FIChYRlJBTUUgKGluZXYtPmZyYW1lX29yX3dpbmRvdykpOwogCSAg
ICBpZiAoTklMUCAoZm9jdXMpKQotCSAgICAgIGZvY3VzID0gZXZlbnQtPmllLmZyYW1lX29y
X3dpbmRvdzsKKwkgICAgICBmb2N1cyA9IGluZXYtPmZyYW1lX29yX3dpbmRvdzsKIAkgICAg
aW50ZXJuYWxfbGFzdF9ldmVudF9mcmFtZSA9IGZvY3VzOwogCSAgICBWbGFzdF9ldmVudF9m
cmFtZSA9IGZvY3VzOwogCSAgfQpAQCAtMzgwNyw3ICszODEyLDIwIEBAIGtiZF9idWZmZXJf
c3RvcmVfYnVmZmVyZWRfZXZlbnQgKHVuaW9uIGJ1ZmZlcmVkX2lucHV0X2V2ZW50ICpldmVu
dCwKICAgdW5pb24gYnVmZmVyZWRfaW5wdXRfZXZlbnQgKm5leHRfc2xvdCA9IG5leHRfa2Jk
X2V2ZW50IChrYmRfc3RvcmVfcHRyKTsKICAgaWYgKGtiZF9mZXRjaF9wdHIgIT0gbmV4dF9z
bG90KQogICAgIHsKLSAgICAgICprYmRfc3RvcmVfcHRyID0gKmV2ZW50OworICAgICAgc3dp
dGNoIChraW5kKQorCXsKKyNpZiBkZWZpbmVkIEhBVkVfWDExIHx8IGRlZmluZWQgSEFWRV9Q
R1RLCisJY2FzZSBTRUxFQ1RJT05fUkVRVUVTVF9FVkVOVDogY2FzZSBTRUxFQ1RJT05fQ0xF
QVJfRVZFTlQ6CisJICBzdHJ1Y3Qgc2VsZWN0aW9uX2lucHV0X2V2ZW50IGNvbnN0ICpzaWUg
PSBldmVudDsKKwkgIGtiZF9zdG9yZV9wdHItPnNpZSA9ICpzaWU7CisJICBicmVhazsKKyNl
bmRpZgorCWRlZmF1bHQ6CisJICBzdHJ1Y3QgaW5wdXRfZXZlbnQgY29uc3QgKmllID0gZXZl
bnQ7CisJICBrYmRfc3RvcmVfcHRyLT5pZSA9ICppZTsKKwkgIGJyZWFrOworCX0KKwogICAg
ICAga2JkX3N0b3JlX3B0ciA9IG5leHRfc2xvdDsKICNpZmRlZiBzdWJwcm9jZXNzZXMKICAg
ICAgIGlmIChrYmRfYnVmZmVyX25yX3N0b3JlZCAoKSA+IEtCRF9CVUZGRVJfU0laRSAvIDIK
QEAgLTM4MjUsNyArMzg0Myw3IEBAIGtiZF9idWZmZXJfc3RvcmVfYnVmZmVyZWRfZXZlbnQg
KHVuaW9uIGJ1ZmZlcmVkX2lucHV0X2V2ZW50ICpldmVudCwKICAgLyogSWYgd2UncmUgaW5z
aWRlIHdoaWxlLW5vLWlucHV0LCBhbmQgdGhpcyBldmVudCBxdWFsaWZpZXMKICAgICAgYXMg
aW5wdXQsIHNldCBxdWl0LWZsYWcgdG8gY2F1c2UgYW4gaW50ZXJydXB0LiAgKi8KICAgaWYg
KCFOSUxQIChWdGhyb3dfb25faW5wdXQpCi0gICAgICAmJiAhaXNfaWdub3JlZF9ldmVudCAo
ZXZlbnQpKQorICAgICAgJiYgIWlzX2lnbm9yZWRfZXZlbnRfa2luZCAoa2luZCkpCiAgICAg
VnF1aXRfZmxhZyA9IFZ0aHJvd19vbl9pbnB1dDsKIH0KIApAQCAtMTI4NzcsMTEgKzEyODk1
LDExIEBAIGluaXRfd2hpbGVfbm9faW5wdXRfaWdub3JlX2V2ZW50cyAodm9pZCkKIH0KIAog
c3RhdGljIGJvb2wKLWlzX2lnbm9yZWRfZXZlbnQgKHVuaW9uIGJ1ZmZlcmVkX2lucHV0X2V2
ZW50ICpldmVudCkKK2lzX2lnbm9yZWRfZXZlbnRfa2luZCAoZW51bSBldmVudF9raW5kIGtp
bmQpCiB7CiAgIExpc3BfT2JqZWN0IGlnbm9yZV9ldmVudDsKIAotICBzd2l0Y2ggKGV2ZW50
LT5raW5kKQorICBzd2l0Y2ggKGtpbmQpCiAgICAgewogICAgIGNhc2UgRk9DVVNfSU5fRVZF
TlQ6IGlnbm9yZV9ldmVudCA9IFFmb2N1c19pbjsgYnJlYWs7CiAgICAgY2FzZSBGT0NVU19P
VVRfRVZFTlQ6IGlnbm9yZV9ldmVudCA9IFFmb2N1c19vdXQ7IGJyZWFrOwpkaWZmIC0tZ2l0
IGEvc3JjL2tleWJvYXJkLmggYi9zcmMva2V5Ym9hcmQuaAppbmRleCA1ZTA0YjU0ZWI3NC4u
NTYzYzFiMDg0YmQgMTAwNjQ0Ci0tLSBhL3NyYy9rZXlib2FyZC5oCisrKyBiL3NyYy9rZXli
b2FyZC5oCkBAIC00OTksMTYgKzQ5OSwxMyBAQCAjZGVmaW5lIEVWRU5UX0hFQURfS0lORChl
dmVudF9oZWFkKSBcCiBleHRlcm4gdm9pZCBzd2FsbG93X2V2ZW50cyAoYm9vbCk7CiBleHRl
cm4gYm9vbCBsdWNpZF9ldmVudF90eXBlX2xpc3RfcCAoTGlzcF9PYmplY3QpOwogZXh0ZXJu
IHZvaWQga2JkX2J1ZmZlcl9zdG9yZV9ldmVudCAoc3RydWN0IGlucHV0X2V2ZW50ICopOwot
ZXh0ZXJuIHZvaWQga2JkX2J1ZmZlcl9zdG9yZV9idWZmZXJlZF9ldmVudCAodW5pb24gYnVm
ZmVyZWRfaW5wdXRfZXZlbnQgKiwKK2V4dGVybiB2b2lkIGtiZF9idWZmZXJfc3RvcmVfYnVm
ZmVyZWRfZXZlbnQgKGVudW0gZXZlbnRfa2luZCwgdm9pZCBjb25zdCAqLAogCQkJCQkgICAg
IHN0cnVjdCBpbnB1dF9ldmVudCAqKTsKIElOTElORSB2b2lkCi1rYmRfYnVmZmVyX3N0b3Jl
X2V2ZW50X2hvbGQgKHN0cnVjdCBpbnB1dF9ldmVudCAqZXZlbnQsCitrYmRfYnVmZmVyX3N0
b3JlX2V2ZW50X2hvbGQgKHN0cnVjdCBpbnB1dF9ldmVudCBjb25zdCAqZXZlbnQsCiAJCQkg
ICAgIHN0cnVjdCBpbnB1dF9ldmVudCAqaG9sZF9xdWl0KQogewotICBzdGF0aWNfYXNzZXJ0
IChhbGlnbm9mIChzdHJ1Y3QgaW5wdXRfZXZlbnQpID09IGFsaWdub2YgKHVuaW9uIGJ1ZmZl
cmVkX2lucHV0X2V2ZW50KQotCQkgJiYgc2l6ZW9mIChzdHJ1Y3QgaW5wdXRfZXZlbnQpID09
IHNpemVvZiAodW5pb24gYnVmZmVyZWRfaW5wdXRfZXZlbnQpKTsKLSAga2JkX2J1ZmZlcl9z
dG9yZV9idWZmZXJlZF9ldmVudCAoKHVuaW9uIGJ1ZmZlcmVkX2lucHV0X2V2ZW50ICopIGV2
ZW50LAotCQkJCSAgIGhvbGRfcXVpdCk7CisgIGtiZF9idWZmZXJfc3RvcmVfYnVmZmVyZWRf
ZXZlbnQgKGV2ZW50LT5raW5kLCBldmVudCwgaG9sZF9xdWl0KTsKIH0KIGV4dGVybiB2b2lk
IHBvbGxfZm9yX2lucHV0XzEgKHZvaWQpOwogZXh0ZXJuIHZvaWQgc2hvd19oZWxwX2VjaG8g
KExpc3BfT2JqZWN0LCBMaXNwX09iamVjdCwgTGlzcF9PYmplY3QsCmRpZmYgLS1naXQgYS9z
cmMvcGd0a3Rlcm0uYyBiL3NyYy9wZ3RrdGVybS5jCmluZGV4IDAwMzc3ZmY3M2EwLi5mODli
ZDdlNjhhMCAxMDA2NDQKLS0tIGEvc3JjL3BndGt0ZXJtLmMKKysrIGIvc3JjL3BndGt0ZXJt
LmMKQEAgLTM0Nyw3ICszNDcsNyBAQCBldnFfZmx1c2ggKHN0cnVjdCBpbnB1dF9ldmVudCAq
aG9sZF9xdWl0KQogCWV2cS0+cVtpIC0gMV0gPSBldnEtPnFbaV07CiAgICAgICBldnEtPm5y
LS07CiAKLSAgICAgIGtiZF9idWZmZXJfc3RvcmVfYnVmZmVyZWRfZXZlbnQgKCZldiwgaG9s
ZF9xdWl0KTsKKyAgICAgIGtiZF9idWZmZXJfc3RvcmVfYnVmZmVyZWRfZXZlbnQgKGV2Lmtp
bmQsICZldiwgaG9sZF9xdWl0KTsKICAgICAgIG4rKzsKICAgICB9CiAKQEAgLTY5MzksNyAr
NjkzOSw3IEBAIHBndGtfc2VsZWN0aW9uX2V2ZW50IChHdGtXaWRnZXQgKndpZGdldCwgR2Rr
RXZlbnQgKmV2ZW50LAogCiAgICAgICBpZiAoZikKIAl7Ci0JICBFVkVOVF9JTklUIChpbmV2
LmllKTsKKwkgIG1lbXNldCAoJmluZXYuc2llLCAwLCBzaXplb2YgaW5ldi5zaWUpOwogCiAJ
ICBpbmV2LnNpZS5raW5kID0gKGV2ZW50LT50eXBlID09IEdES19TRUxFQ1RJT05fQ0xFQVIK
IAkJCSAgID8gU0VMRUNUSU9OX0NMRUFSX0VWRU5UCmRpZmYgLS1naXQgYS9zcmMveHRlcm0u
YyBiL3NyYy94dGVybS5jCmluZGV4IDJjY2YyNjdiYmQzLi5iNGVlMDM3YzhiZSAxMDA2NDQK
LS0tIGEvc3JjL3h0ZXJtLmMKKysrIGIvc3JjL3h0ZXJtLmMKQEAgLTI1NTkzLDcgKzI1NTkz
LDcgQEAgaGFuZGxlX29uZV94ZXZlbnQgKHN0cnVjdCB4X2Rpc3BsYXlfaW5mbyAqZHB5aW5m
bywKICBkb25lOgogICBpZiAoaW5ldi5pZS5raW5kICE9IE5PX0VWRU5UKQogICAgIHsKLSAg
ICAgIGtiZF9idWZmZXJfc3RvcmVfYnVmZmVyZWRfZXZlbnQgKCZpbmV2LCBob2xkX3F1aXQp
OworICAgICAga2JkX2J1ZmZlcl9zdG9yZV9idWZmZXJlZF9ldmVudCAoaW5ldi5pZS5raW5k
LCAmaW5ldiwgaG9sZF9xdWl0KTsKICAgICAgIGNvdW50Kys7CiAgICAgfQogCi0tIAoyLjQ1
LjIKCg==

--------------Z2V4GLnLEaroX7tPKeMNaxbp--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 28 Feb 2025 17:06:10 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 28 12:06:10 2025
Received: from localhost ([127.0.0.1]:51984 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1to3oP-0003JV-Bj
	for submit <at> debbugs.gnu.org; Fri, 28 Feb 2025 12:06:10 -0500
Received: from mail-10628.protonmail.ch ([79.135.106.28]:42007)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <pipcet@HIDDEN>)
 id 1to3oM-0003IS-C2
 for 76559 <at> debbugs.gnu.org; Fri, 28 Feb 2025 12:06:07 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com;
 s=protonmail3; t=1740762358; x=1741021558;
 bh=cr0FjR+hLFlfCCZN00KoZ/8y2q4RdfwqeESIAZgzbr4=;
 h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References:
 Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID:
 Message-ID:BIMI-Selector:List-Unsubscribe:List-Unsubscribe-Post;
 b=JJH3ZesEB8+VLwUMWsyNQutNJ9oue3H8nG91btd2ylUUz0+VrnZQUtoJ5zfpZMy4/
 0tx9m+qY0SWOM8Zx1BKxyssAvcDu9Hgjs5D/3dfOd2xZl1M1QQaKyR+MNfMt/6G+7M
 MNsEUzbh10wY5MyrazALvmJQ8bMcQ6vgZ18fsHKx71KbZQyuPO1Dyc7oKCDriJ3LZu
 QzugNoFJwbZSZpEXSNxFbJsjMJC0Si0pulITNSGMtExSW68B7IQfQmblc6zxlSxluM
 xjF0xoJLVDzp8w7D5Ce1evj7a2FKOYElYVKO6uqIFoCSfsMMp7YheWn4jES/gdNUAL
 T4AD98GD8k/Hg==
Date: Fri, 28 Feb 2025 17:05:54 +0000
To: Po Lu <luangruo@HIDDEN>
From: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#76559: 31.0.50;
 [-O3 + PGTK] Crash when 'copying as kill'/'killing word'
Message-ID: <87senyc840.fsf@HIDDEN>
In-Reply-To: <874j0fo950.fsf@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <87wmdc4osq.fsf@HIDDEN>
 <CAP+jDP6E=BdUHT3+w0g4QO1GYv5vDcx-VNmEPFp5UyLKhsCZow@HIDDEN>
 <87cyf44k7h.fsf@HIDDEN> <87o6yoar1m.fsf@HIDDEN>
 <8734fz39nx.fsf@HIDDEN> <874j0fo950.fsf@HIDDEN>
Feedback-ID: 112775352:user:proton
X-Pm-Message-ID: f7fc733ad1af298a829bf43f12e55f937f976b7e
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Michael Albinus <michael.albinus@HIDDEN>,
 Iurie Marian <marian.iurie@HIDDEN>, 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

"Po Lu" <luangruo@HIDDEN> writes:

> Pip Cet <pipcet@HIDDEN> writes:
>
>> See my other message.  I'm still puzzled as to why an unsafe cast in one
>> call path modifies the assumptions made for another call path, but I
>> guess it all falls under undefined behavior and we should simply apply
>> that patch and make sure to follow the C standard more closely.
>
> I revisited the material provisions in n1256, and the problem is that a
> `union buffered_input_event' is read from the EVENT pointer, whether or
> not the object behind the pointer is of a type compatible with the
> union.  It is permissible for an object whose type is a member of a
> union or aggregate to be accessed from a pointer whose type is the same
> union or aggregate, but apparently not more generally to access a union
> from a pointer of its type from which it is only defined to access one
> of its members, even if the latter is identical in size.

My understanding is it is safe to access an entire union at once, as the
old code did, and that GCC concluded based on the undefined behavior
elsewhere that the only possible union members were those with the holes
in the right place.

> I propose this patch:
>
> diff --git a/src/keyboard.c b/src/keyboard.c
> index b22814d702d..0c83880c491 100644
> --- a/src/keyboard.c
> +++ b/src/keyboard.c
> @@ -3807,7 +3807,13 @@ kbd_buffer_store_buffered_event (union buffered_in=
put_event *event,
>    union buffered_input_event *next_slot =3D next_kbd_event (kbd_store_pt=
r);
>    if (kbd_fetch_ptr !=3D next_slot)
>      {
> -      *kbd_store_ptr =3D *event;
> +#if defined HAVE_X11 || defined HAVE_PGTK
> +      if (event->kind =3D=3D SELECTION_REQUEST_EVENT
> +=09  || event->kind =3D=3D SELECTION_CLEAR_EVENT)
> +=09kbd_store_ptr->sie =3D event->sie;
> +      else
> +=09kbd_store_ptr->ie =3D event->ie;
> +#endif /* HAVE_X11 || defined HAVE_PGTK */
>        kbd_store_ptr =3D next_slot;
>  #ifdef subprocesses
>        if (kbd_buffer_nr_stored () > KBD_BUFFER_SIZE / 2

While the patch does happen to invoke more undefined behavior in a way
which prevents this particular bug, I don't think we should apply it.
The old code in this specific place was perfectly okay (and the new code
contains a bug if neither HAVE_X11 nor HAVE_PGTK is defined).

I still think the patch I posted, which avoids the problem by removing
what appears to be undefined behavior, is a better idea; but I also
still don't understand how undefined behavior in one code path infects
other code paths that don't go through the function.

It seems to me that this is a situation that GCC should warn about,
rather than silently generating unintended code.  Maybe we should submit
your "reduction" case as a wishlist item for a new GCC warning.

Pip





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 28 Feb 2025 07:36:12 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 28 02:36:12 2025
Received: from localhost ([127.0.0.1]:44438 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnuuq-0001JZ-3w
	for submit <at> debbugs.gnu.org; Fri, 28 Feb 2025 02:36:12 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:57270)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tnuum-0001Il-M8
 for 76559 <at> debbugs.gnu.org; Fri, 28 Feb 2025 02:36:09 -0500
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 <eliz@HIDDEN>)
 id 1tnuuh-0004Nv-1y; Fri, 28 Feb 2025 02:36:03 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=UeGVvXMJzMxEHT2g/TY3Yj8IiF5ZXzfIQfmL2bT0aR4=; b=RXeMJ1XG61Zo
 PZxq79D8jVfJkLRLQJenJhunNXotOV5dRNX4hDMlkpv6HjdbIDOtAQ0pzFMqDrCOxADsGJYoQV+wY
 2pWzHww6yyAS6V2tdn8SBYF6ypZitIvYWScYDMKeulOs+PdYAvNsDWpfjxG7fyW9rG7t11V4AK+VC
 2p/lCncXZ/vHguX3FhFJl3olniEKf3IEjSuJCrIkHKaH2UGnowozA1Ylg3HJ5caswia/BPoqaYH6G
 rf5rSEynxRh6UL/u5v9DOAqFOwE9q0NjMKHj6CJSx2osxBXKJ8ftMEXNi28vIsGQDGTt609415BBh
 3DX9o+B3BAdR+k9Lz1TLmg==;
Date: Fri, 28 Feb 2025 09:35:59 +0200
Message-Id: <86v7suseqo.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Paul Eggert <eggert@HIDDEN>
In-Reply-To: <d3af3416-62ba-4d7e-bbdc-c523fa1ceeb0@HIDDEN> (message from
 Paul Eggert on Thu, 27 Feb 2025 13:13:31 -0800)
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN> <86tt8fu6dh.fsf@HIDDEN>
 <87o6yn1st8.fsf@HIDDEN>
 <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN> <86y0xrrwgb.fsf@HIDDEN>
 <d3af3416-62ba-4d7e-bbdc-c523fa1ceeb0@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 76559
Cc: pipcet@HIDDEN, luangruo@HIDDEN, iura.mail@HIDDEN,
 marian.iurie@HIDDEN, michael.albinus@HIDDEN, 76559 <at> debbugs.gnu.org,
 stefankangas@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Date: Thu, 27 Feb 2025 13:13:31 -0800
> Cc: pipcet@HIDDEN, luangruo@HIDDEN, marian.iurie@HIDDEN,
>  michael.albinus@HIDDEN, iura.mail@HIDDEN, 76559 <at> debbugs.gnu.org,
>  stefankangas@HIDDEN
> From: Paul Eggert <eggert@HIDDEN>
> 
> On 2/27/25 11:58, Eli Zaretskii wrote:
> > People nowadays are likely to upgrade to the latest GCC version as
> > soon as it's out, and immediately start using it for production, and
> > are also too eager to use -O3 without checking whether it gives them
> > any gains.  The recommendation I have in mind aims at making the lives
> > of those users safer and less complicated.
> 
> Yes, that all sounds good in the context of ordinary builds. Similarly, 
> we could recommend against options like -Os and -fsanitize=undefined in 
> ordinary builds.

Thanks, I added something to that effect to INSTALL.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 28 Feb 2025 00:12:52 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 27 19:12:52 2025
Received: from localhost ([127.0.0.1]:40235 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnnzn-0005mW-R2
	for submit <at> debbugs.gnu.org; Thu, 27 Feb 2025 19:12:52 -0500
Received: from sonic311-25.consmr.mail.ne1.yahoo.com ([66.163.188.206]:44640)
 by debbugs.gnu.org with esmtps
 (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2)
 (envelope-from <luangruo@HIDDEN>) id 1tnnzl-0005ln-JM
 for 76559 <at> debbugs.gnu.org; Thu, 27 Feb 2025 19:12:50 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740701563; bh=UClvTO572fsDIeyXZTab+8L17e7nNxVYu9il6Gi37no=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To;
 b=k+MXYE+ecgmfwKqeWnQ6z3C4oazQRWPrvwZdtXrHRRclQNzxhiyWFqws+xEZk/gf8pkn+ocBTza3uznpKYMMTeVOLI4k3ZTL/5zCjGnok/SPZ/3lQT7xNzRKDTNDgTg0A+i3kdf1mDvfKjEic0PV6aQiMWxV1A1wd4jhVCwZOuX+CBM6N5MYBv4K6wHJ4f2Vy2IOi/KILf/dizmcnW+q0J/gaobf+ZWVPQBF534LGyVj7v0VaDxBVrjZT8m0x33vx/e4DlQ9Zj9Ai2I3Z7w7K4E3x2AMXRE//5i5yUsG8V7g0ehwwvujVdJ7Imx41pwwKfxS7uwQb4izHbqgJjowIg==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740701563; bh=8AuDSAs/ir0EU2/Lk3ADHlDawh6WieI6gE8Ofgw4NXx=;
 h=X-Sonic-MF:From:To:Subject:Date:From:Subject;
 b=AI6EO+w4utsK23GdFlvfN7Fzm69vPyT6SpE82nVV6NJAJ59+iKYMd72a+/CSjQJo5aipmrvZ2Vpbt5OL69RnxuCSaq+2z3iwJpu09hd9s2IGf02iVv4vM+l0w+DxJl5Wxv7oY3rQ4O9Obh59ob+XYd17llMkAG2e5s6EhTUWvehIU2S4mZdd0/D2YBGoOKMepjWvkZl7N+ur1MpWjDeL7d7TIxy1vljDgOaCTJIncdvVAaWnDyD+XhB6W83bvpL4GYaYiQoMHxwaD4yoQAbFCrSlHnBMBlHEqYlfd1XpOc1zEWQ83iP9PkuSrMzxFAfjlLuhn9NFWLcDSFUA7eDJ5Q==
X-YMail-OSG: 3nKUwb4VM1nOB72DmqobHWOcIbtCHj2LxcKhtjI4er9hQ7wuVuVPZEJq6W1AwdO
 HlQwIaZ7IwrvplFhS.mwnFKGczwM6ERKGXfe4Msna4KB8XvKWHiT1e7RZLnbqUoqrDJKHsr0Cfxb
 H3S3qd4SaJn2kx8lPqepRrCLfAFiebuBybDubTOW8ox9FiA9v4s5Dcv9EeZZrbn.zbUJ78ZPf9yD
 .metmuubX0b6xzonu6bxTT0hKFk3TMmqTD0uXEHZOiLsA4xnPC0f0GlDsjjIiz212dq7_HghuFM8
 toSVJe1gvCyLVnWnmm2v1OxOiDyh5kF9emGPvRMpE50ie6djZ3TQ5ezwPjm9SjRPigcS900ISnzq
 4OW5plqYbC2JmjrraS_z_cTazWh1EpE0L4oR3dCy8nNsc2kct4HKMCwbSRsL2scqZR.rAs6hwvrD
 RO7N0gtbY9GBXXV9_VFsjXr2.qp5cBZsbdC3gE2hjpHaYTh8bJE0cqo4GN1.aiEkpoXoUaWBAUvz
 jP8WtEvien.anOddA6GLKJBe36cIWkQt0uaKvwhiftCQbKP6k.6GHaoBzVqByCe_r4_z1QHj8PCa
 0PgpU.q5g01dp6a4b2VrKMt61e8RKbNa7n7pLGMjm4zSOW7NG1R92zKOK1ZcPgX5dbH4aVsK9DWd
 O_Q_7xIAR_9evdQuDFGqJ0ekIFyjbWnx.RpWsUUAqBQwltbeuBBmXrEe0iUVd4fu5mjNyp2DO3CD
 pFSzJZI6r3fyzzy0OUlY1Tjsecm_S2OlXt.K0bp43eEUvA5.7EeUt890Zvy5oujAtCtuzBXqJ6u0
 .0tH5y6hU8JDKHj_OfxE7qjUiIbgAwfscFqCCsvWBAweJcz8041SIEIpONOg6OD6ufqJUzU4SGNb
 dVnU9lwGb4OwHUtyeDaBQwgjtBf1oK7KoYRLhGWI9.W8E9u74czWPV3mHL2CbnlRYLnMtyhg03Ge
 ZKUviReKxvtc4vo6Vq5VeK3HznBGsGtilvxdDGfuaof7vNG7IhYQ0i2tPh.HUPJNkRaS9Ha8Ngt3
 g.K7QpLxuEaNXbORAWjmJqQgbyfqvJD02LCFtGFRnovc934rkv_QuqE1ESB9YWa9SGkv360xlwpL
 Strzl8h9aONAmCBkbKGH45rxGCOrqBUQuXzNdzsGe1LyZuzHTanUJnLi_KGrjJal9qFtlAeYZP7N
 rcgq9AtvizQ0KrPgo2vEkYayBpnWKwtjK2.AbI1xU0VGD9VjkgscOFoJE5QLUzzA6UxIVgJ0PBcs
 S9LWkbGVu4Msm5XTzXC_rcIsYu1Oy82zOnS_NsGcmGg_KhmXuYb9qWYhKvFQhwpdNhGY0np64pLl
 VNjqlmE5xGhU70xlryQtdBloUxgV3m_xTMKSrH_VVPPptZ8nRRNUBfPC8YnXfJ4ieaKKzLDpXPvf
 YCFDX.hBvefRYAPpuwyXzRZnGlpu1wo05nroXcpZxA1Zp5rmLwCSV3q9WQMePQBEz9voJ0cfbF0y
 9JQZGzGrne4orh4qo48s1QKucpNXfZfoZ2ADqr8ZEa6F5Hz93vRU8f5ONPwdAbAaZNRMzV9ZufRM
 mGuy8ScBd5kLrNndn38v_awVmHJKBIc1oTOZyYDb5pwZ04LsfkFkhvaJCfQSbAX8EfLZq4j67ZV0
 VeOtMralqlgp8d9aKAbbuG_QtqAnMn7JA5WrQDBwMst8xVaFWrrMd1RL9EVaY8so1O0dzR.jKrk_
 X6M2P0El8X3A9PDUzlxhPUKysHaWvTGaDfnzTdi40l2CTP790rxqEY02YTI_oNjdXILtZcy.5X9e
 fhowTHbtbtYfdsWD08LxZbKK1TQR5kGJVfjmkI4fw0BpuY41BBNykpolVoZsBnM8qgREVtfBD1bz
 SHXPHliC1jV8_vhs351dYqiCLb57f6ikh7a9upldgVIgnSInRgp_5j3Y9mIq4Bm8ko62aR61nF.A
 bD6rzrC0qkgVijG4s8u9ACGtbNG.YSMLn56FrrFapR_k9rugPC5aYELeDcjN__D3hHJrBpSXT.hY
 qRHZroJcOKMG7La.sHFjvUcwIJE8Se13_MCt2O3L4xr8EUXk2OJoUHLkG0DdSA8.zuBvHIuGg9Cs
 zkt0gCEtdiKMUlW3Pzm1f3YvOsGmPV57FxVKQBMEWSTtvWR53IoPBFPJ3kxEV4hII_O9oDU3oEF_
 PugyP8V6ST1FZqcVyJoTWE2had.sLCT6L83zWeGiXeQn_m0Rkw8RcQ_vT.5zCK8YP9LPZtVsua6c
 uY8wQoVY.EdzGosBpCSZXiXnuKPaz33iGd.FyhFGOLA--
X-Sonic-MF: <luangruo@HIDDEN>
X-Sonic-ID: e16a7ac4-2ae2-4d0b-aee3-afd9c0e653c6
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic311.consmr.mail.ne1.yahoo.com with HTTP; Fri, 28 Feb 2025 00:12:43 +0000
Received: by hermes--production-sg3-9fc94b8df-4t2r2 (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID 0c361b9ac115fa0d066999e901ec7bdb; 
 Fri, 28 Feb 2025 00:12:39 +0000 (UTC)
From: Po Lu <luangruo@HIDDEN>
To: Paul Eggert <eggert@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
In-Reply-To: <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN>
 <86tt8fu6dh.fsf@HIDDEN> <87o6yn1st8.fsf@HIDDEN>
 <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN>
Date: Fri, 28 Feb 2025 08:12:32 +0800
Message-ID: <s1ra5a70vwv.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Mailer: WebService/1.1.23369
 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo
Content-Length: 1227
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Pip Cet <pipcet@HIDDEN>, iura.mail@HIDDEN,
 Stefan Kangas <stefankangas@HIDDEN>, michael.albinus@HIDDEN,
 Eli Zaretskii <eliz@HIDDEN>, 76559 <at> debbugs.gnu.org, marian.iurie@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Paul Eggert <eggert@HIDDEN> writes:

> On 2025-02-27 04:22, Pip Cet wrote:
>> (I'm not convinced there's a GCC bug there, but it doesn't matter:
>> aggressive GCC optimizations currently result in broken Emacs
>> builds).
>
> I don't see a GCC bug there. If a program casts a pointer to a
> different pointer type and dereferences the result, behavior is
> undefined (with exceptions for void * and char * that don't apply
> here). And even if we blacklist gcc -O3 -flto, who's to say some other
> compiler won't do the optimization?
>
> The violation of C rules occurs in keyboard.h, here:
>
>   INLINE void
>   kbd_buffer_store_event_hold (struct input_event *event,
> 			       struct input_event *hold_quit)
>   {
>     kbd_buffer_store_buffered_event ((union buffered_input_event *) event,
> 				     hold_quit);
>   }
>
> That cast is invalid and the resulting code need not work as one might
> expect with a circa 1978 C compiler.

The cast is valid.  It is accessing a union buffered_input_event from
the resultant pointer that is not.

"... an aggregate or union type that includes one of the aforementioned
types among its members (including, recursively, a member of a
subaggregate or contained union), or ..."




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 27 Feb 2025 21:13:41 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 27 16:13:41 2025
Received: from localhost ([127.0.0.1]:38864 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnlCO-0007kz-PK
	for submit <at> debbugs.gnu.org; Thu, 27 Feb 2025 16:13:41 -0500
Received: from mail.cs.ucla.edu ([131.179.128.66]:33978)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eggert@HIDDEN>)
 id 1tnlCM-0007kV-PI
 for 76559 <at> debbugs.gnu.org; Thu, 27 Feb 2025 16:13:39 -0500
Received: from localhost (localhost [127.0.0.1])
 by mail.cs.ucla.edu (Postfix) with ESMTP id B874A3C00E41C;
 Thu, 27 Feb 2025 13:13:32 -0800 (PST)
Received: from mail.cs.ucla.edu ([127.0.0.1])
 by localhost (mail.cs.ucla.edu [127.0.0.1]) (amavis, port 10032) with ESMTP
 id s_1DldPuPWzm; Thu, 27 Feb 2025 13:13:32 -0800 (PST)
Received: from localhost (localhost [127.0.0.1])
 by mail.cs.ucla.edu (Postfix) with ESMTP id 3894A3C00D402;
 Thu, 27 Feb 2025 13:13:32 -0800 (PST)
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.cs.ucla.edu 3894A3C00D402
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs.ucla.edu;
 s=9D0B346E-2AEB-11ED-9476-E14B719DCE6C; t=1740690812;
 bh=noKwSv4cTWTocVin3+QfOYqvSdlv8ex7i4JgkXdvZlA=;
 h=Message-ID:Date:MIME-Version:To:From;
 b=GdfBww7wJ4Qtqp+lcZyaQox6t2jhaLyO7E/RvdS1k6KTPfdQF59MNuMtmx07RMBDi
 6PUmJtHQPXQRbIbqTJPXDlTgw+VQ2JeHWG9lzDhvKKSsgc3m4/DLszxsRwh/1QIQC2
 zPyO9BjCFz1W/ZsRPoMy/QzS9NxEc4XYdfDeliRX7z7N3PsWYZwfai4mDxjfH9z7NR
 DF71SlmLocq/KiYQOH8SflxFYk/ampd4teExMzFlPHyxOoR/mOfvGnGLHHEHgx70Zw
 VXog87WF+xGAG0zW8mZTFGHjIIRZgNhZ05KA5mVTKvOVW7LPA3OjYkcvL6he9bdCsy
 7aD1cP5cS4pww==
X-Virus-Scanned: amavis at mail.cs.ucla.edu
Received: from mail.cs.ucla.edu ([127.0.0.1])
 by localhost (mail.cs.ucla.edu [127.0.0.1]) (amavis, port 10026) with ESMTP
 id pysgxMoyWxGD; Thu, 27 Feb 2025 13:13:32 -0800 (PST)
Received: from [131.179.64.200] (Penguin.CS.UCLA.EDU [131.179.64.200])
 by mail.cs.ucla.edu (Postfix) with ESMTPSA id F09B63C00E41C;
 Thu, 27 Feb 2025 13:13:31 -0800 (PST)
Message-ID: <d3af3416-62ba-4d7e-bbdc-c523fa1ceeb0@HIDDEN>
Date: Thu, 27 Feb 2025 13:13:31 -0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
To: Eli Zaretskii <eliz@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN> <86tt8fu6dh.fsf@HIDDEN>
 <87o6yn1st8.fsf@HIDDEN>
 <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN> <86y0xrrwgb.fsf@HIDDEN>
Content-Language: en-US
From: Paul Eggert <eggert@HIDDEN>
Autocrypt: addr=eggert@HIDDEN; keydata=
 xsFNBEyAcmQBEADAAyH2xoTu7ppG5D3a8FMZEon74dCvc4+q1XA2J2tBy2pwaTqfhpxxdGA9
 Jj50UJ3PD4bSUEgN8tLZ0san47l5XTAFLi2456ciSl5m8sKaHlGdt9XmAAtmXqeZVIYX/UFS
 96fDzf4xhEmm/y7LbYEPQdUdxu47xA5KhTYp5bltF3WYDz1Ygd7gx07Auwp7iw7eNvnoDTAl
 KAl8KYDZzbDNCQGEbpY3efZIvPdeI+FWQN4W+kghy+P6au6PrIIhYraeua7XDdb2LS1en3Ss
 mE3QjqfRqI/A2ue8JMwsvXe/WK38Ezs6x74iTaqI3AFH6ilAhDqpMnd/msSESNFt76DiO1ZK
 QMr9amVPknjfPmJISqdhgB1DlEdw34sROf6V8mZw0xfqT6PKE46LcFefzs0kbg4GORf8vjG2
 Sf1tk5eU8MBiyN/bZ03bKNjNYMpODDQQwuP84kYLkX2wBxxMAhBxwbDVZudzxDZJ1C2VXujC
 OJVxq2kljBM9ETYuUGqd75AW2LXrLw6+MuIsHFAYAgRr7+KcwDgBAfwhPBYX34nSSiHlmLC+
 KaHLeCLF5ZI2vKm3HEeCTtlOg7xZEONgwzL+fdKo+D6SoC8RRxJKs8a3sVfI4t6CnrQzvJbB
 n6gxdgCu5i29J1QCYrCYvql2UyFPAK+do99/1jOXT4m2836j1wARAQABzSBQYXVsIEVnZ2Vy
 dCA8ZWdnZXJ0QGNzLnVjbGEuZWR1PsLBlQQTAQgAPwIbAwYLCQgHAwIGFQgCCQoLBBYCAwEC
 HgECF4AWIQR+N5Kp2Kz31jO8FYjtl+kOYqp+NAUCZiLOewUJHWQLDAAKCRDtl+kOYqp+NHGE
 D/9Wmbk+cAaQsYLPGBvyzIjZIRzo/V2p3ZwckVA1VEQivx5azu1cs86qDoVIe45AtwmKOvdV
 wTQd/QeglkZR6D2YPW7UR/7emajyJZZcy+etVTDKoaw1i6/hmd/CpGjUeUSvgoPs6nYR+1lo
 pSXTpaGrh1W0qQHalSkOOwCHG3HtGk9Ve2AERDUYxmcn8/eZHb7xpUJEJMBBI1bx/zcw1EtB
 rjsQ1R1faJ/r/7LPAyV36RLvnbX69PylHKQEbJoaY9aUb2Vpm63ni3FeTA7/3jpPvaSRWHJh
 vPYx6Fm2Ln8pI0Yf/W2B8QMiPTnF/LnH2kvUcf9VXm+1mQJ3fBFU25HZwBhuqZ24IeKymPEt
 BUMQAum97Dto0jSgR2OUvX7z+twhpQEgRGBzPHYwDi4SxF5Z4Q5Y7B7a++HP9tIxG6CVFIwI
 4xVaZud18bPa0YBL+cISmMgxq7h7yoVXl6u3pm9Yiv+W6Lp9QGN8Rw1VuJMOoFCYuoxG8mXO
 TA5b1jvlQ32gHFFhqErDAhNJRsfgrpe9Gok4Ycp+rWljbvS5Wrl0uth5MP7FbaHN2kmTZibq
 KXAd//IqczhDyU6qnW6ao+h4iDBDgYgRbQjmToX/vmIdEMzvPGqWXKhe/q1TYMuOO+IfP+bI
 fyPFH29nVN/o9c4J7myeKvv3HKSXdSVjlh2V787BTQRMgHJkARAApoXrvxP3DIfjCNOtXU/P
 dwMShKdX/RlSs5PfunV1wbKP8herXHrvQdFVqECaTSxmlhzbk8X0PkY9gcVaU2O49T3qsOd1
 cHeF52YFGEt0LhsBeMjgNX5uZ1V76r8gyeVlFpWWb0SIwJUBHrDXexF67upeRb2vdHBjYDNe
 ySn+0B7gFEqvVmZu+LadudDp6kQLjatFvHQHUSGNshBnkkcaTbiI9Pst0GCc2aiznBiPPA2W
 QxAPlPRh3OGTsn5THADmbjqY6FEMLasVX8DSCblMvLwNeO/8SxziBidhqLpJCqdQRWHku5Xx
 gIkGeKOz5OLDvXHWJyafrEYjjkS6Ak6B5z6svKliClWnjHQcjlPzyoFFgKTEfcqDxCj4RY0D
 0DgtFD0NfyeOidrSB/SzTe2hwryQE3rpSiqo+0cGdzh4yAHKYJ+UrXZ4p93ZhjGfKD1xlrNY
 DlWyW9PGmbvqFuDmiIAQf9WD/wzEfICc+F+uDDI+uYkRxUFp92ykmdhDEFg1yjYsU8iGU69a
 Hyvhq36z4zctvbqhRNzOWB1bVJ/dIMDvsExGcXQVDIT7sDNXv0wE3jKSKpp7NDG1oXUXL+2+
 SF99Kjy753AbQSAmH617fyBNwhJWvQYg+mUvPpiGOtses9EXUI3lS4v0MEaPG43flEs1UR+1
 rpFQWVHo1y1OO+sAEQEAAcLBfAQYAQgAJgIbDBYhBH43kqnYrPfWM7wViO2X6Q5iqn40BQJm
 Is58BQkdZAsMAAoJEO2X6Q5iqn40Q68QAJ9GubS/ej30Vc4idoZdc0IyMcL7kQJbMohF+Tyn
 ZE+TGn9WvzP10yLyzoI0vNlcNfP92d2MS//pFjOuANb5mwyiEYA+rDZIdS4ZZpHxCs2sxMC4
 afLCf3kv4aMnTeBvb9na403dlczz9cAacvsmniSFdpb1+BzMpYbybglU5oYMGhYT2nnCRjXN
 6S2nKYt4mjJeeOuxHrdeqQQdVBNYeNfTcPePeqvZ2+bD6u9yxZtaV+wxdpqglosQvjqhOYz7
 h50/ZTSq70/npoCq44TzdJKttaYvlW6ziRz0g4RRAqZyoxjYXiy5qj8r8zXJuB11ApZCGuKn
 /usbji9RYbflAhxFeh4LMmpDVi6BrF30b73Md59K7PuEKN1NxzlWiqqQHZZ9momN0GXLPcGq
 4uyfq7yVEy7wP5PMOh6oqscKklE3gFQtq0P1Ki0xqdF6Fq5LPJc+0Db2CYkVIy7Xaa/f74I3
 sOfQfEeDylVXR5iDfUJEYv/0DYhOr7q5/0b1kh3M4wkrB4C5jVNHjIIj+RsAK90c3t38OhAl
 jiSN7Bkwy24Afy8eIu6wWzvhnsQGpZPB+IffmxT1wkTy8UxZKjUWV0C82iphVgCUUi2f9sDV
 Q/tNcwVWmOS+gdv9Wk6tdGeM+Ee+Qs6YG05jcSoajzF0TL07ajLcayRq2j1Os2CtQ8qu
Organization: UCLA Computer Science Department
In-Reply-To: <86y0xrrwgb.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: pipcet@HIDDEN, luangruo@HIDDEN, iura.mail@HIDDEN,
 marian.iurie@HIDDEN, michael.albinus@HIDDEN, 76559 <at> debbugs.gnu.org,
 stefankangas@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

On 2/27/25 11:58, Eli Zaretskii wrote:
> People nowadays are likely to upgrade to the latest GCC version as
> soon as it's out, and immediately start using it for production, and
> are also too eager to use -O3 without checking whether it gives them
> any gains.  The recommendation I have in mind aims at making the lives
> of those users safer and less complicated.

Yes, that all sounds good in the context of ordinary builds. Similarly, 
we could recommend against options like -Os and -fsanitize=undefined in 
ordinary builds.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 27 Feb 2025 19:58:59 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 27 14:58:59 2025
Received: from localhost ([127.0.0.1]:38338 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnk26-0006Yk-OE
	for submit <at> debbugs.gnu.org; Thu, 27 Feb 2025 14:58:59 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:44332)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tnk23-0006YI-UM
 for 76559 <at> debbugs.gnu.org; Thu, 27 Feb 2025 14:58:56 -0500
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 <eliz@HIDDEN>)
 id 1tnk1w-0001jW-07; Thu, 27 Feb 2025 14:58:48 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=+sQf8x/+Hdrqxm0OYhdz/5XtkmYCnnbXj5k+XpwgLZQ=; b=KLJr3xAEr2EL
 eM8Pv4p7Zu8dAe1fsX66K+XLo/UC6ygvdq5JpkirxHIrMKZzFLW3ORBfWP9fA4VVBimDlTiG6VGBj
 3E3tvC1IQ4waLrgT2AQKIkN8yo+96guwZeaoGj6hWFHrBb04FM3Ao51yomS/+FUgOhnhEb4DIIx7/
 rY+4IAq9uw1fWwCelh1h0O+qAEQ9TEHcF7X1at5evvusDF3N5sC52o3pv8dPkuXGe9pzLRV+baa0G
 YFo27faBL+CjGkm9NkuKe8dwz4ZtvBlFtO1P2/lBEG8C+1SqXSulYP9nyusA7qyKhbElWw72D2APp
 i6FSdTq/drqxf88SOcmU0Q==;
Date: Thu, 27 Feb 2025 21:58:44 +0200
Message-Id: <86y0xrrwgb.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Paul Eggert <eggert@HIDDEN>
In-Reply-To: <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN> (message from
 Paul Eggert on Thu, 27 Feb 2025 10:50:18 -0800)
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN> <86tt8fu6dh.fsf@HIDDEN>
 <87o6yn1st8.fsf@HIDDEN>
 <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 76559
Cc: pipcet@HIDDEN, luangruo@HIDDEN, iura.mail@HIDDEN,
 marian.iurie@HIDDEN, michael.albinus@HIDDEN, 76559 <at> debbugs.gnu.org,
 stefankangas@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Date: Thu, 27 Feb 2025 10:50:18 -0800
> Cc: Po Lu <luangruo@HIDDEN>, marian.iurie@HIDDEN,
>  michael.albinus@HIDDEN, iura.mail@HIDDEN, 76559 <at> debbugs.gnu.org,
>  Stefan Kangas <stefankangas@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>
> From: Paul Eggert <eggert@HIDDEN>
> 
> >> I believe we should recommend against using -O3.  Too many bad bugs
> > 
> > If we do that, can we include link time optimization in that?
> 
> I've found real bugs with -flto, an option that is not supposed to 
> introduce bugs though it may trigger latent bugs. Although I'm not a fan 
> of -flto for typical use (for one thing, it's too expensive) I don't 
> think we should discourage it at least when debugging.
> 
> Similarly for -O3.

The problem with -O3 that too many recent GCC versions had bugs in it,
especially in the first version of a major release.  By "recommend
against" I meant to advise users and distros (as opposed to Emacs
developers) not to use it.  I didn't mean to reject it, so if you or
someone else wants to use it as a means for finding bugs, you can.

People nowadays are likely to upgrade to the latest GCC version as
soon as it's out, and immediately start using it for production, and
are also too eager to use -O3 without checking whether it gives them
any gains.  The recommendation I have in mind aims at making the lives
of those users safer and less complicated.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 27 Feb 2025 18:50:48 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 27 13:50:48 2025
Received: from localhost ([127.0.0.1]:37814 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tniy6-0005xj-K7
	for submit <at> debbugs.gnu.org; Thu, 27 Feb 2025 13:50:48 -0500
Received: from mail-wr1-x429.google.com ([2a00:1450:4864:20::429]:44052)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <marian.iurie@HIDDEN>)
 id 1tniy3-0005wz-Ve
 for 76559 <at> debbugs.gnu.org; Thu, 27 Feb 2025 13:50:44 -0500
Received: by mail-wr1-x429.google.com with SMTP id
 ffacd0b85a97d-390df0138beso758144f8f.0
 for <76559 <at> debbugs.gnu.org>; Thu, 27 Feb 2025 10:50:43 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1740682238; x=1741287038; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=nPeJ60cpzSUUq3MJnyuPB19S4/9CafCdWAEMtcKPopA=;
 b=IaJfq19HN123f36vYHZeVmo+RYb1Q58fahyPKHX2lRqmE7dhZiajyPoQ1pt6fueNHw
 qn/vsEcq4hAuOu6DhPVCrnCRi1PQzDx7X9VliNz8Be715shwCLftcl2B3Y5pBoIFsRU1
 v7SWkV+9HwgcGYlDq9aqWk0xLhYUsEZSiqCwZ6qbutwTzm7cPkEPc+/2RFJSAKWvxkXT
 HD0MNhM8sM43JVbkpD3i930I3odv1LSX+fPUaPJPZ7g1fbpj0FCzZ2Hm4fKuny2hkfai
 +7Q6L1nO8XoaxP2qCRJSCVgeIsjm7q9JgbLeWabsLV4/XCOBn40TH4Fs3Zc50GE0jDPf
 hTrg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1740682238; x=1741287038;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=nPeJ60cpzSUUq3MJnyuPB19S4/9CafCdWAEMtcKPopA=;
 b=UD1XBxNNZiXEfrXS3ukQf70r5v6eHhXaB3p2+gTp9faSQ26MtiS9CH4hXKvKj7TqJP
 NgBQm78bqsn38dQooSGx0pzhxLjcc+thOuElQV3kkXonpvZBid6V/faR9EVGFNoF7qcp
 Gbln+Uh3MTzdok2w+oCtmCjkYrtVFfQtJkck98IOdKf+2LSEZNgVgg9cqlrIz+w08cM9
 X/h3IwnAPNuu+QrSUImJ7u4M/GUJNegtcpUMjRrT8dDjCc90fAOlxZSrM25JJy0QW9s/
 Oyf0M+9A7l9r77w6xSYk6S2S+1NGN3HkmJ7p4kioKy3KmCeyZGShVCrQo3as79+zJmN5
 f9mg==
X-Forwarded-Encrypted: i=1;
 AJvYcCXf/sBQ2QDSrDt15KqK6HemSrJj9k1VZN0YTr3WbQJmVDENPYzXicP9c6Ko9f+LhQ/taYYqCQ==@debbugs.gnu.org
X-Gm-Message-State: AOJu0YxusrrlbsjZmdXzqUXZRmlVZ095s42CfAmB5o966JkUFqWkMHvI
 C5m1KJ24ojhtrwgBWd6raijoyFFE1wY1PDD8ja8G45GetChm2NFizdj2/OzqR+jYbHUV+lXzYFr
 U5/e1gRwL/6eXdOqwtFFqqFfLM/E=
X-Gm-Gg: ASbGncumDkZwonfyorPOcsYkIzniUGti4cenjIOMT1e+i359BHslpN+D/Kyfne4Sqdw
 yLHW3eVxGVQ6rqbJzU9TRXlbgKMO/3Msl3UWslTLLCvvO5TSJkG/g1SxwoGPk6AXtnCiMymFju/
 E8J3aieeppuWQYkc875bxRcP7SOdjz9q0BumZdPiiBlQ==
X-Google-Smtp-Source: AGHT+IFGUPBGGNqmAQH4XmDvFSDGjbnbgjuaqSIKI6IdQnj5INK43kQFE2OFFi5JSRebXPN8UlOEwiBK00/c0esHV7k=
X-Received: by 2002:a5d:64e5:0:b0:38f:277a:4ecb with SMTP id
 ffacd0b85a97d-390ec7c845fmr321506f8f.2.1740682237662; Thu, 27 Feb 2025
 10:50:37 -0800 (PST)
MIME-Version: 1.0
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN> <86tt8fu6dh.fsf@HIDDEN>
 <87o6yn1st8.fsf@HIDDEN> <86jz9bttne.fsf@HIDDEN>
 <87o6ynms5f.fsf@HIDDEN>
In-Reply-To: <87o6ynms5f.fsf@HIDDEN>
From: Iurie Marian <marian.iurie@HIDDEN>
Date: Thu, 27 Feb 2025 19:50:25 +0100
X-Gm-Features: AQ5f1Jpcyj-2T_G9as89_28NTMEiDEarbpluUey5E5-NvlYB6XK8Q4qhRvTrXmo
Message-ID: <CAP+jDP7n8aQ75BRAKc5kQUjproYo4gnbFdu1caVavYwLab-z+w@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
To: Po Lu <luangruo@HIDDEN>
Content-Type: multipart/alternative; boundary="000000000000715d63062f242a62"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Pip Cet <pipcet@HIDDEN>, eggert@HIDDEN, iura.mail@HIDDEN,
 stefankangas@HIDDEN, michael.albinus@HIDDEN, Eli Zaretskii <eliz@HIDDEN>,
 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--000000000000715d63062f242a62
Content-Type: text/plain; charset="UTF-8"

@Po Lu: I have just tested, your proposal and of course it works well (I've
used that build version for a while).

Btw, I noticed that this crash occurs ONLY for builds where -O3 and LTO are
used together.

On Thu, 27 Feb 2025 at 14:30, Po Lu <luangruo@HIDDEN> wrote:

> Eli Zaretskii <eliz@HIDDEN> writes:
>
> >> Date: Thu, 27 Feb 2025 12:22:36 +0000
> >> From: Pip Cet <pipcet@HIDDEN>
> >> Cc: Po Lu <luangruo@HIDDEN>, marian.iurie@HIDDEN,
> >> michael.albinus@HIDDEN, iura.mail@HIDDEN, 76559 <at> debbugs.gnu.org,
> >> Stefan Kangas <stefankangas@HIDDEN>, Paul Eggert
> >> <eggert@HIDDEN>
> >>
> >> "Eli Zaretskii" <eliz@HIDDEN> writes:
> >>
> >> > I believe we should recommend against using -O3.  Too many bad bugs
> >>
> >> If we do that, can we include link time optimization in that?  I find
> >> LTO'd code extremely difficult to read, since things like the calling
> >> convention no longer apply (even when a function call isn't inlined, LTO
> >> can still conclude that some registers survive the call and reuse them
> >> even though the calling convention disagrees).
>
> It's marginally easier to read the RTL (which ultimately becomes no more
> than a Lisp-like representation of the assembly but with some tree
> expressions and analogous details preserved for reference,
> e.g. non-inlined procedure calls).
>
> > Maybe we should also recommend against LTO.  Paul, WDYT about this?
>
> I think there is no occasion to compile Emacs with any optimization
> options besides -O2.
>

--000000000000715d63062f242a62
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">@Po Lu: I have just tested, your proposal and of course it=
 works well (I&#39;ve used that build version for a while).<div><br></div><=
div>Btw, I noticed that this crash occurs ONLY for builds where -O3 and LTO=
 are used together.</div></div><br><div class=3D"gmail_quote gmail_quote_co=
ntainer"><div dir=3D"ltr" class=3D"gmail_attr">On Thu, 27 Feb 2025 at 14:30=
, Po Lu &lt;<a href=3D"mailto:luangruo@HIDDEN">luangruo@HIDDEN</a>&gt=
; wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px=
 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Eli Zar=
etskii &lt;<a href=3D"mailto:eliz@HIDDEN" target=3D"_blank">eliz@HIDDEN</=
a>&gt; writes:<br>
<br>
&gt;&gt; Date: Thu, 27 Feb 2025 12:22:36 +0000<br>
&gt;&gt; From: Pip Cet &lt;<a href=3D"mailto:pipcet@HIDDEN" target=
=3D"_blank">pipcet@HIDDEN</a>&gt;<br>
&gt;&gt; Cc: Po Lu &lt;<a href=3D"mailto:luangruo@HIDDEN" target=3D"_bla=
nk">luangruo@HIDDEN</a>&gt;, <a href=3D"mailto:marian.iurie@HIDDEN" t=
arget=3D"_blank">marian.iurie@HIDDEN</a>,<br>
&gt;&gt; <a href=3D"mailto:michael.albinus@HIDDEN" target=3D"_blank">michae=
l.albinus@HIDDEN</a>, <a href=3D"mailto:iura.mail@HIDDEN" target=3D"_bla=
nk">iura.mail@HIDDEN</a>, <a href=3D"mailto:76559 <at> debbugs.gnu.org" targe=
t=3D"_blank">76559 <at> debbugs.gnu.org</a>,<br>
&gt;&gt; Stefan Kangas &lt;<a href=3D"mailto:stefankangas@HIDDEN" target=
=3D"_blank">stefankangas@HIDDEN</a>&gt;, Paul Eggert<br>
&gt;&gt; &lt;<a href=3D"mailto:eggert@HIDDEN" target=3D"_blank">eggert=
@cs.ucla.edu</a>&gt;<br>
&gt;&gt; <br>
&gt;&gt; &quot;Eli Zaretskii&quot; &lt;<a href=3D"mailto:eliz@HIDDEN" targ=
et=3D"_blank">eliz@HIDDEN</a>&gt; writes:<br>
&gt;&gt; <br>
&gt;&gt; &gt; I believe we should recommend against using -O3.=C2=A0 Too ma=
ny bad bugs<br>
&gt;&gt; <br>
&gt;&gt; If we do that, can we include link time optimization in that?=C2=
=A0 I find<br>
&gt;&gt; LTO&#39;d code extremely difficult to read, since things like the =
calling<br>
&gt;&gt; convention no longer apply (even when a function call isn&#39;t in=
lined, LTO<br>
&gt;&gt; can still conclude that some registers survive the call and reuse =
them<br>
&gt;&gt; even though the calling convention disagrees).<br>
<br>
It&#39;s marginally easier to read the RTL (which ultimately becomes no mor=
e<br>
than a Lisp-like representation of the assembly but with some tree<br>
expressions and analogous details preserved for reference,<br>
e.g. non-inlined procedure calls).<br>
<br>
&gt; Maybe we should also recommend against LTO.=C2=A0 Paul, WDYT about thi=
s?<br>
<br>
I think there is no occasion to compile Emacs with any optimization<br>
options besides -O2.<br>
</blockquote></div>

--000000000000715d63062f242a62--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 27 Feb 2025 18:50:33 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 27 13:50:33 2025
Received: from localhost ([127.0.0.1]:37810 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnixs-0005wY-GH
	for submit <at> debbugs.gnu.org; Thu, 27 Feb 2025 13:50:33 -0500
Received: from mail.cs.ucla.edu ([131.179.128.66]:34846)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eggert@HIDDEN>)
 id 1tnixm-0005ve-19
 for 76559 <at> debbugs.gnu.org; Thu, 27 Feb 2025 13:50:29 -0500
Received: from localhost (localhost [127.0.0.1])
 by mail.cs.ucla.edu (Postfix) with ESMTP id EE25E3C00E413;
 Thu, 27 Feb 2025 10:50:19 -0800 (PST)
Received: from mail.cs.ucla.edu ([127.0.0.1])
 by localhost (mail.cs.ucla.edu [127.0.0.1]) (amavis, port 10032) with ESMTP
 id 3yNgQu1gP9RJ; Thu, 27 Feb 2025 10:50:19 -0800 (PST)
Received: from localhost (localhost [127.0.0.1])
 by mail.cs.ucla.edu (Postfix) with ESMTP id 776BE3C00E415;
 Thu, 27 Feb 2025 10:50:19 -0800 (PST)
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.cs.ucla.edu 776BE3C00E415
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs.ucla.edu;
 s=9D0B346E-2AEB-11ED-9476-E14B719DCE6C; t=1740682219;
 bh=dMw+mw8fO83xjJ/IZVKhEVIOD5u/A4Ge3Gr5ERkakNQ=;
 h=Message-ID:Date:MIME-Version:To:From;
 b=E7JU+Z5/1McOgbhhoFrt+2sOsINpCRBQg4pAicz3iFYnynB6WaFP3ilBFRipsjV0Q
 G5HgOVkQ1kvr2sezYe9mkkP+HtdIprtUI5RMLTratfasCAmimkpuKfDDVEJ0CR0kXr
 M14f4ag+axhUzO7EYEKdPF+qk6O9JkZurL5ulbHdxZdtmRTQxjSG1RYLPaToKtSaLV
 v3GhBnUOwesV1SQUgNteU45dSIXTh8PMb92lcI80d6zo643E3qbv6QJcpTGpw1ywRe
 l1itUXqDCwxc6SOqnp6vNx7NwT9a7T/ya1dyHCmbkxKlg0Om37PG4dzK8on/+IZn7r
 qRwZ7dn7BbmLg==
X-Virus-Scanned: amavis at mail.cs.ucla.edu
Received: from mail.cs.ucla.edu ([127.0.0.1])
 by localhost (mail.cs.ucla.edu [127.0.0.1]) (amavis, port 10026) with ESMTP
 id 1RlnVp5F2kFH; Thu, 27 Feb 2025 10:50:19 -0800 (PST)
Received: from [192.168.254.12] (unknown [47.147.225.25])
 by mail.cs.ucla.edu (Postfix) with ESMTPSA id 412293C00E413;
 Thu, 27 Feb 2025 10:50:19 -0800 (PST)
Message-ID: <cc0a8bdf-7eac-4933-a234-17260380c2a4@HIDDEN>
Date: Thu, 27 Feb 2025 10:50:18 -0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
To: Pip Cet <pipcet@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN> <86tt8fu6dh.fsf@HIDDEN>
 <87o6yn1st8.fsf@HIDDEN>
Content-Language: en-US
From: Paul Eggert <eggert@HIDDEN>
Organization: UCLA Computer Science Department
In-Reply-To: <87o6yn1st8.fsf@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Po Lu <luangruo@HIDDEN>, iura.mail@HIDDEN, marian.iurie@HIDDEN,
 michael.albinus@HIDDEN, Eli Zaretskii <eliz@HIDDEN>, 76559 <at> debbugs.gnu.org,
 Stefan Kangas <stefankangas@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

On 2025-02-27 04:22, Pip Cet wrote:
> (I'm not convinced there's a GCC bug there, but it doesn't matter:
> aggressive GCC optimizations currently result in broken Emacs builds).

I don't see a GCC bug there. If a program casts a pointer to a different 
pointer type and dereferences the result, behavior is undefined (with 
exceptions for void * and char * that don't apply here). And even if we 
blacklist gcc -O3 -flto, who's to say some other compiler won't do the 
optimization?

The violation of C rules occurs in keyboard.h, here:

   INLINE void
   kbd_buffer_store_event_hold (struct input_event *event,
			       struct input_event *hold_quit)
   {
     kbd_buffer_store_buffered_event ((union buffered_input_event *) event,
				     hold_quit);
   }

That cast is invalid and the resulting code need not work as one might 
expect with a circa 1978 C compiler.

One possible fix to the bug would be to change the API of 
kbd_buffer_store_event_hold to accept a pointer to the union rather than 
a pointer to the struct, and change its callers accordingly. There are 
other possible fixes. I'm dubious whether Po Lu's latest proposal 
<https://bugs.gnu.org/76559#71> suffices, though, as it doesn't fix the 
invalid pointer cast.


>> I believe we should recommend against using -O3.  Too many bad bugs
> 
> If we do that, can we include link time optimization in that?

I've found real bugs with -flto, an option that is not supposed to 
introduce bugs though it may trigger latent bugs. Although I'm not a fan 
of -flto for typical use (for one thing, it's too expensive) I don't 
think we should discourage it at least when debugging.

Similarly for -O3.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 27 Feb 2025 13:31:00 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 27 08:31:00 2025
Received: from localhost ([127.0.0.1]:60081 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tndyd-00073K-41
	for submit <at> debbugs.gnu.org; Thu, 27 Feb 2025 08:31:00 -0500
Received: from sonic302-21.consmr.mail.ne1.yahoo.com ([66.163.186.147]:40329)
 by debbugs.gnu.org with esmtps
 (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2)
 (envelope-from <luangruo@HIDDEN>) id 1tndyZ-0006kZ-0Z
 for 76559 <at> debbugs.gnu.org; Thu, 27 Feb 2025 08:30:55 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740663048; bh=0O+aV2+j41AApvi93MrzpQCfKFKSsWpSieOnMZvXx5o=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To;
 b=U2zjQMwBG3e+0vcJddTx64swRIeJFnRiYazDz1JbBuCstgfuN50pTgD2Ce/cLfX8Z2yt64g38GfIS8PYIgFTBFYecxhs+I+FYdjy+dY2Qj9FkOWf3d95I1QoPvIrj5U9UhmtcrizOGQU9vuQnC16mxCrER+aTKTimIWcCFMN7ZCwaMWDvsUpaoBkXeby2QNzj0z9pk8xV2sgQtUMVr61x80ekALAptBjNfz4R6Ie650vSRtqPvg+uuHIHnlyVdxJGls87sc9VOasl/YRHH3L8/RptpxBz09HfRN5U6F+iCKuDkqlzZ6H8iyp4Vu/VzIp1NSSjG+0/frw4rV/pgpBNQ==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740663048; bh=AI6tccpFEhe9GIHmP1C96Jr+fpcKRQ2lgq8VDYBhT2P=;
 h=X-Sonic-MF:From:To:Subject:Date:From:Subject;
 b=mydicxyIVA6jYOul4e4QNJ+PpFKgLcOlc59t84KdccaRNm2UF+UwnSHF1fgUti6hci3g3enbiyyhBgbiqyWIwoHGRZ1wMmGJmecmqNfeXiEIhBeE5Tg3mg+dWWeAXCHPNwuDBHgHYPD5lQmU1y0NnjTm9Z1s4ZNjHDJY6+qYsA6bIT0xritYZIdkus/rGLIGHwjRst2PaSblhGRFEh8UHCGUm6EU7Lyw1C29fDv3Kx95T5v8cR+TAJBcHwwan5Q/Eoj9VwaKrUOm+xnL0PGWg164+vcZIBy1qTeJxQwNo78t96Ts5I6Qy+iI0vzSH1R/aiIG+WzFe8lvPRmo//5Vcg==
X-YMail-OSG: ZtlCJfkVM1kvhoSuC1Yq2TZJcMY0FdhPjohVCOcZpIa7PJiQh7J9138TwcukY15
 MBd4hc0BQEkDTeZ4SRjbmqCjT.PiH7A0MeRxawcneJGqiM9pzaTSl8bSSjr_5_fKmWCHycu5ExJY
 9w8GS56XwUj9gAOsyGdLJTrwOweZD6Woa4dYhEj6isX9EyYvsaxzEhGuYtkuEG9iPY6Lv5.7P4j8
 JhaeoAqM2_ZGtTqIGuDhJzoeNB9efb5Ir5ZGKVGqzSVgPsbelolTshyji3h2E7BRCMfXKRbvG1Ss
 JEeQOozDuHaaf3XDBu.RhRE4JPfVQWguhz9lymaNgkKl3JJMs6BQn6vuqfEqKnGzA52pFFC9siEk
 QSxrtPaVB3BMYjm2WuWgZ6ncD9Ua2AvCNOHH0W.1rdZx_ONmH3uLQufo9wLyMH_HHRcYT0GV1PeF
 oMlXj.vLzgzjcxX5s7qxHBLifoFFr6X_qTrvvaz4DHyTP0VAWrU15eVm1VNsQ70GXiWMelzUs9Nd
 __CC4IAediEdq.puO4N._yNT_0d61kBG.sTz9.F0hleC01xYscrBrVbHCXq30nyBsBB_uVG7PGQK
 C6_blU7GOf3wGuvFTPeyTkQ401l53swdpkbgc6Khq1a7eGQklXuTXkMDDaZRHMaJ4LTbNlJ_0.Rc
 uO2tjOeCUgLd8SjuZX0wiq6MQcEdQogguZhydvDcgjsJtrwQsAYi_NF97xuhg7KI1jcxXa3SSsHA
 MeLD0LwuwO0QX0WtUyX1zvworpI05Rauj9yGYfgAAPUvgHeKt6He0T0YAlzWmnChoxREGmUy5lRx
 uAuh.HogcVJ1cdGb2Zeex5rlh0Uq4jGN5FhA.KnHL2R5KG9wg0Iy2UngqPzExTmUhUqtZeaePBmj
 tt1XqJ5Yx56.z6hQKnZK_8IDfUGVjB.c2eBuh_0ODCiw6ZIj5dZ4Ni0T4zcm3ol_HfotT.eZ_qSX
 9ub1DC5aJxOhBwdQ.g1zcoDVBnhz4N4wAUeIgKCk8e7f1p92yslNvd2sDhFk5o6t8dUP7dPP9xyk
 7ZVC6LY5pXUOaRpXXZ7gD52tBBxgaCaIrHbYtL4sAiJ1cnzQUbpNbZR7d0NGK.fq7zy9N9.1tOc.
 cgveg_dcEm9sT.uc4Sc0GktPtVtOF8J5._3RikDryaxUD7_A4OH5kmvnNYpPtjPq6b93T1Vb2Vpu
 15yocQjSsVvgyryM9Zfb1l2Q1Y4wtqk851_jRie6qWCREAJKjqBG2D7lZI.gJC539IST18TSrxkW
 vw77_EnBbHQurV4PDQZ6e0miGtxbG2ydoR0t7Azm0696fovUttqXQfYnVQ.KuviD_2N78ASgCo5y
 u336ddgxNYPV7EyDc9wxDsvYZ3NZHC9Xzg6o0nbtwFf0Y1qIsKVovy4ZH1LQcEMeJyoelew.zvDq
 wgDbCB5T4IIfjtH71R6L3XeABQCWebFo1s.utjtPS7HVHECJv82Mv9fnaiOIG.W1wTtyBbSJWgen
 UvXVXvlgoD5E_Vi79FhzdN5c.8PHmHhb84GIvF5J9C5LxONT4rMnWgFQqvkMdFQLV_TeXe04j0Es
 Ttoo31KGrBKt1rdJg1ypAZnCCX28fYKmS7fzuKD.EE3UhTEE.w.yQxKfKOIssoKU0Hvaf6dRO_F.
 eq6Y3mP_K.m9eC6MFsgkkv7TRgqGWV2TB8QtUvESJk716_RDJhBEGN9QBcvMCp0I7HCFOiI_PhPM
 kwBU9xuUNwjfKlXOHhebEjjXkbQH1WNhvY.TdaiBiUJmKGu.lkcbleFtYtAyEdt9ZTAPqV4OEHWE
 70rYTucjQusIoTsgcBc.UVB8VDGhSZeerMuUf.jcRrrAphGHnJZzfAAbc54KQxBaN3igK33Nin03
 n91PORRyi1zFuUToawIb1wiF_rVmCedtvvPsqLOqPN9RZwflOcpmP22e7CmgeXJnpZEXIgV3WCEp
 E7KQq8nyc3JzbMCU9d08wx4h5kKe8epCqPrsA_F5ql5z8xVg9nDZ6dz7.n0xzc4qteJpFL3EgkAU
 HeloWDvqgh9.1lHJo_RcklTZXX6x5crAhWXwzwt8MOPMSUScCIfNnJkoN1ZIC.pQLFitODjAb0Os
 nNowwFLj8HMN8ZhD2WipeMPVcF.yN0xUBwSw1rUkRfV.hyDmysiWCjXBut629hTI9K4BNJ7QkKEp
 e4tNR67qHcnrDpllo.Q65S8G66gJnugZS8RQvgaGYOiQCM1F9LhlTExQT0bx9nI.3DDHoVxbgT1E
 TCr.HhnHxc5_KF3oQ3MekEKqqxTr1CC.xCEfjgaVTRwSWLR.bqd5Xr9drprLmLys-
X-Sonic-MF: <luangruo@HIDDEN>
X-Sonic-ID: 3490c1d1-0712-42da-bda7-ab9f8b5361f8
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic302.consmr.mail.ne1.yahoo.com with HTTP; Thu, 27 Feb 2025 13:30:48 +0000
Received: by hermes--production-sg3-9fc94b8df-swq4n (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID 0d275227b55c3036f228f5d43335709e; 
 Thu, 27 Feb 2025 13:30:43 +0000 (UTC)
From: Po Lu <luangruo@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
In-Reply-To: <86jz9bttne.fsf@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN>
 <86tt8fu6dh.fsf@HIDDEN> <87o6yn1st8.fsf@HIDDEN>
 <86jz9bttne.fsf@HIDDEN>
Date: Thu, 27 Feb 2025 21:30:36 +0800
Message-ID: <87o6ynms5f.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Mailer: WebService/1.1.23369
 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo
Content-Length: 1198
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Pip Cet <pipcet@HIDDEN>, eggert@HIDDEN, iura.mail@HIDDEN,
 marian.iurie@HIDDEN, michael.albinus@HIDDEN, 76559 <at> debbugs.gnu.org,
 stefankangas@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Eli Zaretskii <eliz@HIDDEN> writes:

>> Date: Thu, 27 Feb 2025 12:22:36 +0000
>> From: Pip Cet <pipcet@HIDDEN>
>> Cc: Po Lu <luangruo@HIDDEN>, marian.iurie@HIDDEN,
>> michael.albinus@HIDDEN, iura.mail@HIDDEN, 76559 <at> debbugs.gnu.org,
>> Stefan Kangas <stefankangas@HIDDEN>, Paul Eggert
>> <eggert@HIDDEN>
>> 
>> "Eli Zaretskii" <eliz@HIDDEN> writes:
>> 
>> > I believe we should recommend against using -O3.  Too many bad bugs
>> 
>> If we do that, can we include link time optimization in that?  I find
>> LTO'd code extremely difficult to read, since things like the calling
>> convention no longer apply (even when a function call isn't inlined, LTO
>> can still conclude that some registers survive the call and reuse them
>> even though the calling convention disagrees).

It's marginally easier to read the RTL (which ultimately becomes no more
than a Lisp-like representation of the assembly but with some tree
expressions and analogous details preserved for reference,
e.g. non-inlined procedure calls).

> Maybe we should also recommend against LTO.  Paul, WDYT about this?

I think there is no occasion to compile Emacs with any optimization
options besides -O2.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 27 Feb 2025 13:16:42 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 27 08:16:42 2025
Received: from localhost ([127.0.0.1]:59916 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tndkn-0003a8-QO
	for submit <at> debbugs.gnu.org; Thu, 27 Feb 2025 08:16:42 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:52548)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tndkk-0003Z4-WD
 for 76559 <at> debbugs.gnu.org; Thu, 27 Feb 2025 08:16:39 -0500
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 <eliz@HIDDEN>)
 id 1tndkd-0000RY-Jo; Thu, 27 Feb 2025 08:16:31 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=zs2iXl0CBX8v1nHgouu0rIBN5gqaI7kkAVV89BxxIjc=; b=dfbX08lOhmcj
 gW6nkfjwscct8HUhje3XagT2HFqSUiX/xKD6o9Lzm5HeDLPmeQIejDt7IIeCHWelT/xkVgYHqRKFA
 plpbQxdxmtWCG7kR7S2q6KBT/Dhe++VZwKbJkaKmm8wDIqohOyhvqqvILQO0+0X+n14QcM51G6aii
 2gc4ueJBSrgL4cZGMV1qqUmpZ2JAti4xz4WQd5//zXNPAWxnIN4FmQLYxRTTnMq5SIPNxxVzrjM2+
 uXGGS8jPvTBZsiEbaNPRYOx/p77bEvLOiGSUDyjdUjW+0bIBz6iZtyvaNTmIj+/jCNY94HS18A6CX
 825UDo1A6LyAYECNtlOTig==;
Date: Thu, 27 Feb 2025 15:16:21 +0200
Message-Id: <86jz9bttne.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Pip Cet <pipcet@HIDDEN>, eggert@HIDDEN
In-Reply-To: <87o6yn1st8.fsf@HIDDEN> (message from Pip Cet on Thu, 27
 Feb 2025 12:22:36 +0000)
Subject: Re: bug#76559: 31.0.50;
 [-O3 + PGTK] Crash when 'copying as kill'/'killing word'
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN> <86tt8fu6dh.fsf@HIDDEN>
 <87o6yn1st8.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 76559
Cc: luangruo@HIDDEN, iura.mail@HIDDEN, marian.iurie@HIDDEN,
 michael.albinus@HIDDEN, 76559 <at> debbugs.gnu.org, stefankangas@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Date: Thu, 27 Feb 2025 12:22:36 +0000
> From: Pip Cet <pipcet@HIDDEN>
> Cc: Po Lu <luangruo@HIDDEN>, marian.iurie@HIDDEN, michael.albinus@HIDDEN, iura.mail@HIDDEN, 76559 <at> debbugs.gnu.org, Stefan Kangas <stefankangas@HIDDEN>, Paul Eggert <eggert@HIDDEN>
> 
> "Eli Zaretskii" <eliz@HIDDEN> writes:
> 
> > I believe we should recommend against using -O3.  Too many bad bugs
> 
> If we do that, can we include link time optimization in that?  I find
> LTO'd code extremely difficult to read, since things like the calling
> convention no longer apply (even when a function call isn't inlined, LTO
> can still conclude that some registers survive the call and reuse them
> even though the calling convention disagrees).

Maybe we should also recommend against LTO.  Paul, WDYT about this?

> However, let's be careful not to blame GCC until we have a smoking gun.
> So far, it's usually Emacs which is at fault.

Sure.  I only said what I said based on enough examples we saw in the
recent years.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 27 Feb 2025 12:38:44 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 27 07:38:43 2025
Received: from localhost ([127.0.0.1]:59585 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tndA2-0008D1-Ny
	for submit <at> debbugs.gnu.org; Thu, 27 Feb 2025 07:38:43 -0500
Received: from sonic302-21.consmr.mail.ne1.yahoo.com ([66.163.186.147]:40972)
 by debbugs.gnu.org with esmtps
 (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2)
 (envelope-from <luangruo@HIDDEN>) id 1tnd9y-0008C4-6V
 for 76559 <at> debbugs.gnu.org; Thu, 27 Feb 2025 07:38:40 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740659910; bh=uBm0Ka+BZwEklEgi98AG5dVoHM7woud2Uo02mVQry+0=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To;
 b=W5a+girbpJmgSfXMO1nnTboadbUGSYTsac/UYoVwRM+FpHu3qOk+JORPbG4mWNgcaEuIoXPSgTSyjapoUj90DTa2c2PMs/T/REePmh3pUBE6zh5NAxH7zKjUjn8ICEQY6oUotyFVR9PaiednCqerAzBftfAb5+AoKdn+WGq9L/DEUQLIe24MP+X0aR4FoM8EuORF8C7+XD1nfoqQzJaz3vEkE3x8MVsELxKa78DzqtFpeMOFhGaL6iq8cZ5T7iSipeIqjM/ZruTdxB3c+5J5ANe1Nej18quuEZHrt2/K/2cvvz2qxN/GtKlbElbEM1s1/BbXY7OOFeIO/zm9JNSLWg==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740659910; bh=/S9GiiODTdRLBIbeZEdRdrTf/rPQRqOBoKXWrQnMwFw=;
 h=X-Sonic-MF:From:To:Subject:Date:From:Subject;
 b=rAAbUPlut+jjRtDc99ZcRZeb/CfhK0pJhwuKYIaNMKGVDg/oaGkmfG+bMwlGLLOX8WnDHIzpFouCDAIy4gmhuSKguekT8YrPw3QcKZ0k5qzDfPvNWZp8575h9dFtP6lwnsgMnk8p+xEu6sAZIQQ9Sh/0PjDjanj8G9ahUHeN5bNl+brDUPhTgfW4PORGlAS2eMvNt+dkzEg6hsPJJ2fRF8WEnoERj1JNSou7Lml8H7gm08EuCpVWe8cErEfjk6wlHFBcaECLfsimwSbaS8oPJyjPq25LTXGRBf1tfLS6dloGZByawKGUJENwYr4VWltmO0NbcP2FpAEz+Leeb5tYWQ==
X-YMail-OSG: MpBtj0YVM1lDOO23pvJBsAL6VYivAD_fniY5RW4AQCZBiaq_2de3msC2HrPgIAS
 whravbTXnEJVKodIITT4uBc2U3pTcLW7oxm_w2IgmR_PyMim7AuxrQ0i6pZZ6HJObSZJPOgXAnQl
 4f8g.mNkI1ZKj0HqltYdRFSf3JIjqdUz8nHjvnDLGe7EyB.U0M5lDcwJHYKj25EhLiy0xH3df7of
 iFZjzMg7_uaF5zuQcM0rxWHz.1jqSh43b1aFet3qR5_Z7RHXsF2p54ZUXkIsHryqU03kHyaVM15e
 hxCXbEiM.tV70P2pH_h8jNVCBNNa6Yl3tRvqUBlp75vdgO7_qvFTPP5lFTIQ670F40qmYmox8Of0
 Z2SMf_POU2PPSV2QM5tlaUcourBhbf2skyCDnhZtugXDPdBNNW7H8XU6roMIlih_GbwEgOZRGim_
 EmTOHKQxy21IBnTYo3GWsUvGIkqUCnS8OGjXGU0f4oSG6J0Hd8MVgxFsGuLOHPSIkFzSRjHNPU8T
 cyCXA_.3pqMb_UO0h.zMqRn3qXb1WoCD.IvLtXB6i8XmTQVPwGOgimr8auQZGnAus9BSpQfyYrzY
 P1KycFufmIlntdmVO50mUDzIxB.7Bm_ypzT7nzWT_dqywItEhUevgVFrnnQCqlGRk.L3WjLwRdLg
 K2GAbw2l2gfhkmr_V_wqQfodk7TAWK2srj2bGw6Tb9CPIhwyJStIcUfHaQbHbLANzOhqA3jTmdyN
 OOTIFNxX8kXqKRTN2dyvfLnmXXcXjYAtZcM.yREk2qUX2weaTFj6gnXyZGzGr4JIhOBh.ZYfDMGy
 gMESr8jrGYfJMiQ23elxi6eM.kKxRYXp8waEVsp1.rDCoGie2qMOw_VsEBtbIU14qYLt5Ypd9rlB
 xnbsiR8jBK.HNJj1UOkCnWqlzyeyvj5bxiFxrXkREfT.053Mkizo39m8RHhUbWVnQxYkJAxWg2ZR
 lhNw39Sj2t4M1fInasuKGrolOP_UQiPPg_wzBy1O1AK3LVtbld.aq1IrV1QnFKODhqUFOiBVndk3
 z5OP_dx5MJ3wv3SeOsG4O4nDS3deexgF6UJGXti_N56_FP3mqA1ndzeNPfMGJcCI0idP50am1WW2
 3XydA49242DHE.G2y_D61gqbieVog1mJlnPFh1mazMF2pEP8b1hAgI6hqr6xc3uNY8yPCX_TPiR2
 OsKwj0_uQwtK8n92vqTXkshit3y_AgCHTv2pxp1cC4w6ebw0QVe1dOgyqYo3S8jpoY75OWeCvRr_
 V1OKh4fWNn5bFlVZs1BDEMlNGv0YqB5REcDt_u8xJPOSaSrva9iWlX_bsRlnh8rWZ6w3tq.QnGkH
 FUdGO0.RIzRcSwaVdLM.2EBnzYAHxyjlVbaG7DDCU9c6TC_cnD1WyV5UPvy3JWUNrfR3q8il16IO
 2BI5Z6gWNPOor1s7w6j.MjWtOcep3Y4uBgoJ.5Sv1xYY3QmPqZPi1N83q7O87G0aA2PjzSyjXfN6
 eXlAiyxo5eENd.IpVWOwebszelePJ79bSWkFnKonMimMPbA45a9oW1BexUq7g8LM1_7PYsrrasFv
 jWIIBOtMPNa_Y8iOgR_18q.i_n4Msf0itgcLqzNSSjTHGsW.Eh0J4KajvH6Z5P_2HqiXRNd5i613
 4b99McaFBtHZEnOxocqj01NcKy3zp1ffn5w6K7e81oYCLOIKP_Ki3ISYv4q8daxwL7wG_vYYRfX3
 juds0p_nnLrt8uXWVm9LQVdLXPwBCgS2AvQGhHivtm2itAowJ4MAtd6Tw31bGSBu1f.bq8VB5PuP
 T3IBtjd0OvwW2msle3MjT5EEtvhAdcc5L0tl7dJZ2fDdYY4AMLL5spvH0NQF.QCVstzPrtdSovvM
 .mDkp2VIM800yeoNJX19hbCRB_7KRzRu92NoDP2vSCTjjZAL6QLhpe48bXdraKn4vYCZ6TKj6I9j
 qnkXhyC0yU31Zn8YrGmPnj.UJRExIAki5zdE5iTPgdSa7uhg_BGI2x989zrd_rPKtkDCnuB4CrjK
 2_FDRWOf1bY3pNz441Hp8rAfn9G1cbpKToFvcKc.khEQ_SbgOkmCLehwm29r13z9nWdlQ.uI9.NQ
 2tiM7covReI3xUSmjmkQPvYVD3zjBm9JJHNI_7kyOqaZcjl.uQWLTEz85T.aCx2vTQXv_Gv00.fj
 Grp3jHHPMmI1TRr4kAavBesWaOkyj095SiV1Tr60RMI4EEiPFWn2E4pifDy4oI.cV6O51hG4WSOu
 ABe5e07QOLPDAR0ZSqee4pA3M9rdEikb0ARG1HyVulrWXXdC.D3n7K0mzcCDgUw--
X-Sonic-MF: <luangruo@HIDDEN>
X-Sonic-ID: 60bfdee8-8faa-4792-afcf-9dd80988d59c
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic302.consmr.mail.ne1.yahoo.com with HTTP; Thu, 27 Feb 2025 12:38:30 +0000
Received: by hermes--production-sg3-9fc94b8df-npvnr (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID 319a2f93aa8841b14fdd974903ea604d; 
 Thu, 27 Feb 2025 12:38:25 +0000 (UTC)
From: Po Lu <luangruo@HIDDEN>
To: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
In-Reply-To: <8734fz39nx.fsf@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <87wmdc4osq.fsf@HIDDEN>
 <CAP+jDP6E=BdUHT3+w0g4QO1GYv5vDcx-VNmEPFp5UyLKhsCZow@HIDDEN>
 <87cyf44k7h.fsf@HIDDEN> <87o6yoar1m.fsf@HIDDEN>
 <8734fz39nx.fsf@HIDDEN>
Date: Thu, 27 Feb 2025 20:38:19 +0800
Message-ID: <874j0fo950.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Mailer: WebService/1.1.23369
 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo
Content-Length: 1655
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Michael Albinus <michael.albinus@HIDDEN>,
 Iurie Marian <marian.iurie@HIDDEN>, 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Pip Cet <pipcet@HIDDEN> writes:

> See my other message.  I'm still puzzled as to why an unsafe cast in one
> call path modifies the assumptions made for another call path, but I
> guess it all falls under undefined behavior and we should simply apply
> that patch and make sure to follow the C standard more closely.

I revisited the material provisions in n1256, and the problem is that a
`union buffered_input_event' is read from the EVENT pointer, whether or
not the object behind the pointer is of a type compatible with the
union.  It is permissible for an object whose type is a member of a
union or aggregate to be accessed from a pointer whose type is the same
union or aggregate, but apparently not more generally to access a union
from a pointer of its type from which it is only defined to access one
of its members, even if the latter is identical in size.

I propose this patch:

diff --git a/src/keyboard.c b/src/keyboard.c
index b22814d702d..0c83880c491 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -3807,7 +3807,13 @@ kbd_buffer_store_buffered_event (union buffered_input_event *event,
   union buffered_input_event *next_slot = next_kbd_event (kbd_store_ptr);
   if (kbd_fetch_ptr != next_slot)
     {
-      *kbd_store_ptr = *event;
+#if defined HAVE_X11 || defined HAVE_PGTK
+      if (event->kind == SELECTION_REQUEST_EVENT
+	  || event->kind == SELECTION_CLEAR_EVENT)
+	kbd_store_ptr->sie = event->sie;
+      else
+	kbd_store_ptr->ie = event->ie;
+#endif /* HAVE_X11 || defined HAVE_PGTK */
       kbd_store_ptr = next_slot;
 #ifdef subprocesses
       if (kbd_buffer_nr_stored () > KBD_BUFFER_SIZE / 2

Please test.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 27 Feb 2025 12:22:50 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 27 07:22:50 2025
Received: from localhost ([127.0.0.1]:59404 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tncug-0003TK-2g
	for submit <at> debbugs.gnu.org; Thu, 27 Feb 2025 07:22:50 -0500
Received: from mail-4316.protonmail.ch ([185.70.43.16]:42735)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <pipcet@HIDDEN>)
 id 1tncuc-0003SR-FN
 for 76559 <at> debbugs.gnu.org; Thu, 27 Feb 2025 07:22:47 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com;
 s=protonmail3; t=1740658959; x=1740918159;
 bh=hEiuYpEdLPAuEMYygca0O2gTtaye9k4P9rjrGlb3YEY=;
 h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References:
 Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID:
 Message-ID:BIMI-Selector:List-Unsubscribe:List-Unsubscribe-Post;
 b=lCjXJ7Em7zxHcBP/RRACFx/beR0I7M+rom1y5mkBZ+nwNNYyMm5lMKkOlS3KTbrCx
 Ls2o+C9LqTSncHfM5SfY5PasVCxajxuoza4rH4Bd3BbCCf/oG92lnvkfeoHs0Pc1SR
 ytfQFvvyFDVEVDHqIJqhGhrBSMqEkcPvROdGgepqgGteWoBsiS6PjRsOuUKIaxAsHt
 jJyLyOxPjJmxacndlySHs8+4mTsZ03VuL0rwy3cbHM8vIhRLpYsFlVFlyeMEnO3gax
 RXO9vTY6gk6q+ObY/J9hLzTNugrY9WREIV0aqC+M6ue7KeR4YDqhWcDUaXp6eylNuT
 nTxWqjc1rqOaw==
Date: Thu, 27 Feb 2025 12:22:36 +0000
To: Eli Zaretskii <eliz@HIDDEN>
From: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#76559: 31.0.50;
 [-O3 + PGTK] Crash when 'copying as kill'/'killing word'
Message-ID: <87o6yn1st8.fsf@HIDDEN>
In-Reply-To: <86tt8fu6dh.fsf@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN> <86tt8fu6dh.fsf@HIDDEN>
Feedback-ID: 112775352:user:proton
X-Pm-Message-ID: d73be7d99c71ecc892b469b7881ccea55dcf71cd
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: 76559
Cc: Paul Eggert <eggert@HIDDEN>, Po Lu <luangruo@HIDDEN>,
 iura.mail@HIDDEN, marian.iurie@HIDDEN, michael.albinus@HIDDEN,
 76559 <at> debbugs.gnu.org, Stefan Kangas <stefankangas@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

"Eli Zaretskii" <eliz@HIDDEN> writes:

>> From: Po Lu <luangruo@HIDDEN>
>> Cc: Iurie Marian <marian.iurie@HIDDEN>,  michael.albinus@HIDDEN,
>>   iura.mail@HIDDEN,  76559 <at> debbugs.gnu.org
>> Date: Thu, 27 Feb 2025 13:36:59 +0800
>>
>> Eli Zaretskii <eliz@HIDDEN> writes:
>>
>> >  Po Lu, any suggestions or ideas?
>>
>> I replied to Pip Cet.  It's likely a GCC bug, and one which I cannot
>> reproduce in 14.2.1 or the recentest GCC 15 snapshot, rather than
>> undefined behavior in any sense...

(I'm not convinced there's a GCC bug there, but it doesn't matter:
aggressive GCC optimizations currently result in broken Emacs builds).

> Thanks.
>
> I believe we should recommend against using -O3.  Too many bad bugs

If we do that, can we include link time optimization in that?  I find
LTO'd code extremely difficult to read, since things like the calling
convention no longer apply (even when a function call isn't inlined, LTO
can still conclude that some registers survive the call and reuse them
even though the calling convention disagrees).

However, let's be careful not to blame GCC until we have a smoking gun.
So far, it's usually Emacs which is at fault.

Pip





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 27 Feb 2025 12:04:37 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 27 07:04:37 2025
Received: from localhost ([127.0.0.1]:59256 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tncd3-0001YQ-DF
	for submit <at> debbugs.gnu.org; Thu, 27 Feb 2025 07:04:37 -0500
Received: from mail-10630.protonmail.ch ([79.135.106.30]:64061)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <pipcet@HIDDEN>)
 id 1tncd0-0001Xk-1o
 for 76559 <at> debbugs.gnu.org; Thu, 27 Feb 2025 07:04:35 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com;
 s=protonmail3; t=1740657866; x=1740917066;
 bh=Qd/g3pSPJFIJcKbdbYnoS9wJjnwr3KpvOQ6gaAO7QAg=;
 h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References:
 Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID:
 Message-ID:BIMI-Selector:List-Unsubscribe:List-Unsubscribe-Post;
 b=FQWOXmyzKubByoMCAn8nrKRfU+66pYJ4oJbmg6qp8yVpGQnlqAiUDmtN9iPvvOGfN
 c9R+8R4oum98/3CcFZRUz0YzmsLRyTinXHHe7fhIcLDbHIQZxSNjP1dr/ykQZ/VNwM
 2VuZnnGUoYUQTec8MRslJW0Zj1WTbBWgrwcdyCVPC9cMtaRCyhlv9RAPS6djQTqCHj
 dCVfacI82/VfT8gy9+ZIJWPU9Sz6+ue+QUVP9DoR+pbUKUUERF0NgUTfxMKQIJ8rFc
 zfdMu0z+QlBitI81v6/4axdWy114Iq1EBuwHXw3fmxbk8ISq4L0Etqq25h1CgASQse
 EAq0hvb/zpm3Q==
Date: Thu, 27 Feb 2025 12:04:22 +0000
To: Po Lu <luangruo@HIDDEN>
From: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#76559: 31.0.50;
 [-O3 + PGTK] Crash when 'copying as kill'/'killing word'
Message-ID: <87wmdb1tni.fsf@HIDDEN>
In-Reply-To: <87zfi7ae29.fsf@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <87wmdc4osq.fsf@HIDDEN>
 <CAP+jDP6E=BdUHT3+w0g4QO1GYv5vDcx-VNmEPFp5UyLKhsCZow@HIDDEN>
 <87cyf44k7h.fsf@HIDDEN> <87o6yoar1m.fsf@HIDDEN>
 <874j0fbsqh.fsf@HIDDEN> <87zfi7ae29.fsf@HIDDEN>
Feedback-ID: 112775352:user:proton
X-Pm-Message-ID: dc616d8830aad651396fd2b8aceca71dd29b07f4
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Michael Albinus <michael.albinus@HIDDEN>,
 Iurie Marian <marian.iurie@HIDDEN>, 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

"Po Lu" <luangruo@HIDDEN> writes:

> Po Lu <luangruo@HIDDEN> writes:
>
>> In a word, tampering with optimizer options is tantamount to playing
>> with fire.  Don't do it, if your object is a functioning Emacs.
>
> Which, if it wasn't apparent, belies my earlier theory respecting what
> would be reported in C++ mode as ODR violations.  It's a genuine GCC
> bug.

I don't think your case proves that.  In your "reduction" code, you have
this:

void
kbd_buffer_store_buffered_event (union buffered_input_event *event,
=09=09=09=09 struct input_event *hold_quit)
{
  *hold_quit =3D event->ie;
  *kbd_store_ptr =3D *event;
}

When event->ie is accessed, GCC can conclude that the 'ie' union member,
not the 'sie' union member, is active, and legitimately perform the
truncation which results in the incorrect code.

It is, of course, possible that there's still a GCC bug here.

Pip





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 27 Feb 2025 11:33:27 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 27 06:33:27 2025
Received: from localhost ([127.0.0.1]:58933 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnc8s-0003ii-Qg
	for submit <at> debbugs.gnu.org; Thu, 27 Feb 2025 06:33:27 -0500
Received: from mail-40134.protonmail.ch ([185.70.40.134]:43449)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <pipcet@HIDDEN>)
 id 1tnc8o-0003hl-Oe
 for 76559 <at> debbugs.gnu.org; Thu, 27 Feb 2025 06:33:25 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com;
 s=protonmail3; t=1740655995; x=1740915195;
 bh=QbtptNN7WPDDxoA1Z78MtsHny20tJr+Qn3vNYbdubIM=;
 h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References:
 Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID:
 Message-ID:BIMI-Selector:List-Unsubscribe:List-Unsubscribe-Post;
 b=tV2ZdserhLl/SgCL2J5wOIK0nuq32HR1n5D7KEFYnJsnvCX6LzsRlH84eH64gke21
 tORI5ay6Ixj6DsHeKPof4L6nly9bScdux9thHaPdUTjrztrQLmVkMtdAo4sr3SLxPp
 hA3fM3AsFOliORm6cahV4APuwd5rxvJi1XHX3PxulaXtjKzVTMQp9tKbF4qvBRmv2g
 z6W2lrKqfPoOh9av+IAuSradpMWWHIAE5eVPcwnPMbJLwbiXNIC4ZRURwm0LKAKbSY
 hmo6F0zHI/PLCCA+bcREX2166wiYu2Dvr8v5JZ8XOCV+K5Ml5lbikyGxhLhSlE6ObV
 1nAUFhUfk3jcw==
Date: Thu, 27 Feb 2025 11:33:11 +0000
To: Po Lu <luangruo@HIDDEN>
From: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#76559: 31.0.50;
 [-O3 + PGTK] Crash when 'copying as kill'/'killing word'
Message-ID: <8734fz39nx.fsf@HIDDEN>
In-Reply-To: <87o6yoar1m.fsf@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <87wmdc4osq.fsf@HIDDEN>
 <CAP+jDP6E=BdUHT3+w0g4QO1GYv5vDcx-VNmEPFp5UyLKhsCZow@HIDDEN>
 <87cyf44k7h.fsf@HIDDEN> <87o6yoar1m.fsf@HIDDEN>
Feedback-ID: 112775352:user:proton
X-Pm-Message-ID: 69bcf8dc0e40a1bd3c8be8bd771358057379c325
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Michael Albinus <michael.albinus@HIDDEN>,
 Iurie Marian <marian.iurie@HIDDEN>, 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

"Po Lu" <luangruo@HIDDEN> writes:

> Pip Cet <pipcet@HIDDEN> writes:
>
>> This is strange, but it looks like this may be a C undefined behavior
>> bug (or, less likely, an actual GCC bug).  If the event_kind bitfield is
>> listed with size 4, shouldn't the hole after it be listed with size 4,
>> not size 6?
>
> I'm afraid that must be a Gdb or GCC debuginfo generation bug, since the
> total size of the structure is 56.  Whereas the aggregate of the values
> printed by GDB is 58.

Indeed.  It's probably unrelated.

> Judging by the expression names, it's clearly copying only the `struct
> input_event' union member.  In fact, this erroneous code is generated as
> soon as SRA processes aggregate references.

Yes, SRA seems to be the pass to blame.

> What I suspect is that there is some CU in which `struct
> selection_input_event' is incomplete or fails to appear in `union
> buffered_input_event' and that that misleads the compiler during
> link-time recompilation.  But I could be far off the mark, since I am
> very much out of touch with contemporary GCC.

See my other message.  I'm still puzzled as to why an unsafe cast in one
call path modifies the assumptions made for another call path, but I
guess it all falls under undefined behavior and we should simply apply
that patch and make sure to follow the C standard more closely.

Pip





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 27 Feb 2025 10:16:00 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 27 05:16:00 2025
Received: from localhost ([127.0.0.1]:58265 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnavv-0005DJ-Ht
	for submit <at> debbugs.gnu.org; Thu, 27 Feb 2025 05:15:59 -0500
Received: from sonic306-20.consmr.mail.ne1.yahoo.com ([66.163.189.82]:43068)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <luangruo@HIDDEN>)
 id 1tnavt-0005Cz-0s
 for 76559 <at> debbugs.gnu.org; Thu, 27 Feb 2025 05:15:57 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740651350; bh=1dGBWHhfnEfKIQBzOpjWzVpM7F1PkehKs+3xyizfMo8=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To;
 b=Pu7a5gxiDT0C/cSn4PzRC3yyvVNltntsQfRey85GhM7p4KXn6boaPG/cLM6K5cmULyWYJ5UaCCC2+SgT3bPF2+68qkySy5g0fp5ZpZzEbfihHwV2AUZW5fOObOJIWJafc6ww5ckrwN726okAlasijQ7jP8SprqkN7lC51YTTEuiFbakTLsF4bVxyYtzr8+Cibjp4Piyd+8c8iT+0STEowcYGhxdv3sNk/CN8gOjDjuipcqH1wB+rdAm+9qx3NmXIDdlOjwtebva2y2beuTzZUc2UB5Twz2NmA+3ubdIRzE2koxI+WJzFGEYXB41habHTsA4G46l5R3j2oy5gDFFXKA==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740651350; bh=NctG8gYbmvrSfS4XFK80w18rriB92AARNQqFEgVyN0P=;
 h=X-Sonic-MF:From:To:Subject:Date:From:Subject;
 b=DIoRNbMj1cgXAAdEPBgijK33uV+wHBlPQ1/mbvDP8TFbC5yrLH3hZNsK9V436D+AbYfI17ERv7wkTV/cgFeB9RI70ZVBDfLl/UQUy7X/tu0mSAebZlpNc8pBWCorV216aKRwRp+HroPenO/P8uDFAdgicyXT1ntHvYEU6ogsiDHoqmn5hwR2VgwSYN8xL24VXK2LQ4AIbxVkqb/H2dE2frWdoy9lL8srZF6hRdPQul9rk1WyRli6Mr44d057yeI5tZrClqNuvTy3BdcSanjvZLrh7N+xPL8fXxVvzTWtRyTSsVF1NdiYLrjUv51qy44R+5L0roGd+H86P4lWYXOB1w==
X-YMail-OSG: fy_AM9MVM1kVym55hXi_MGecVj9fe14IJSN3jm45ZoYvlNjQX0owppCIsv6b7Vs
 qrRN.lJ3VmPWiDOCAOSFD1vOwR6U_dy76HpeTMQxCXtD95aBfyi41ZSdY.rTdFVU4gOpgqZaCeHa
 YxmvkIcKkn4viHvQc4m7LW8KfCXfuEBA5fRXrj_kq9DQ.OidX0bzdSTbC_ar_XpfU6H17b1SznxE
 jcdLUdAfyFkVmvBetdzXWX2SRjts9JERi4wNdIA6_jXH5NlOIvZXr2M5iP72KeUaT8uBWpSjYD0r
 GbdSUs7uJwBX5nuIBnHmVrdtuCFcq.VLOknIux5XWL.H2Zav4OZQPywmeLq.FYRkZPA4sGFhYZ1.
 NjXymLy86mWed8xRsZPrYJ8QLUh9XKnqvF7V14Cf0.jMk_uQHKB66vWEcMVqtmpqjO8lXYGGw3Ka
 BCaADK9ADQ9G5CccJ60kP.ZbU7U2P5cS7s.HnEmz3dXk6IWU12c3arm5MzjKb4Vowqh2GXeberfO
 BcWmNg7uaIaJqvotGnOmlEegeK8bl8FyX9NqfnIEiMTE3_iTTm99Z8yapcX62BY0pmkFTCmgVREe
 xN4HJWPyQk7YRPoOJdDfTzaYdbArnLfw5wixRnS2DqMqg8FnolwYvuM0AzEmISX9q8w36_i6GjD8
 z1LcLVRn7xz6ZIIxSpigUcB5UBdK3y2uFLqNTx6SBdzEc4l7io27kbYA_Jkvu8I1L8zvFWMtIiVl
 jDODxZGJ25irHMSS1s3OwQysZ71EIk1PafzEx.JuUod.5DD8U2H7v4TP1mRzi5P41_f3BKpd4EWf
 _cENM27Wfr9maAb2JwwTz_AOiF8kbRzwh2DFjT9DXIzpToM8UVFhEecip6QPtom0NdQ9ROM_kZXi
 x3IsSaFg0hY3CtaTx_gES8vgHT.butURotkBbVBdyBbeIABgJXu4ULovXQWMsaArhXVa0dTzEvcO
 eEH4UB1mce7DLkZGvyHrcpi9ygDWsytJ0m6JMJ2tubEZbAdHEaaXx8tedNsLu5aGkFswuNetpAKt
 0g5kd_OH5DpviUhxUyRYwTmIOtBdMkbNNBUVyjLdNZwvhuhTQDjNpKvPoaggxvXEB_lXvsQ7uM60
 lSOM4mzEAoCC3zfnK2y9ZnBq9zwq8U6G7b0U7kwtRHy185xRiiY5nJa_eZiiW7Xd7htRdCSDTdX.
 Lr0Nxcu9eKseGLsr__2W_UbnLhfNB8Xu5xES0mQ_NJl6.n9qNPjx1OC5UeqvMAouLYJCVFqe.q1t
 ErmWkb86utAr3mKqbS8HirJFrYVgIVn6_WjEsixBenbnyNSV8Q4sxSXHVVGk0yuMm4BW4qrHlACv
 UI02N.oh93QPy9NP5k22s0MFoSWFX.KXTSDpu1tvbvnUQFOAKRIqp0SQXmQXwIr.h__iWew.rYFU
 c5tuUNduXsOIdClhOcp27lmpqH4YSRXn9da38kNwdiv9lpQk9mju47sEBbC24WY7oaRbO.tkl_zM
 J8EozZE4QIxTvLHgMJaday0_QB3rzwryCBdr2LopR0skkHHzlvCl0.L4G9kkZoHi_I.L5NqkewzP
 vAaO6FcpbtyoZ0Sqy9q6CKW.YJBOYDHWaHlVnp5HbOblZWzmlzqPs.Ilr2Lt08v_tLjNTPQCdYhu
 oW.xsyp4lHAcUtsIszTJjcNmIXgr9qgZ2MdU_JqeP7dZCyrY8GNYQNml8aRatKRlze3hHKvDbyB2
 FiVcqnHFQH2APQ2mYLFhcFHC7G_fEiO.pS6aV7t0D5v5Jajcl1azFCZ.mq2Q_7OcxuPx8OwBB35k
 wUoj2wG1m.Xwt9zesXTpuJ6U4tfc6LliVOSIm6hxD.tXKQDKxNchOGRf4Butksa9sjfaKa5ivEix
 9aOO4nTzpYrECbVpUOjjKI8NSDQ1Af9fMLk_5cPvo3.KSCp9cOarBPC4nzzsBotFbq5y_YZNa2ti
 2yqCzbfW_pvlMgYa4.qIJ9ib6FyaA5TOaPwDx2JVtlLjG3BNMXrCw6oytnEdsUMiolIWS5qamzV3
 PWGtqdIhodSwFZlxIVWkoUsJEu.Z7z5EX_qSp60pRchuuFhDKtbcOTroLEfu_PqRqfnEkZMx_CRB
 pk.Q_Epx5ksRentpLJPv5.qX9aRA.ypyPCBop3qloRF.8M6G2mJEf0vORKxO251MKJcusL6T8a20
 qPbZEM3kzYztmQhx72S0EdvzbpWe8QVJIhZjwtJJ4ghx2yLnsRCbdjb70YOEAyAObmZMycb6WcUQ
 OwkEzzLbemQHwA_2TY2jRyTLdOnxz6ynvdTle4ptgYLhiKemKUFtvCh8HsIhb
X-Sonic-MF: <luangruo@HIDDEN>
X-Sonic-ID: 669c7dad-e315-4967-8426-6052e9d4175a
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic306.consmr.mail.ne1.yahoo.com with HTTP; Thu, 27 Feb 2025 10:15:50 +0000
Received: by hermes--production-sg3-9fc94b8df-swq4n (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID cda1a2d458b6b134bee7626567a1d603; 
 Thu, 27 Feb 2025 10:15:47 +0000 (UTC)
From: Po Lu <luangruo@HIDDEN>
To: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
In-Reply-To: <874j0fbsqh.fsf@HIDDEN> (Po Lu's message of "Thu, 27 Feb 2025
 18:13:26 +0800")
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <87wmdc4osq.fsf@HIDDEN>
 <CAP+jDP6E=BdUHT3+w0g4QO1GYv5vDcx-VNmEPFp5UyLKhsCZow@HIDDEN>
 <87cyf44k7h.fsf@HIDDEN> <87o6yoar1m.fsf@HIDDEN>
 <874j0fbsqh.fsf@HIDDEN>
Date: Thu, 27 Feb 2025 18:15:42 +0800
Message-ID: <87zfi7ae29.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Mailer: WebService/1.1.23369
 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo
Content-Length: 1803
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Michael Albinus <michael.albinus@HIDDEN>,
 Iurie Marian <marian.iurie@HIDDEN>, 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Po Lu <luangruo@HIDDEN> writes:

> Po Lu <luangruo@HIDDEN> writes:
>
>> What I suspect is that there is some CU in which `struct
>> selection_input_event' is incomplete or fails to appear in `union
>> buffered_input_event' and that that misleads the compiler during
>> link-time recompilation.  But I could be far off the mark, since I am
>> very much out of touch with contemporary GCC.
>
> After devoting another 30 minutes to this problem, I've reduced it to a
> trivial test case that reveals the same miscompilation under GCC 14.2.1:
>
>
>
>
>
> Simply execute:
>
>   $ gcc -fdump-tree-all -fdump-rtl-all -save-temps -O3 -flto -g3 \
>     reduction1.c reduction.c -o reduction && ./reduction
>   ffffffff
>
> and observe that the high 32 bits of the dpyinfo pointer in the saved
> event are truncated, as would be expected from these expressions:
>
>   ev_12 = MEM <unsigned int> [(union buffered_input_event *)&main_inev];
>
> [...]
>
>   MEM <unsigned int> [(union buffered_input_event *)&kbd_buffer] = ev_12;
>   MEM <unsigned int> [(union buffered_input_event *)&kbd_buffer + 4B] = ev$ie$code_16;
>   MEM <unsigned int> [(union buffered_input_event *)&kbd_buffer + 8B] = ev$ie$modifiers_1;
>   MEM <long int> [(union buffered_input_event *)&kbd_buffer + 16B] = ev$ie$device_6;
>
> With aggregate access expansion disabled, all is normal:
>
>   $ gcc -fdump-tree-all -fdump-rtl-all -fno-tree-sra -save-temps \
>     -O3 -flto -g3 reduction1.c reduction.c -o reduction && ./reduction
>   ffffffffffffffff
>
> In a word, tampering with optimizer options is tantamount to playing
> with fire.  Don't do it, if your object is a functioning Emacs.

Which, if it wasn't apparent, belies my earlier theory respecting what
would be reported in C++ mode as ODR violations.  It's a genuine GCC
bug.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 27 Feb 2025 10:13:47 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 27 05:13:47 2025
Received: from localhost ([127.0.0.1]:58256 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnatn-000533-BA
	for submit <at> debbugs.gnu.org; Thu, 27 Feb 2025 05:13:47 -0500
Received: from sonic312-23.consmr.mail.ne1.yahoo.com ([66.163.191.204]:33893)
 by debbugs.gnu.org with esmtps
 (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2)
 (envelope-from <luangruo@HIDDEN>) id 1tnati-00052Z-Lv
 for 76559 <at> debbugs.gnu.org; Thu, 27 Feb 2025 05:13:45 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740651215; bh=0D/w2z+Joc3YeS4d5KaJjaggUBms5IHSUIHlw/eetUc=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To;
 b=oBIAo5G1KoAJmLYxZEjQVvl3uRERGy52wIKNL2MuR7sPkwG5yd/d1EhVLRnqrqz7AcsIaJnxEbeMIgKGIkqDN098sGtqhgEaI4uU4U1sulgBCYsn/l39LwGm/SHMCoSn8k8pQ75/u2LCFdIsRUadjzOUaH8zb4sjUU5nSYip7N8lqSFp3triZoebze7QQcNovWDvxM6b8sA4mv0AhWUS+av4NONDW+YrXSQu65rmmbSpWXcPPwvjGw7RBf4ZqagMSyHqCCebXz5lkHYAJuXDlmKSkKcZchq5ZNKdDieAkPlsaRbUn4JQT5VnQlSkseEPPsjcOP3hhexfgAyjIP9IqQ==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740651215; bh=a3TMOh4ggRgU6j7Q1cV7EiD5CBt/rzjVribzFQBUJLP=;
 h=X-Sonic-MF:From:To:Subject:Date:From:Subject;
 b=LqvakIeRLXLN1oCWO59vDqDbXiRhyit8pO6VAFdrfgFpJIsRwctBcFllcxXg5KwCnK4C3Q7oRWohdmkhGQUvDSpb/FjCHUFvhaFHI4kibxd17+xk4De3J6Y78xtWecvm4Lvsx/s3s+mB0V7l9CJwHCxsYzwggZzvjfrzoofVxByPXfPamlSEX/6RR5fgCpo+2NFBlNMVa7V5lBxYEHc5IFICqKlQR4HvLmbhqQn6azgLCd/p/qXrxIrHi6sH/zSJmcWzH1doTCuNDKP07GxMXfJZerlIO+dQrmR2kKpupmfHwvDWETYxLXMGGgcym8OZGtMFOyDiCws4dK6LYkGVXw==
X-YMail-OSG: QQ_kJi0VM1mrOLsBEmlL7ecLuY9CZhCVuH1tXgesxu4cQ1Gbw8GB32.yyGu6qO7
 MQO5xAPuiXx2zKD.IaxA3xFa1DV_FlfOJUUiSJa3owbWC8rhgghqV5A_RQlMIyqoRWCJzYs1w2mM
 99ZQVW2H3Wa7vIVqY0l2QAtRcqGMgivG6jyPxr05I5c7PvtiDjb5K_V357BrITsmabOmpwFtGPYd
 ZOreMUv21E5S.IOfjUehS3D8VwTJjNGxLORspwM4WIZhTQydkLnHEoLw.4cjiGMizdn55rvUgDb6
 QQKFaw4bLfh0Qp0hhAqYLu.uuE4Pw_CvjWs_fJZ0wUBcBsapXTDviIdfQ9DidC6waHUFauKURO3j
 AQtiXPo4jevfUS6QGcA7atcV5VToOXZBDbIXhO3_vYyAo9B8SCcPk3l6syOIzJtYu4iSj68eUzDc
 4qMdxssG7z9pPy7zNgf8LJHaDIrYKtkPNi.Jhde7AotLQJjnzqWT0TU2PfgK17_oJ9wuKjfdpBw8
 exIw08AgMFXw4KwCTmG9f3tuFpMiM1LJiOR9vHXkkAg4.VlYm8vV6QDhJ5dTjOXKUQ.7Ti.D5mt2
 Ah.gUND2L.iR_hdoB49OoGXvTxJ.7HU35frHj8mDHWwsPjISdNUpF425OXLIJ7oZIsf_LTdksj4G
 3AVY2rn3qL0EgJ85g5txuoj68fqy5YREtysCYjuDson530C57WwD3FtJQraH2l9TnxlQyhWl9Mdt
 XOfdp5L35JHqotxs7zA0I3lugz92KNKc_VLaOk.oGYEJaaNA9.FPAwNrCdqjrZcnFAcs0K.b4Zb5
 zVT2F.bCouEcZc33tUy5NKUK3SL5hz2ma1mlUKgQ3yIuBe3PGnZjLoHs1_fTW4Vb95qu220UCgOU
 Z7C.vI_prg6K.TDCqMyBb8x0od6lHRc05vjFg3eXX.41m3xqQ7juzzALtfHfFnzPWppzsxGyatJV
 .1LuNGL_Z54uXpJXBH1CrhVwTCLXfNvNYQT13R.NtEz4a3vhFuLFp1yGF40dUoTxg7Tq014xTBkv
 wUfyswvY86KLVGJ4P5uDNCDFUs65o_ijOUYltPcOp2Ri3Xyxgkh1EvCJj8YgPQ7sSw7jEIre6Yy_
 6ypRoz1TTSg9fqItRt2qFlBQBCVf98CRqAgPXdJ5wkhbFPV8rhWMjvs5YP8m3IH7kHspb_zR52No
 oRPP8zk1jGmbcgEDUdtVcvE947beTf3t68NYgwpZ.ObAANxeIS4EbGCP5fGHKOFQ_7kpDDpQHPUX
 PDhPBxzviEIXgTu0ay92fY_ai25GB7Q7q5vdm1CKgr9we6PJJMvb9PqcYngUrjHiRAIRQFOfOkby
 9k.4I1wfkKZYNULx4TmqBGrufuK5j6Fwqa50YitUvt.aWCxzKgDRYk05h176rczBiyZaC6xYMvH3
 gVgsh9Bj_bajxdY2MVSvTTyIDplDqF8IGQdqgYJIwg.10AP0G_lO50GyWYrekEUtMzXgGX_8sSLX
 IXNuTj2f8U5dECtYCzmmXZ3UTjr0h5_Ws6F28KMsc0QJ5RL4WxqvetL9C1jW_0NXT6tBlL5iMDZN
 s6v5T0slOuQSb_beRFJVRSNDWFIIorpYzUt9CcPpqzUVjkvgR7NBog_TNn4Epr6X.x3eAqkhM.mu
 J7RjDKPlLow7jNqBhODMCqjQ50gkYXgpkX0ia.oBCLPFoUEP0PLlzzR8l1d3A48UdRI_lK0dFHMJ
 XGK0qc2cC9YrAZpCoZqFx.w1iMjYT3LsKwKiLwBnrr02T_osZd6XDQEcwFcXCksBQbtcoqKYE2qT
 GAJa0PuRCDPov.JkG8xJNWbQfkXs27RTladdIcwoVrtIdRlv60HBi7I4D3K2vyWRLDZ3I8rFxr9N
 45KzKb3QjPk.FCe0.cviAJd3Xw7wpmRYyw189L_TwU7g4AiXDtuWkA0MNLSuEayOB1jpJHNs_Xhq
 lE.XH3br250rTLwGzqYnLyvHvQerF4DTpWBJUdxld8_mY4yyxY9s33y7epcNpXAcaT5DVTc_eizT
 cewlUrUOpym532Q8SpSgwQhVDeScCiY9U2.Q4NwzDkh9vBUcCiu5tC402_RzC0mcb7SFgIALtQQP
 ATcHVguKwQ3fn_ZkHQ3Gphl8ynBCIGQLM95o6VSz9zazbmOeoMUYiFl55ehCVijewvPfSvK1Cf6r
 dYR4bDVZYtE_rk6Rn.qSCGs.WEOg_pMNNBA73M2xBP_LtLplC_krZ6DAjFBSfsAgin9KfeZUiLLY
 ImPaCSWkUPSKettrsyvHtyWE76HSTJ8F5gsuDIChPeekq90k6ELZhZS4xaRpl
X-Sonic-MF: <luangruo@HIDDEN>
X-Sonic-ID: db4b7731-9b64-4a78-80b9-ead4b35e2400
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic312.consmr.mail.ne1.yahoo.com with HTTP; Thu, 27 Feb 2025 10:13:35 +0000
Received: by hermes--production-sg3-9fc94b8df-mfrwb (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID 1533bc7174085831935a5092186febf8; 
 Thu, 27 Feb 2025 10:13:31 +0000 (UTC)
From: Po Lu <luangruo@HIDDEN>
To: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
In-Reply-To: <87o6yoar1m.fsf@HIDDEN> (Po Lu's message of "Thu, 27 Feb 2025
 13:35:17 +0800")
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <87wmdc4osq.fsf@HIDDEN>
 <CAP+jDP6E=BdUHT3+w0g4QO1GYv5vDcx-VNmEPFp5UyLKhsCZow@HIDDEN>
 <87cyf44k7h.fsf@HIDDEN> <87o6yoar1m.fsf@HIDDEN>
Date: Thu, 27 Feb 2025 18:13:26 +0800
Message-ID: <874j0fbsqh.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Mailer: WebService/1.1.23369
 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo
Content-Length: 3351
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Michael Albinus <michael.albinus@HIDDEN>,
 Iurie Marian <marian.iurie@HIDDEN>, 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--=-=-=
Content-Type: text/plain

Po Lu <luangruo@HIDDEN> writes:

> What I suspect is that there is some CU in which `struct
> selection_input_event' is incomplete or fails to appear in `union
> buffered_input_event' and that that misleads the compiler during
> link-time recompilation.  But I could be far off the mark, since I am
> very much out of touch with contemporary GCC.

After devoting another 30 minutes to this problem, I've reduced it to a
trivial test case that reveals the same miscompilation under GCC 14.2.1:


--=-=-=
Content-Type: text/plain
Content-Disposition: attachment; filename=reduction.h

enum event_kind
{
  FOO,
};
#define ENUM_BF(TYPE) enum TYPE
struct input_event
{
  ENUM_BF (event_kind) kind;
  unsigned code;
  unsigned modifiers;
  long device;
};
struct selection_input_event
{
  ENUM_BF (event_kind) kind;
  int *dpyinfo;
};
union buffered_input_event
{
  struct input_event ie;
  struct selection_input_event sie;
};
void kbd_buffer_store_buffered_event ();
union buffered_input_event *get_kbd_fetch_ptr ();
void init_keyboard ();

--=-=-=
Content-Type: text/plain
Content-Disposition: attachment; filename=reduction1.c

#include "reduction.h"
union buffered_input_event kbd_buffer[1];
union buffered_input_event *kbd_store_ptr;
void
kbd_buffer_store_buffered_event (union buffered_input_event *event,
				 struct input_event *hold_quit)
{
  *hold_quit = event->ie;
  *kbd_store_ptr = *event;
}

void
init_keyboard ()
{
  kbd_store_ptr = kbd_buffer;
}

union buffered_input_event *
get_kbd_fetch_ptr ()
{
  return kbd_buffer;
}

--=-=-=
Content-Type: text/plain
Content-Disposition: attachment; filename=reduction.c

#include "reduction.h"
#include <stdio.h>
union buffered_input_event *event_q_0;
union buffered_input_event main_inev, main_result;
struct input_event main_hold_quit;
void
evq_flush (struct input_event *hold_quit)
{
  union buffered_input_event ev = event_q_0[0];
  kbd_buffer_store_buffered_event (&ev, hold_quit);
}

int
main (void)
{
  init_keyboard ();
  main_inev.sie.dpyinfo = (void *) -1;
  event_q_0 = &main_inev;
  evq_flush (&main_hold_quit);
  __builtin_memcpy (&main_result, get_kbd_fetch_ptr (), sizeof main_inev);
  printf ("%lx\n", main_result.sie.dpyinfo);
  return 0;
}

--=-=-=
Content-Type: text/plain


Simply execute:

  $ gcc -fdump-tree-all -fdump-rtl-all -save-temps -O3 -flto -g3 \
    reduction1.c reduction.c -o reduction && ./reduction
  ffffffff

and observe that the high 32 bits of the dpyinfo pointer in the saved
event are truncated, as would be expected from these expressions:

  ev_12 = MEM <unsigned int> [(union buffered_input_event *)&main_inev];

[...]

  MEM <unsigned int> [(union buffered_input_event *)&kbd_buffer] = ev_12;
  MEM <unsigned int> [(union buffered_input_event *)&kbd_buffer + 4B] = ev$ie$code_16;
  MEM <unsigned int> [(union buffered_input_event *)&kbd_buffer + 8B] = ev$ie$modifiers_1;
  MEM <long int> [(union buffered_input_event *)&kbd_buffer + 16B] = ev$ie$device_6;

With aggregate access expansion disabled, all is normal:

  $ gcc -fdump-tree-all -fdump-rtl-all -fno-tree-sra -save-temps \
    -O3 -flto -g3 reduction1.c reduction.c -o reduction && ./reduction
  ffffffffffffffff

In a word, tampering with optimizer options is tantamount to playing
with fire.  Don't do it, if your object is a functioning Emacs.

--=-=-=--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 27 Feb 2025 08:41:53 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 27 03:41:53 2025
Received: from localhost ([127.0.0.1]:58032 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnZSr-0000Nd-2Z
	for submit <at> debbugs.gnu.org; Thu, 27 Feb 2025 03:41:53 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:53568)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tnZSn-0000NI-BS
 for 76559 <at> debbugs.gnu.org; Thu, 27 Feb 2025 03:41:50 -0500
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 <eliz@HIDDEN>)
 id 1tnZSg-0007cX-2t; Thu, 27 Feb 2025 03:41:43 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=ogs5th7nS0AT4uFNl+Cvp/D9GGAXhPqaIbvfoEcL4AA=; b=TxYmAZezsU+g
 4fZVhkeLdsAAVnPBZTLcqpjiliqB3hYNFRUOEGKSN1KZ5SCXPKJ7DTXvviVEJInGYSPkwFzWzH8kw
 lcyUITuI5c4pgq0RxbTyGsDQHxcTcA5m8RGuBBnO3T2mbreL8PEKowUCQVlC9c3d8faiVDfQLpKfa
 uTUE3e8EF3Mh2ARfGFjGKFIQcvQap8LXlV+m8Vgsmo8iZ0k7rg2plRDDxc6NtRzsJN/NDCZxl3dPH
 zWkzQf140WrdsxJFa0uPwgNHZqI9z+AoJYO9wo+C80eQnwXFM+R/8CflI+0PEHrHL67UP4EZsUoVq
 t7zsfKB5mactwM6w7igBag==;
Date: Thu, 27 Feb 2025 10:41:30 +0200
Message-Id: <86tt8fu6dh.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Po Lu <luangruo@HIDDEN>, Pip Cet <pipcet@HIDDEN>
In-Reply-To: <87jz9caqys.fsf@HIDDEN> (message from Po Lu on Thu, 27 Feb
 2025 13:36:59 +0800)
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN> <87jz9caqys.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 76559
Cc: iura.mail@HIDDEN, michael.albinus@HIDDEN, marian.iurie@HIDDEN,
 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Po Lu <luangruo@HIDDEN>
> Cc: Iurie Marian <marian.iurie@HIDDEN>,  michael.albinus@HIDDEN,
>   iura.mail@HIDDEN,  76559 <at> debbugs.gnu.org
> Date: Thu, 27 Feb 2025 13:36:59 +0800
> 
> Eli Zaretskii <eliz@HIDDEN> writes:
> 
> >  Po Lu, any suggestions or ideas?
> 
> I replied to Pip Cet.  It's likely a GCC bug, and one which I cannot
> reproduce in 14.2.1 or the recentest GCC 15 snapshot, rather than
> undefined behavior in any sense...

Thanks.

I believe we should recommend against using -O3.  Too many bad bugs
happened recently, especially in the latest and hottest versions of
GCC to justify such a recommendation.  Especially since using -O3 is
extremely unlikely to produce tangible performance advantages (if
someone has data to the contrary, I'd be interested in seeing it), due
to very large inner loops in our code.  Moreover, the excessive
inlining affected by -O3 could well cause CPU caches to overflow, so
it could well be a net loss in performance.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 27 Feb 2025 05:37:15 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 27 00:37:15 2025
Received: from localhost ([127.0.0.1]:57583 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnWaB-0007UT-9x
	for submit <at> debbugs.gnu.org; Thu, 27 Feb 2025 00:37:15 -0500
Received: from sonic314-22.consmr.mail.ne1.yahoo.com ([66.163.189.148]:39890)
 by debbugs.gnu.org with esmtps
 (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2)
 (envelope-from <luangruo@HIDDEN>) id 1tnWa9-0007UD-0W
 for 76559 <at> debbugs.gnu.org; Thu, 27 Feb 2025 00:37:13 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740634627; bh=40IVjBxorCv2nlxbU6rsRT2VWaOjj4VZFwCn4seYX5k=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To;
 b=JUQlKH903fLyQCusUoQpXK3XxD04RgSR5Zqz0RSqVfX2+w/x5vfBLzwvSImDK3iOqUfcq1Vxp/n+41wVUHITHAn7IGM4eKFkinHArUU5zoM2NiY8XmOGzgu0q0Hj6xFwG7mNdIoZ60MISxFYPo6cTIKTIixDU2kZrz2N88Vvhcv37PKPku1yyZUcQYtnXrMispCkW0bO7Ph2Hl+2mkh4DUqd2MG4+3NJYX260gK2PbS3XIMngAP0lMj7+bg6Q34RbditXj+z+g+wD19W8NcLrQJ1n+A6ummPNq0DrMeGQGh6Rimg7bH0t0VWMTw8hYqc11ybY/p1fOPYsxua55zrPA==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740634627; bh=Nd/FB+KnBh5I2TmO73Ydfsk1D7sli2iCKDMhdXv75VE=;
 h=X-Sonic-MF:From:To:Subject:Date:From:Subject;
 b=MSON5lDdSppR2pQci4Yo3ZDAqoPBoyrhCDoYnhyQ9V0kG4LDTPnUHD9ndm5ddF+DCCaWX3WA2ctrvfEPDrRi7zfws7Tiwv/3jK2CDqbSJ0sTCwBMZZuYL8gImVkDCNQiuaXFNIqJh34Ygvz8FvT3FNl6etqbcYSF68uBv8KOCpiAs6Nw0yM5tueE35wr6fLi/vOW9tU5Ln5OxHBkurtXjsY7OTIEDaPVhX21SZEMkVs1cN/Ige4kf0ditB6EfyxgajUbDueLOzgRYv2DSWcZ3o+JBqWKl6dDgVvOLCNDukfGRMlq9lRD69sQIVYgRoPCwwWdLr+GXIMwHaD8oYxFAA==
X-YMail-OSG: aQ1yeMIVM1mcT.IVS6laX1mbBm_kupU6nFBR7wGkg7Oiem0eqoY1Cie6IwmkOjZ
 DoRm8YwdU9bUMiuVQW_C4tI6KjdtXLXSHKQ_HOvccQe99gurFUYezuLDJ9WflqXqzrnwTM2m0sM.
 qdd7kKpUmsoJ8BcB_gL1lZ_UZ0YMum2AWNAQmTf0auvCh9B.q6vpY_55GTaw8y4cpvmoRmgy1a_d
 WgAscbUBSeWDRE42p9yEFZKC.ZUyschTTOoHmlYxB6Vtqy31UDD1nVRvJ_3oO.BDNbh51xHdH40r
 MK8lE5RTuAhoAwxnHM77mD1ikpHUx78O.XGo9H8Rot1xU7rdp16XP3uRjwDB4Ym7MhDvAB4RNAyq
 to3Ah5ufokTf1jMmVtPbkwA4Qpmhb6.DQoayD1Yc9KgqtFSIv4Afc4wWEUCP9Golk58R7rQljljI
 354K8mxI8TeJ2c1Ca4UYD8TzSxN7vszYHxLZF6xrMng1RihGqve0XZdw1OS_qJisBrKMO36dRufP
 JSs_AuZpHeXqrAAk585EY8owPlipOKQWIwwWs.NSo4L9CcT7DJn8iRbWe7MKI.vN9X.zdKPP014Z
 jgTgcqRWU1MCPpQ3RzkGkMGCZ0sMJ93AWm0vENMsRcZ0QfMWeYugWJvRFOI_II2ynVFFM8brWUN8
 A5JI5MbNHVN6N_HvWfuREpfsO2_8V7_YGH5J.xGVTb3MI1u30_6YV04arUkJeZwNf.0Hh0F2qZi2
 wlTTGF8l.44R57.Q8JW5wCTS8Jl9AjPBfAbXDzvYmP5vmVG8.qhOq5tlM3a.pf_ICzR7_1LlYJ9X
 j9tCfKdQKIJNYgJOoeCxp759ENsJMNOKxb_GV2umgpVxjzSywD6PHnPCxNFLWjVvwdXL80L.K_4A
 66F3oEdFxTH_Z9tv.C834FyMK4lN9sNuArbT_IdNpggn4kWKCw250UZ4_vtwOoI85OAFASASv1kY
 uL8HyaSEIqV1CAu.6x1TjHVMQxX.79ufcIguapIm4X1hnjqj.2V0YYO6v6s3Yv58z1kmWktVh_qW
 4k6vzt2mXcWS8SmmOVviShPdU59QUkdGud5DCGTfcfGZUOhvPWhb6Y0FaLtwoBKtZoON0EnLGwNd
 MW52BUth1dT8LfrhX6Z.v4.2Z7GA_z4bxBpc5DK0gTnZ7oATeEytIANPdjy1gecYmeOAihL6rRb5
 nLNZETfp1_fusaViojXq8VwBPl4uN3kWd9sUU36Q3m4rkKVEZgN5nK5utJPzMx2jZ2XjVJjCCbwe
 1Zn_rRES9grjEiuI_2WBkB3A27NbomRc.uG.vX7QZwcSlM.9LZEE38ALWZn1KVetGqrRYlc0QR1h
 WztoCp9.kcfRmspkC67rRYuMCfvh8G68.Kvp.6wr1Xny3Uvg8vdbUixMZJ.rKIBWjLYYDxAQmvim
 gxNxCTv4e1Rmt74nSqC.QSCpnTYc9ILzkNR9qZGRpXZihCtDqZTwQSVuvFaIaF22.kycprcoMENK
 Udvepof6bsy.UK6CcfXpTB5fNAcSmSGVNdft1_gD5_3pBZmVx0CyaNxYJVnUAryXnpz9ilaRl2A1
 W1qgCVAVFuNnvtK55PXd_gaLFwm4dVXRvB0nC1IaJxm4Q8tF6eb3uFw0KJZGe_5a2XQrx2QNs5sj
 1S_K_XNDgz9xX59K4Fq.XU9YYmbojxvacz2oeRWRwkKkm6yY1Myv2ZFBcQm2iVoBBkUSTM5Gi6W1
 Sk7la.QkAxmYq7BLogC40K11cWX6VH1lDmEqtFzF_qbXCMs1F5NJY6dQfIxbnjo9I7aIn8GTOf7m
 b.ypC.JH.xyBSt7cG72REisE0Wx25EfbxbbTOdt91Jp5t1fYlZG19MJtYneAJUvPXb29cKHm_qU1
 E.wEPsYNkume0hYS71V3EPJaiiCrN2B7cKJRdz0nRX0rv5sKTnxcb3cCQKIstPBM8MLO8NYxk6tD
 UQzHhTpRBN3vg8KQVK4dZlLp3JEeROfgZ6z8HL.hOZwlsWFBo6oYvbFXkOoirhTGCGRTMYTIR_Th
 zg9vsLEXipef.Hf1EklC5AEjMDUil3GD1rgNaDhjur36VLoOEh93O3CNqZVCoMkP66MSG0s5N5s1
 Vwvv_5cYx8Ta_gW9xxWEVS0q.UQ2Z23qfwvO0VkTM2wwmark6OukmS_SGM6M_xeIanIbUYqrxmtq
 t53ZLmQMTxVhzXGBfC1j7NJJ.7WDDj3.VQu7OG8yYkI.cMAafZdeskPO8pK3qnsgpKBCGfTLFusQ
 Myc3h4AyWVeRMAOCkpW.oYuKlQ9HO.C4M4U5yDDpr1YHDWyV3ECuyk.6MOQ--
X-Sonic-MF: <luangruo@HIDDEN>
X-Sonic-ID: 79732b9f-f50a-435f-bc3e-1628776b779a
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic314.consmr.mail.ne1.yahoo.com with HTTP; Thu, 27 Feb 2025 05:37:07 +0000
Received: by hermes--production-sg3-9fc94b8df-n5jjn (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID 5fc6428a80d4dbaff5a57c3b0548c628; 
 Thu, 27 Feb 2025 05:37:04 +0000 (UTC)
From: Po Lu <luangruo@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
In-Reply-To: <86h64gvf3a.fsf@HIDDEN> (Eli Zaretskii's message of "Wed, 26 Feb
 2025 18:35:37 +0200")
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 <86h64gvf3a.fsf@HIDDEN>
Date: Thu, 27 Feb 2025 13:36:59 +0800
Message-ID: <87jz9caqys.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Mailer: WebService/1.1.23369
 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo
Content-Length: 245
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: iura.mail@HIDDEN, michael.albinus@HIDDEN,
 Iurie Marian <marian.iurie@HIDDEN>, 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Eli Zaretskii <eliz@HIDDEN> writes:

>  Po Lu, any suggestions or ideas?

I replied to Pip Cet.  It's likely a GCC bug, and one which I cannot
reproduce in 14.2.1 or the recentest GCC 15 snapshot, rather than
undefined behavior in any sense...




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 27 Feb 2025 05:35:38 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 27 00:35:37 2025
Received: from localhost ([127.0.0.1]:57576 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnWYb-0007RZ-Dq
	for submit <at> debbugs.gnu.org; Thu, 27 Feb 2025 00:35:37 -0500
Received: from sonic314-22.consmr.mail.ne1.yahoo.com ([66.163.189.148]:42756)
 by debbugs.gnu.org with esmtps
 (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2)
 (envelope-from <luangruo@HIDDEN>) id 1tnWYY-0007RB-BA
 for 76559 <at> debbugs.gnu.org; Thu, 27 Feb 2025 00:35:35 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740634527; bh=/dLxoAbvAzZcv4KAKzOmMa4yvsOSUlAyzL8AISQR50k=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From:Subject:Reply-To;
 b=Z3WFHqd+sbmoAcmwjZxlOiTW5Boq/6FFWcaLXbB6+BFe+EvAZh0UtJeY78BEp9iEa2ITvhRJY5hts8s7eJZaJxdLbz6mBRtsmvl0DLXJ4r9GYBx9Y/7xy30gTdzMKLIh/ouEbqfe8tmiY3k2hX5o5iZ8/e/e9GyIcpBiXekhWyl/lMERDRo+a7FbVTNlIRimsBXOfEDsW5rU9cBgU04R1ANImcl7QKdKNy4X/o27dYVnSRYE9FOo7zEVSY2n5IqSFMDakhLjZtM8/w/YE2qHq65lcV7vGrWDlAhNuTSnNcygOSlrNT6BqiEZ7h3bJ2JSwUzM0N8+r207mHqIc2o60w==
X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048;
 t=1740634527; bh=YARxwB7Q8upeP9FBtCzaR+lDW/Ha7OMwnj/Wmw2Fv5v=;
 h=X-Sonic-MF:From:To:Subject:Date:From:Subject;
 b=LdfI3s+JevweyFTFasNlgZ0SCg5kgWM43i003bLRabpv0NwNYbHCQy6sfISCARueWqjrRFO6hgLL5BI0v+RGmMv7W2sSZltfS2scaEKMKfIiLJ9iTR8glDzb/GpKf6v8rHsXVVwnuICzkr+lTU9PXj06BzpMRG77oKJ2oxfOXVKneaZW9/kBA1JNWMT3Uqb4KtmPtUVOlfQhQN2FYj/I36Fdk/hb/Nfrjy7xKbFcXD3xV/1Rvx6WUCSK71WveUzC0gs4jt1DVijSMQvigBJSzGFNSu2+XIdQfwyeUaiZP/5VM18k4S5IIxCshO/937ghExMq+qsRFmdfw11xEmWkoA==
X-YMail-OSG: .KLoZ4EVM1khDPLS9zg9gSGCH.Eh01_ASAihQgENEw_OmwxoQIGIkm4U8Co1ahL
 9wvduEz5wyK4kPsFpbZml4_vHhsF3.0SH4T.gjzVLyGLjz1EXqezAABxFyjmC5YFbcHhk3eU0TN7
 rnlnWKiK.q6WjSNwdBP29cJoQl0.qSM8xHZkM0yWZqn2QuHZXGT0fqLx20CKSdCW7ORY.2SFvi_4
 iIBSJhuz.P5et51hh.wgcJrtFcI1M31RlrLvQV1SH9br_ptLGAe2bNhmJHgjpYH.2cvTKSGfxRs8
 TKgrg7.o32JXZMhFDbOAn5d4twoo1rXWF5AjJaBDfNO5vUvc7IbS4wy8txWlxwXf3fB3Wq1VaK5g
 nmFeu.6C4ddl1ota24TH99_2B1y789CiCAO.S8ux04ncolNiYweFyBjllBSAPRdXDRC5pCoHUTWy
 L0RsP2FXqrIsDoj16b6qj1JgYY0vsWqyuGP4ZYrHC4zp7vbBtWWtttq4E4Cv8txnRrIl4UNBOK6j
 m.iLBLWOUjbk8udPZCcJVtR7qxED.SXc_BG01YnZK6cYxQiEl4EXiG2Pc9Vj7ibFvolNlHjAe1hJ
 gbbDusWOzU9I62R4k.Poq4z4npRAmltyu60_07lxVh0q5S_yRSkMK4Ye8QrGdvuwQcjvw7YO_Ghk
 07ZXZcfZRousvnH6G_hxFsHlkZuuuvle7cwk6MpXGEx9npvV04ymW0_C1DfzIPK5arIB1vC2B5GS
 f9aKQig2jQ6xLUi__6yvahh2ENx3AaV._3eXpqmxzoddqB.yw9RH_bIBHfDhjYkCmwseLVzy42wA
 9eRpYqczMbN.ZSguUMFjCKcWUd4VkgFTgI10h4pU_jTRW.s8qFCv30onDFZe35vJfJwZu0AZSSj_
 iasdi553Sb1c5r.lqapl7Jd2jYyLAqqsfNPFjsLx_Hyh61DIXKEliqXiG5DDCRF1vnZG287QwGLF
 U7jRLwY199duz2BZxd8yfMFRS4bZkkoElqNcOyoGyQJkoTgyQqz61BHt6z77clhl_6vF8VOY2iOq
 bIYWidRe.A0LDkcjbv6vqySKdC7mWcjXv3aomOjzydNYuUuNo.BU9HQKZIRMqskyrJYL1xCAMVZN
 Q8hw5L1SlQjQF5DGe3LSc6_rTVIEVaX0nMTMNHPXKV0uUAtLUpVN8xy2Ko0LQOCXi3JOqkILrCxZ
 gvAtKkcgcw7tIO2B2qHSnGMhPWtkW8BX8_c65E.HbrG8L_VpM9Wk0fpxq63cyvPm8mh5RtpTYxaZ
 rx1G4QZAlbnNz4eTMh_X_SyceIkkOFKkl4rNbzESQelEzrh7B5VJB9EA4jqA8FFcnxTN7111._nS
 VnBXwYjaEnzjcrEKrR8UUrDTAVso2wSmmk5xJENm1Q8OJsogGaxyJWM0h38mGRarhWKUAIvjnAVx
 RiDGPaYvVCWNRHttJCUQM2wst5xSRmPuK58pjRlBpRhaNqecdhlArhOxKTsNJ.SI_q54VpFDkQj.
 K_LOMWO4m_2x4G5pdgucSbrsCqr0OduC1r9vrxZULLiOJoB245QEjCuFHB7Eem3LtYIufZx9AcYk
 BkF.L.cwJDE0TGo5XyhBX4Bf9QlcyvNWpHz9CXiupAvh0p3bhKK0sfiwSGC9cjML24e5YVyKgEaH
 EnsXQyiQ1JQBgxUHOtt8yghqNZG8Xg64HELKe4XXvlKSzfscy2jcX4ufLMNr7MtL9cETsg.y7KIP
 yyPbQ1pXr7.THHPWn525Zczg0ylqf.Hht2zu3F4j5ydFlSPOYnkyq.BfzKlFqB4AFfPJvkeao55j
 YFKIebslQPc.Ri7NHsRaK0bGPLSBY4Wo76GADXUMlMnTXRNeMTCZNsQiL5Qu5fEpyEWK2WLcQTXq
 BeKvkq_ftadCvRXU1f9KDsKdBI1GO2HHU.5JXF34Ql_3L9oRDLLHRk3kC3H.G4yq.N74gLYjIpcV
 L5rxGdUWFleZJcYPyThLGj9QbdIkA1W2P_7ymgIB4eoGrC7Hrk11pfFW7m2bkzW7Vw03R4UBDNnv
 Nosl93v7lHvMEYmlVapElUHjsWv5ryqLqUO7kvQz86m4xoD4DNdEL2RvNH4wLdVshridZSDWlF.p
 IYFepRDC8ayAP6mxibWsYyXrfJF.iX4A38FuJBBFj_UTaTVZekNOYu0ZCTd.FbEUVZOECwiCq9lY
 vZI6zJH2.uzY.iO64EruAOq8g5.iO5Rt1AAp7LFu5Rbo21cZnwu2dEqq7pV3DwQxBioydmEXvQER
 G96lZY2XRc468.e3HPKSyAciapj7iIaQtoHTh7FWSJ8f8UAJRdrDs8A--
X-Sonic-MF: <luangruo@HIDDEN>
X-Sonic-ID: d3effe89-33e2-47e4-8af9-810789ec7ab9
Received: from sonic.gate.mail.ne1.yahoo.com by
 sonic314.consmr.mail.ne1.yahoo.com with HTTP; Thu, 27 Feb 2025 05:35:27 +0000
Received: by hermes--production-sg3-9fc94b8df-cmcq2 (Yahoo Inc. Hermes SMTP
 Server) with ESMTPA ID 881516be401ae9153cad031015dfb730; 
 Thu, 27 Feb 2025 05:35:22 +0000 (UTC)
From: Po Lu <luangruo@HIDDEN>
To: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
In-Reply-To: <87cyf44k7h.fsf@HIDDEN> (Pip Cet's message of "Wed, 26
 Feb 2025 18:47:51 +0000")
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <87wmdc4osq.fsf@HIDDEN>
 <CAP+jDP6E=BdUHT3+w0g4QO1GYv5vDcx-VNmEPFp5UyLKhsCZow@HIDDEN>
 <87cyf44k7h.fsf@HIDDEN>
Date: Thu, 27 Feb 2025 13:35:17 +0800
Message-ID: <87o6yoar1m.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Mailer: WebService/1.1.23369
 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo
Content-Length: 5146
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Michael Albinus <michael.albinus@HIDDEN>,
 Iurie Marian <marian.iurie@HIDDEN>, 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Pip Cet <pipcet@HIDDEN> writes:

> This is strange, but it looks like this may be a C undefined behavior
> bug (or, less likely, an actual GCC bug).  If the event_kind bitfield is
> listed with size 4, shouldn't the hole after it be listed with size 4,
> not size 6?

I'm afraid that must be a Gdb or GCC debuginfo generation bug, since the
total size of the structure is 56.  Whereas the aggregate of the values
printed by GDB is 58.

> Here's the code obtained by disass/s evq_flush which copies the relevant
> part of the header:
>
> 3810	      *kbd_store_ptr = *event;
>    0x00000000002f9f4c <+108>:	movd   %xmm0,(%rdx)
>    0x00000000002f9f50 <+112>:	movdqa 0x20(%rsp),%xmm4
>    0x00000000002f9f56 <+118>:	movdqa 0x10(%rsp),%xmm5
>    0x00000000002f9f5c <+124>:	movq   %xmm1,0x4(%rdx)

If kbd_buffer_store_buffered_event is forcibly inlined, my GCC 12.2.0
generates virtually identical machine code to yours:

   0x000000000067fd8c <+188>:	mov    0x1f653d(%rip),%rdi        # 0x8762d0 <event_q.lto_priv.0>
   0x000000000067fd93 <+195>:	movd   (%rdi),%xmm0
   0x000000000067fd97 <+199>:	movdqu 0x10(%rdi),%xmm2
   0x000000000067fd9c <+204>:	movdqu 0x28(%rdi),%xmm3
   0x000000000067fda1 <+209>:	movq   0x4(%rdi),%xmm1
   0x000000000067fda6 <+214>:	mov    0x20(%rdi),%r14
   0x000000000067fdaa <+218>:	mov    0x38(%rdi),%r13
[...]
   0x000000000067fdb4 <+228>:	movaps %xmm2,0x20(%rsp)
   0x000000000067fdb9 <+233>:	movaps %xmm3,0x10(%rsp)

[...]

   0x000000000067fd27 <+87>:	movd   %xmm0,(%rdx) ;; bytes 0-3
   0x000000000067fd2b <+91>:	movdqa 0x20(%rsp),%xmm4
   0x000000000067fd31 <+97>:	movdqa 0x10(%rsp),%xmm5
   0x000000000067fd37 <+103>:	movq   %xmm1,0x4(%rdx) ;; bytes 4-11
   0x000000000067fd4a <+122>:	mov    %r14,0x20(%rdx) ;; bytes 32-39
   0x000000000067fd4e <+126>:	mov    %r13,0x38(%rdx) ;; bytes 56-63
   0x000000000067fd52 <+130>:	movups %xmm4,0x10(%rdx) ;; bytes 16-31
   0x000000000067fd56 <+134>:	movups %xmm5,0x28(%rdx) ;; bytes 40-55

You'll observe that the gap coincides exactly with the padding in struct
input_event.  This is the RTL GCC produces just as it is lowered from
optimized expression trees:

(insn 582 581 583 62 (set (mem:V2HI (reg/f:DI 106 [ _68 ]) [66 MEM <vector(2) short unsigned int> [(union buffered_input_event *)_68]+0 S4 A32])
        (reg:V2HI 170 [ vect_ev_kind_24.71 ])) "keyboard.c":3810:22 -1
     (nil)) ;; bytes 0-3
(insn 583 582 584 62 (set (mem:V2SI (plus:DI (reg/f:DI 106 [ _68 ])
                (const_int 4 [0x4])) [66 MEM <vector(2) unsigned int> [(union buffered_input_event *)_68 + 4B]+0 S8 A32])
        (reg:V2SI 167 [ vect_ev_ie_code_157.76 ])) "keyboard.c":3810:22 -1
     (nil)) ;; bytes 4-11
(insn 584 583 585 62 (set (mem:V2DI (plus:DI (reg/f:DI 106 [ _68 ])
                (const_int 16 [0x10])) [66 MEM <vector(2) long unsigned int> [(union buffered_input_event *)_68 + 16B]+0 S16 A64])
        (reg:V2DI 164 [ vect_ev_ie_x_134.83 ])) "keyboard.c":3810:22 -1
     (nil)) ;; bytes 16-31
(insn 585 584 586 62 (set (mem:DI (plus:DI (reg/f:DI 106 [ _68 ])
                (const_int 32 [0x20])) [66 MEM <Time> [(union buffered_input_event *)_68 + 32B]+0 S8 A64])
        (reg:DI 84 [ ev$ie$timestamp ])) "keyboard.c":3810:22 -1
     (nil)) ;; bytes 32-39
(insn 586 585 587 62 (set (mem:V2DI (plus:DI (reg/f:DI 106 [ _68 ])
                (const_int 40 [0x28])) [66 MEM <vector(2) long unsigned int> [(union buffered_input_event *)_68 + 40B]+0 S16 A64]) ;; bytes 40-55
        (reg:V2DI 163 [ vect_ev_ie_frame_or_window_11.90 ])) "keyboard.c":3810:22 -1
     (nil))
(insn 587 586 588 62 (set (mem/f:DI (plus:DI (reg/f:DI 106 [ _68 ])
                (const_int 56 [0x38])) [66 MEM <struct Lisp_X *> [(union buffered_input_event *)_68 + 56B]+0 S8 A64])
        (reg/f:DI 110 [ ev$ie$device ])) "keyboard.c":3810:22 -1
     (nil)) ;; bytes 56-63

Judging by the expression names, it's clearly copying only the `struct
input_event' union member.  In fact, this erroneous code is generated as
soon as SRA processes aggregate references.

  MEM <short unsigned int> [(union buffered_input_event *)_68] = ev$kind_24;
  MEM <short unsigned int> [(union buffered_input_event *)_68 + 2B] = ev$ie$part_10;
  MEM <unsigned int> [(union buffered_input_event *)_68 + 4B] = ev$ie$code_157;
  MEM <unsigned int> [(union buffered_input_event *)_68 + 8B] = ev$ie$modifiers_58;
  MEM <struct Lisp_X *> [(union buffered_input_event *)_68 + 16B] = ev$ie$x_134;
  MEM <struct Lisp_X *> [(union buffered_input_event *)_68 + 24B] = ev$ie$y_90;
  MEM <Time> [(union buffered_input_event *)_68 + 32B] = ev$ie$timestamp_23;
  MEM <struct Lisp_X *> [(union buffered_input_event *)_68 + 40B] = ev$ie$frame_or_window_11;
  MEM <struct Lisp_X *> [(union buffered_input_event *)_68 + 48B] = ev$ie$arg_78;
  MEM <struct Lisp_X *> [(union buffered_input_event *)_68 + 56B] = ev$ie$device_77;

What I suspect is that there is some CU in which `struct
selection_input_event' is incomplete or fails to appear in `union
buffered_input_event' and that that misleads the compiler during
link-time recompilation.  But I could be far off the mark, since I am
very much out of touch with contemporary GCC.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 26 Feb 2025 20:37:22 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 26 15:37:22 2025
Received: from localhost ([127.0.0.1]:55659 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnO9d-0007Pl-Q0
	for submit <at> debbugs.gnu.org; Wed, 26 Feb 2025 15:37:22 -0500
Received: from mail-wr1-x434.google.com ([2a00:1450:4864:20::434]:51678)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <marian.iurie@HIDDEN>)
 id 1tnO9Z-0007PM-Cz
 for 76559 <at> debbugs.gnu.org; Wed, 26 Feb 2025 15:37:16 -0500
Received: by mail-wr1-x434.google.com with SMTP id
 ffacd0b85a97d-388cae9eb9fso85650f8f.3
 for <76559 <at> debbugs.gnu.org>; Wed, 26 Feb 2025 12:37:13 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1740602227; x=1741207027; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=SIyEGpXn7dyE4OMV82069371ouGoSze9FrE4BmQKnZ4=;
 b=Bz6gmfR3UpL0wA/2Hnvqy9Nul22FNv8vJf3xYcobv5Vh0ISbDWZkf8grH+xjbgd5dy
 e/WAZzjpvDUjxNW/wKpoQzkL3JMiHz3yXZ0ZpD07lO4uY85Cj1y7ibNCXGTPNSPDS6vb
 GJVl5QCAzcqKDiwvNos8NJIMk7tp49qPbPQvAti55DdfAwb2S7n4zO1LZ7ON8eNAOtAt
 tfQm4GsD8c2hNDZPso9PaZHS+BZdrvnvpcJ/o9KjLMY03AdZztzrPSxxsB37UvdVOZtN
 icP/r/93Ssjj7aFEsqY0iEBQEqY7Pl7sUqea77a9+g393dDnU4qfAQuK6Mt7nYq+Kk/U
 ov7A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1740602227; x=1741207027;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=SIyEGpXn7dyE4OMV82069371ouGoSze9FrE4BmQKnZ4=;
 b=rHSHUzhMVVUKx2kZUhwaFYwUZ77ZaklD5Ovi6F+mJXOqr07XNzBNcXWZcLPXSp1ix+
 OD1NUNpVUNnWSJ0N8Uc5+udjftSYYYCTGcSeuaa+R4nhyCxFWg1lde1wB1igq4bJ50rc
 MZJAZs7M02yADecARy/ARRbe7Qq0yOtloW+xMRP0Bx1x4crVxE1/629kKVY0wo15gySM
 7v8SZjZUqntlPxj3QNQLd3PD09vbJug8WCsEH/rgpTr6xas0gXC7J+4ScfGYZqGKI5/F
 gSS1vev135OcppKrTApy9vLUc4m5AQV3nHSILtRzcO0FxVPLnKPfDQqsrfZ07XaIwKzj
 OpcA==
X-Gm-Message-State: AOJu0YyybLWDouK7J/8g4fWExMcxnBiciv3Ii1Sp5165kXzjUDVMr2p1
 u0LbxhE/PBA7BIY7qdvJRCerS4r5hjXf4xgCCllIQDdH5CPrqX9XD4NamHAyVDEqoKlQtZ4NksN
 V1u3ALvhVxZ7sR9rTqgwMKCxBOIZNLP8SLzkmeA==
X-Gm-Gg: ASbGncs/WtW+FtEtHpLtj8MlalUnGLHkhX69/0Ddc4Pl8OVuP+DzNOBmeQXPiJvF6xL
 OA7u5lk0hVTACidDyKvedY79gRe15wKwzUqnriggwwQYZZnT4/616z+SiFvq1o06RLeqDAczm1z
 XDerCXM+DAk5dVgj811jhMDRDH7NKKU6rTKQwhKV6bnQ==
X-Google-Smtp-Source: AGHT+IEzlNW3COVY6ASdxVF1TV8p9mJgeYhXqMtwfSnf3InyPbn+DW70sl/WTcwl70aHxcPnG7ryVl4ccLRu4N+oCFE=
X-Received: by 2002:a05:6000:1548:b0:38d:daf3:be60 with SMTP id
 ffacd0b85a97d-390cc63ccf0mr8551849f8f.48.1740602226841; Wed, 26 Feb 2025
 12:37:06 -0800 (PST)
MIME-Version: 1.0
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <87wmdc4osq.fsf@HIDDEN>
 <CAP+jDP6E=BdUHT3+w0g4QO1GYv5vDcx-VNmEPFp5UyLKhsCZow@HIDDEN>
 <871pvk4fqt.fsf@HIDDEN>
In-Reply-To: <871pvk4fqt.fsf@HIDDEN>
From: Iurie Marian <marian.iurie@HIDDEN>
Date: Wed, 26 Feb 2025 21:36:55 +0100
X-Gm-Features: AQ5f1Jq2d_DkgLKrCQCcbceVpckFUCmx0lfJUNVjRf1388HBtBgxUmGAimkz5cI
Message-ID: <CAP+jDP67psYvWM27CKKpBuuEuEd2uVkmxG3Pog-RR1pMrYXwBQ@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
To: Pip Cet <pipcet@HIDDEN>
Content-Type: multipart/alternative; boundary="0000000000006d21b3062f1189fa"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Michael Albinus <michael.albinus@HIDDEN>, 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--0000000000006d21b3062f1189fa
Content-Type: text/plain; charset="UTF-8"

Alright! This change fixes the issue!
It works with gcc 12.2 as well!

Thank you very much, Pip!

KR,
Iurie

On Wed, 26 Feb 2025 at 21:24, Pip Cet <pipcet@HIDDEN> wrote:

> Pip Cet <pipcet@HIDDEN> writes:
>
> > "Iurie Marian" <marian.iurie@HIDDEN> writes:
> >
> >> Yes, it looks like Michael's changes have nothing to do with this bug,
> >> but these seem just to reveal some undefined behavior... idk. Btw,
> >> just by commenting the line src/keyboard.c:11697, it is not crashing
> >> anymore; maybe this could be a hint.
> >>
> >>> gcc --version
> >> gcc (Debian 12.2.0-14) 12.2.0
> >>
> >>> Can you check that 0x555555cf0b00 is a valid dpyinfo structure?
> >> (gdb) info locals
> >> event = 0x555555953aa0 <kbd_buffer+384>
> >> copy = {kind = SELECTION_REQUEST_EVENT, dpyinfo = 0x55c82260, requestor
> = 0x555555f93a80, selection = 0x45, target = 0x4d, property =
> >> 0x5e, time = 0}
> >> moved_events = <optimized out>
> >>
> >> (gdb) x 0x555555c82260
> >> 0x555555c82260: 0x00
> >
> > Well, that only tells us the first byte is 0, which is probably correct.
> > Can you retry with x/64gx 0x555555c82260 (or the new address) so we see
> > some more data?
> >
> >>> Can you run "ptype/o struct selection_input_event" [...]
> >>
> >> (gdb) ptype/o struct selection_input_event
> >> /* offset      |    size */  type = struct selection_input_event {
> >> /*      0: 0   |       4 */    enum event_kind kind : 16;
> >> /* XXX  6-byte hole      */
> >
> > This is strange, but it looks like this may be a C undefined behavior
> > bug (or, less likely, an actual GCC bug).  If the event_kind bitfield is
> > listed with size 4, shouldn't the hole after it be listed with size 4,
> > not size 6?
>
> Investigating the undefined behavior bug theory further, I find that
> applying this patch changes the code emitted for evq_flush (I think this
> is strange, since evq_flush doesn't call kbd_buffer_store_event, it
> calls kbd_buffer_store_buffered_event!).
>
> diff --git a/src/keyboard.h b/src/keyboard.h
> index 5e04b54eb74..c1c75cc7ea5 100644
> --- a/src/keyboard.h
> +++ b/src/keyboard.h
> @@ -505,10 +505,9 @@ #define EVENT_HEAD_KIND(event_head) \
>  kbd_buffer_store_event_hold (struct input_event *event,
>                              struct input_event *hold_quit)
>  {
> -  static_assert (alignof (struct input_event) == alignof (union
> buffered_input_event)
> -                && sizeof (struct input_event) == sizeof (union
> buffered_input_event));
> -  kbd_buffer_store_buffered_event ((union buffered_input_event *) event,
> -                                  hold_quit);
> +  union buffered_input_event bie;
> +  bie.ie = *event;
> +  kbd_buffer_store_buffered_event (&bie, hold_quit);
>  }
>  extern void poll_for_input_1 (void);
>  extern void show_help_echo (Lisp_Object, Lisp_Object, Lisp_Object,
>
> Can you confirm whether it changes anything for you?
>
> Pip
>
>

--0000000000006d21b3062f1189fa
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Alright! This change fixes the issue!<div>It works with gc=
c 12.2 as well!</div><div><br></div><div>Thank you very much, Pip!</div><di=
v><br></div><div>KR,</div><div>Iurie</div></div><br><div class=3D"gmail_quo=
te gmail_quote_container"><div dir=3D"ltr" class=3D"gmail_attr">On Wed, 26 =
Feb 2025 at 21:24, Pip Cet &lt;<a href=3D"mailto:pipcet@HIDDEN">pip=
cet@HIDDEN</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote=
" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);=
padding-left:1ex">Pip Cet &lt;<a href=3D"mailto:pipcet@HIDDEN" targ=
et=3D"_blank">pipcet@HIDDEN</a>&gt; writes:<br>
<br>
&gt; &quot;Iurie Marian&quot; &lt;<a href=3D"mailto:marian.iurie@HIDDEN"=
 target=3D"_blank">marian.iurie@HIDDEN</a>&gt; writes:<br>
&gt;<br>
&gt;&gt; Yes, it looks like Michael&#39;s changes have nothing to do with t=
his bug,<br>
&gt;&gt; but these seem just to reveal some undefined behavior... idk. Btw,=
 <br>
&gt;&gt; just by commenting the line src/keyboard.c:11697, it is not crashi=
ng <br>
&gt;&gt; anymore; maybe this could be a hint.<br>
&gt;&gt;<br>
&gt;&gt;&gt; gcc --version<br>
&gt;&gt; gcc (Debian 12.2.0-14) 12.2.0<br>
&gt;&gt;<br>
&gt;&gt;&gt; Can you check that 0x555555cf0b00 is a valid dpyinfo structure=
?<br>
&gt;&gt; (gdb) info locals<br>
&gt;&gt; event =3D 0x555555953aa0 &lt;kbd_buffer+384&gt;<br>
&gt;&gt; copy =3D {kind =3D SELECTION_REQUEST_EVENT, dpyinfo =3D 0x55c82260=
, requestor =3D 0x555555f93a80, selection =3D 0x45, target =3D 0x4d, proper=
ty =3D<br>
&gt;&gt; 0x5e, time =3D 0}<br>
&gt;&gt; moved_events =3D &lt;optimized out&gt;<br>
&gt;&gt;<br>
&gt;&gt; (gdb) x 0x555555c82260<br>
&gt;&gt; 0x555555c82260: 0x00<br>
&gt;<br>
&gt; Well, that only tells us the first byte is 0, which is probably correc=
t.<br>
&gt; Can you retry with x/64gx 0x555555c82260 (or the new address) so we se=
e<br>
&gt; some more data?<br>
&gt;<br>
&gt;&gt;&gt; Can you run &quot;ptype/o struct selection_input_event&quot; [=
...]<br>
&gt;&gt;<br>
&gt;&gt; (gdb) ptype/o struct selection_input_event<br>
&gt;&gt; /* offset=C2=A0 =C2=A0 =C2=A0 |=C2=A0 =C2=A0 size */=C2=A0 type =
=3D struct selection_input_event {<br>
&gt;&gt; /*=C2=A0 =C2=A0 =C2=A0 0: 0=C2=A0 =C2=A0|=C2=A0 =C2=A0 =C2=A0 =C2=
=A04 */=C2=A0 =C2=A0 enum event_kind kind : 16;<br>
&gt;&gt; /* XXX=C2=A0 6-byte hole=C2=A0 =C2=A0 =C2=A0 */<br>
&gt;<br>
&gt; This is strange, but it looks like this may be a C undefined behavior<=
br>
&gt; bug (or, less likely, an actual GCC bug).=C2=A0 If the event_kind bitf=
ield is<br>
&gt; listed with size 4, shouldn&#39;t the hole after it be listed with siz=
e 4,<br>
&gt; not size 6?<br>
<br>
Investigating the undefined behavior bug theory further, I find that<br>
applying this patch changes the code emitted for evq_flush (I think this<br=
>
is strange, since evq_flush doesn&#39;t call kbd_buffer_store_event, it<br>
calls kbd_buffer_store_buffered_event!).<br>
<br>
diff --git a/src/keyboard.h b/src/keyboard.h<br>
index 5e04b54eb74..c1c75cc7ea5 100644<br>
--- a/src/keyboard.h<br>
+++ b/src/keyboard.h<br>
@@ -505,10 +505,9 @@ #define EVENT_HEAD_KIND(event_head) \<br>
=C2=A0kbd_buffer_store_event_hold (struct input_event *event,<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0struct input_event *hold_quit)<br>
=C2=A0{<br>
-=C2=A0 static_assert (alignof (struct input_event) =3D=3D alignof (union b=
uffered_input_event)<br>
-=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &amp;&amp; sizeof =
(struct input_event) =3D=3D sizeof (union buffered_input_event));<br>
-=C2=A0 kbd_buffer_store_buffered_event ((union buffered_input_event *) eve=
nt,<br>
-=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 hold_quit);<br>
+=C2=A0 union buffered_input_event bie;<br>
+=C2=A0 <a href=3D"http://bie.ie" rel=3D"noreferrer" target=3D"_blank">bie.=
ie</a> =3D *event;<br>
+=C2=A0 kbd_buffer_store_buffered_event (&amp;bie, hold_quit);<br>
=C2=A0}<br>
=C2=A0extern void poll_for_input_1 (void);<br>
=C2=A0extern void show_help_echo (Lisp_Object, Lisp_Object, Lisp_Object,<br=
>
<br>
Can you confirm whether it changes anything for you?<br>
<br>
Pip<br>
<br>
</blockquote></div>

--0000000000006d21b3062f1189fa--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 26 Feb 2025 20:24:28 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 26 15:24:28 2025
Received: from localhost ([127.0.0.1]:55639 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnNxE-0006ks-8u
	for submit <at> debbugs.gnu.org; Wed, 26 Feb 2025 15:24:28 -0500
Received: from mail-4316.protonmail.ch ([185.70.43.16]:61103)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <pipcet@HIDDEN>)
 id 1tnNxB-0006ka-7s
 for 76559 <at> debbugs.gnu.org; Wed, 26 Feb 2025 15:24:26 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com;
 s=protonmail3; t=1740601458; x=1740860658;
 bh=MdpUHtckMnj79An2aYeblha3v369+fvUt3bhTM0W+ys=;
 h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References:
 Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID:
 Message-ID:BIMI-Selector:List-Unsubscribe:List-Unsubscribe-Post;
 b=fjKIseUP9doTqXvmCk+auO9Q4TC/Vogbjri90gJFbfI6dPRtgpXCE3U1PrvDUtC8F
 lHH2kmhuBGhbWnmvOipvb57jNW/pPcDxL7HY0M8LNJITk6FoxkjfA0uMzrU7WnagoN
 q0W9/iWRJBZagLRLgCWXVslLXi/AjdwAdsYJy3Y+zs4JvEpBHWOWuQnnqfNp9q86HK
 R1bnNKs35pmS/ieyRcIrabPxj9N71o3bJIzyQvhD1MzwJbRvYaeoMaKYK1R1mnvRwV
 VFdaZ5rUiOdwRZEWewTQscdW3BXGWT7TYS0GvhLBVH6V2oeILecHqnfYmPSot/Gh9K
 LtJZj4wZMYC2g==
Date: Wed, 26 Feb 2025 20:24:14 +0000
To: Iurie Marian <marian.iurie@HIDDEN>
From: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#76559: 31.0.50;
 [-O3 + PGTK] Crash when 'copying as kill'/'killing word'
Message-ID: <871pvk4fqt.fsf@HIDDEN>
In-Reply-To: <CAP+jDP6E=BdUHT3+w0g4QO1GYv5vDcx-VNmEPFp5UyLKhsCZow@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <87wmdc4osq.fsf@HIDDEN>
 <CAP+jDP6E=BdUHT3+w0g4QO1GYv5vDcx-VNmEPFp5UyLKhsCZow@HIDDEN>
Feedback-ID: 112775352:user:proton
X-Pm-Message-ID: 4968e56deacdb8b68b126065f2175d932f644728
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Michael Albinus <michael.albinus@HIDDEN>, 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Pip Cet <pipcet@HIDDEN> writes:

> "Iurie Marian" <marian.iurie@HIDDEN> writes:
>
>> Yes, it looks like Michael's changes have nothing to do with this bug,
>> but these seem just to reveal some undefined behavior... idk. Btw,=20
>> just by commenting the line src/keyboard.c:11697, it is not crashing=20
>> anymore; maybe this could be a hint.
>>
>>> gcc --version
>> gcc (Debian 12.2.0-14) 12.2.0
>>
>>> Can you check that 0x555555cf0b00 is a valid dpyinfo structure?
>> (gdb) info locals
>> event =3D 0x555555953aa0 <kbd_buffer+384>
>> copy =3D {kind =3D SELECTION_REQUEST_EVENT, dpyinfo =3D 0x55c82260, requ=
estor =3D 0x555555f93a80, selection =3D 0x45, target =3D 0x4d, property =3D
>> 0x5e, time =3D 0}
>> moved_events =3D <optimized out>
>>
>> (gdb) x 0x555555c82260
>> 0x555555c82260: 0x00
>
> Well, that only tells us the first byte is 0, which is probably correct.
> Can you retry with x/64gx 0x555555c82260 (or the new address) so we see
> some more data?
>
>>> Can you run "ptype/o struct selection_input_event" [...]
>>
>> (gdb) ptype/o struct selection_input_event
>> /* offset      |    size */  type =3D struct selection_input_event {
>> /*      0: 0   |       4 */    enum event_kind kind : 16;
>> /* XXX  6-byte hole      */
>
> This is strange, but it looks like this may be a C undefined behavior
> bug (or, less likely, an actual GCC bug).  If the event_kind bitfield is
> listed with size 4, shouldn't the hole after it be listed with size 4,
> not size 6?

Investigating the undefined behavior bug theory further, I find that
applying this patch changes the code emitted for evq_flush (I think this
is strange, since evq_flush doesn't call kbd_buffer_store_event, it
calls kbd_buffer_store_buffered_event!).

diff --git a/src/keyboard.h b/src/keyboard.h
index 5e04b54eb74..c1c75cc7ea5 100644
--- a/src/keyboard.h
+++ b/src/keyboard.h
@@ -505,10 +505,9 @@ #define EVENT_HEAD_KIND(event_head) \
 kbd_buffer_store_event_hold (struct input_event *event,
 =09=09=09     struct input_event *hold_quit)
 {
-  static_assert (alignof (struct input_event) =3D=3D alignof (union buffer=
ed_input_event)
-=09=09 && sizeof (struct input_event) =3D=3D sizeof (union buffered_input_=
event));
-  kbd_buffer_store_buffered_event ((union buffered_input_event *) event,
-=09=09=09=09   hold_quit);
+  union buffered_input_event bie;
+  bie.ie =3D *event;
+  kbd_buffer_store_buffered_event (&bie, hold_quit);
 }
 extern void poll_for_input_1 (void);
 extern void show_help_echo (Lisp_Object, Lisp_Object, Lisp_Object,

Can you confirm whether it changes anything for you?

Pip





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 26 Feb 2025 20:13:07 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 26 15:13:07 2025
Received: from localhost ([127.0.0.1]:55604 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnNmE-0006D0-J6
	for submit <at> debbugs.gnu.org; Wed, 26 Feb 2025 15:13:07 -0500
Received: from mail-wm1-x32e.google.com ([2a00:1450:4864:20::32e]:57823)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <marian.iurie@HIDDEN>)
 id 1tnNlP-0006BL-Vb
 for 76559 <at> debbugs.gnu.org; Wed, 26 Feb 2025 15:12:16 -0500
Received: by mail-wm1-x32e.google.com with SMTP id
 5b1f17b1804b1-439a331d981so1905925e9.3
 for <76559 <at> debbugs.gnu.org>; Wed, 26 Feb 2025 12:12:15 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1740600729; x=1741205529; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=iGXE7p1V0Fk/VkFF63AxIy8uv1qIZ9Pt53KHh1OZU9c=;
 b=W5tGko09or2nFcn6pDY/Hjf9wgBPT4JRJclYosfdjwji1DDKL7bvl0cK7chVt6nV+Z
 rIwTgVYkFOJKaRoPHYDUPOcozmyx7NfItOFRcoJpeyDaSwcCT3v5p/4Ok61Z3COO9oya
 d6UcPj9lWOK8Z99PjjZWMT5MOCJcNZWVIk3mbiq0Ai6JaEgKCCRY9cWlWi2Kz0+uF5W/
 vewo0c6FvxYKT/2PQIPzAoHOM4i5CoKOXZoN71PjcLl2aZ4eg0xMv8EIiokzDs1YFXeQ
 TTXPudTiY6CUdzc5RVlH5M6Wd5H9FH4q4E+63qgonIeWBxZg2DjZx3PJ5RvijpxvrMtu
 Sr2w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1740600729; x=1741205529;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=iGXE7p1V0Fk/VkFF63AxIy8uv1qIZ9Pt53KHh1OZU9c=;
 b=Rc31fMpAp5cK2df5Wm0YI7KgCDbm0a04moWBp7FOiBngAO0pzFcruMbWe0sdxn1xeV
 KIYp/sHFP6vkADnuWaKVwzZP3aq56ccFRsbhyLbfmhFnzcKi45b++InOmHBesZoWcj0s
 EYlgETxrTaPIWIjb4CDOps2aSAEzrarzDKDWDK0t6lIHKrsH4JtOZgJrt5sD7F5usVpe
 OfCtMsrjxB0RDg9ZEkK7BBIpjquaLnEjcN+0Pjlo1Y2oZ1XItFjXAVDbVA26r04B0vk8
 2CcG5OxJdFtVLKMz/TG0XACGRGw5cG3uQ1DpvryzdjkGvm0ZXGmG4SzVIQRFeVwUzbTu
 OJ1Q==
X-Gm-Message-State: AOJu0YwlEfh2qlxwPhAGrC2p2oGDTetsGyEL/yFY63eSj1wYG2FN2Gvs
 FaZYuIrJG1EkDjdTO/KdBhFfxTkJngJsxL6KUJJa7+UZHYcIo+ay3a7nwms8FEK96THazFP1DVD
 z21OGagSg/Amrn3kuzzEhiGvcFGupr62tqyEovSIr
X-Gm-Gg: ASbGnctGvg8bFir3lDkLXbtN9TtwNiccZjErymeirdKVT2VNYSEAIDOPlV9wOP+PrNk
 AYSaaQSgCuFmJJVbLaZNjNPpbEqlgO5JEqC9cwVFA3IpLftQ1mF+I9lP3djenEab8OPQBJgD0i4
 ggQf8IgNSU2I/dJA/eFGZgo+mXTlmdhTiF7KWFA95nwg==
X-Google-Smtp-Source: AGHT+IGxLOvyyL+1Z91sx1gfBLeABEh0xzVVj7kc0QgaEKW1siZhCv9ULfFpBcF9NE1lval9Bah33VBWW1hidJGWb18=
X-Received: by 2002:a5d:47af:0:b0:38f:4f07:fab7 with SMTP id
 ffacd0b85a97d-390d4f37902mr3961143f8f.8.1740600729055; Wed, 26 Feb 2025
 12:12:09 -0800 (PST)
MIME-Version: 1.0
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <87wmdc4osq.fsf@HIDDEN>
 <CAP+jDP6E=BdUHT3+w0g4QO1GYv5vDcx-VNmEPFp5UyLKhsCZow@HIDDEN>
 <87cyf44k7h.fsf@HIDDEN>
In-Reply-To: <87cyf44k7h.fsf@HIDDEN>
From: Iurie Marian <marian.iurie@HIDDEN>
Date: Wed, 26 Feb 2025 21:11:57 +0100
X-Gm-Features: AQ5f1JqHhTgvx8_XkaixDcdZsqUaQnHJh_vgGhynu2WFR0g_Pwlx_h6ceoAevpI
Message-ID: <CAP+jDP6jxC=PqmqKPyybVnNgOVpUYOUEoY8hLfzqjp=742o1ZQ@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
To: Pip Cet <pipcet@HIDDEN>
Content-Type: multipart/alternative; boundary="00000000000026bbfe062f113078"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--00000000000026bbfe062f113078
Content-Type: text/plain; charset="UTF-8"

> Can you retry with x/64gx [...]

(gdb) info locals
event = 0x555555953aa0 <kbd_buffer+384>
copy = {kind = SELECTION_REQUEST_EVENT, dpyinfo = 0x55c84660, requestor =
0x555556038a80, selection = 0x45, target = 0x4d, property = 0x5e, time = 0}
moved_events = <optimized out>

(gdb) x/64gx 0x555555c84660
0x555555c84660: 0x0000000000000000      0x0000555555b05f28
0x555555c84670: 0x0000555555b7a000      0x0000000000000000
0x555555c84680: 0x00007fffef274083      0x0000000100000001
0x555555c84690: 0x0000555555c6d750      0x0000000300000006
0x555555c846a0: 0x0000000000000011      0x0000000000000000
0x555555c846b0: 0x0000000000000000      0x0000000000000000
0x555555c846c0: 0x4058000000000000      0x4058000000000000
0x555555c846d0: 0x0000002000000000      0x0000000000000001
0x555555c846e0: 0xffffffffffffffff      0x000000000000002a
0x555555c846f0: 0x0000000000000000      0x0000555555da3120
0x555555c84700: 0x0000555555da0d20      0xffffffffffffffff
0x555555c84710: 0xffffffff00000000      0x00000000ffffffff
0x555555c84720: 0x0000000000000000      0x0000000000000000
0x555555c84730: 0x0000000000000000      0x0000000000000000
0x555555c84740: 0x0000000000000000      0x0000000000000000
0x555555c84750: 0x0000555555b06178      0x0000555555b06178
0x555555c84760: 0x0000555555b06178      0x0000000000000000
0x555555c84770: 0x0000000000000000      0x0000000000000000
0x555555c84780: 0x0000000000000000      0x0000000000000000
0x555555c84790: 0x0000000000000000      0x000000000221256a
0x555555c847a0: 0x0000000000000000      0x0000555555d6ce40
0x555555c847b0: 0x0000555555c12aa0      0x0000555555c6dce0
0x555555c847c0: 0x0000000000000000      0x0000000000000000
0x555555c847d0: 0x0000555555e75b90      0x0000555555b06178
0x555555c847e0: 0x0000000000000000      0x0000000000000000
0x555555c847f0: 0x3ff0000000000000      0x3ff0000000000000
0x555555c84800: 0x0000000000000004      0x0000000000000021
0x555555c84810: 0x0000555555c0c360      0x00007ffff7fade20
0x555555c84820: 0x0000000000000000      0x0000000000000041
0x555555c84830: 0x0000555555c0fb00      0x0000555555c7bb40
0x555555c84840: 0x0000000000000000      0x0000555555c0faa0
0x555555c84850: 0x0000555555c80220      0x0000000000000000


I have just tried with gcc 14.2 and it works well - NO crash, although it
shows the same "6-byte hole" for `ptype/o struct selection_input_event`.

Kind Regards
Iurie


On Wed, 26 Feb 2025 at 19:47, Pip Cet <pipcet@HIDDEN> wrote:

> "Iurie Marian" <marian.iurie@HIDDEN> writes:
>
> > Yes, it looks like Michael's changes have nothing to do with this bug,
> > but these seem just to reveal some undefined behavior... idk. Btw,
> > just by commenting the line src/keyboard.c:11697, it is not crashing
> > anymore; maybe this could be a hint.
> >
> >> gcc --version
> > gcc (Debian 12.2.0-14) 12.2.0
> >
> >> Can you check that 0x555555cf0b00 is a valid dpyinfo structure?
> > (gdb) info locals
> > event = 0x555555953aa0 <kbd_buffer+384>
> > copy = {kind = SELECTION_REQUEST_EVENT, dpyinfo = 0x55c82260, requestor
> = 0x555555f93a80, selection = 0x45, target = 0x4d, property =
> > 0x5e, time = 0}
> > moved_events = <optimized out>
> >
> > (gdb) x 0x555555c82260
> > 0x555555c82260: 0x00
>
> Well, that only tells us the first byte is 0, which is probably correct.
> Can you retry with x/64gx 0x555555c82260 (or the new address) so we see
> some more data?
>
> >> Can you run "ptype/o struct selection_input_event" [...]
> >
> > (gdb) ptype/o struct selection_input_event
> > /* offset      |    size */  type = struct selection_input_event {
> > /*      0: 0   |       4 */    enum event_kind kind : 16;
> > /* XXX  6-byte hole      */
>
> This is strange, but it looks like this may be a C undefined behavior
> bug (or, less likely, an actual GCC bug).  If the event_kind bitfield is
> listed with size 4, shouldn't the hole after it be listed with size 4,
> not size 6?
>
> Here's the code obtained by disass/s evq_flush which copies the relevant
> part of the header:
>
> 3810          *kbd_store_ptr = *event;
>    0x00000000002f9f4c <+108>:   movd   %xmm0,(%rdx)
>    0x00000000002f9f50 <+112>:   movdqa 0x20(%rsp),%xmm4
>    0x00000000002f9f56 <+118>:   movdqa 0x10(%rsp),%xmm5
>    0x00000000002f9f5c <+124>:   movq   %xmm1,0x4(%rdx)
>
> The first movd (not movq or movdq!) copies four bytes containing the
> event_kind.  The unaligned movq at +124 copies 8 bytes to bytes 4-11 of
> the struct, which copies the low-order 4 bytes of the dpyinfo.
>
> the code continues with:
>
>    0x00000000002f9f61 <+129>:   mov    %rax,0x1094e0(%rip)        #
> 0x403448 <kbd_store_ptr>
>    0x00000000002f9f68 <+136>:   sub    %rcx,%rax
>    0x00000000002f9f6b <+139>:   sar    $0x6,%rax
>    0x00000000002f9f6f <+143>:   mov    %r12,0x20(%rdx)
>    0x00000000002f9f73 <+147>:   mov    %rbp,0x38(%rdx)
>    0x00000000002f9f77 <+151>:   movups %xmm4,0x10(%rdx)
>    0x00000000002f9f7b <+155>:   movups %xmm5,0x28(%rdx)
>
> but, as far as I can tell, bytes 12-15 are never touched by this code.
>
> Here's the corresponding code which copies the event structure:
>
> 327           union buffered_input_event ev = evq->q[0];
>    0x00000000002f9fee <+270>:   lea    0x19a64b(%rip),%rcx        #
> 0x494640 <event_q.lto_priv.0>
>    0x00000000002f9ff5 <+277>:   mov    (%rcx),%rdi
>    0x00000000002f9ff8 <+280>:   movd   (%rdi),%xmm0
>    0x00000000002f9ffc <+284>:   movdqu 0x10(%rdi),%xmm2
>    0x00000000002fa001 <+289>:   movdqu 0x28(%rdi),%xmm3
>    0x00000000002fa006 <+294>:   movq   0x4(%rdi),%xmm1
>    0x00000000002fa00b <+299>:   mov    0x20(%rdi),%r12
>    0x00000000002fa00f <+303>:   mov    0x38(%rdi),%rbp
>    0x00000000002fa013 <+307>:   pextrw $0x0,%xmm0,%r13d
>    0x00000000002fa019 <+313>:   movaps %xmm2,0x20(%rsp)
>    0x00000000002fa01e <+318>:   movaps %xmm3,0x10(%rsp)
>
>
> Again, I see no code here which touches 0xc(%rdi) or the three bytes
> after it.
>
> But union buffered_input_event has no hole at bytes 12-15, only two of
> its union members do.
>
> So it seems this may be a bug with bitfield enums; it's not quite clear
> to me why we're using one here, but it doesn't seem to be working as
> intended.
>
> Pip
>
>

--00000000000026bbfe062f113078
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>&gt; Can you retry with x/64gx [...]</div><div><br></=
div><font face=3D"monospace">(gdb) info locals<br>event =3D 0x555555953aa0 =
&lt;kbd_buffer+384&gt;<br>copy =3D {kind =3D SELECTION_REQUEST_EVENT, dpyin=
fo =3D 0x55c84660, requestor =3D 0x555556038a80, selection =3D 0x45, target=
 =3D 0x4d, property =3D 0x5e, time =3D 0}<br>moved_events =3D &lt;optimized=
 out&gt;</font><div><br><font face=3D"monospace">(gdb) x/64gx 0x555555c8466=
0<br>0x555555c84660: 0x0000000000000000 =C2=A0 =C2=A0 =C2=A00x0000555555b05=
f28<br>0x555555c84670: 0x0000555555b7a000 =C2=A0 =C2=A0 =C2=A00x00000000000=
00000<br>0x555555c84680: 0x00007fffef274083 =C2=A0 =C2=A0 =C2=A00x000000010=
0000001<br>0x555555c84690: 0x0000555555c6d750 =C2=A0 =C2=A0 =C2=A00x0000000=
300000006<br>0x555555c846a0: 0x0000000000000011 =C2=A0 =C2=A0 =C2=A00x00000=
00000000000<br>0x555555c846b0: 0x0000000000000000 =C2=A0 =C2=A0 =C2=A00x000=
0000000000000<br>0x555555c846c0: 0x4058000000000000 =C2=A0 =C2=A0 =C2=A00x4=
058000000000000<br>0x555555c846d0: 0x0000002000000000 =C2=A0 =C2=A0 =C2=A00=
x0000000000000001<br>0x555555c846e0: 0xffffffffffffffff =C2=A0 =C2=A0 =C2=
=A00x000000000000002a<br>0x555555c846f0: 0x0000000000000000 =C2=A0 =C2=A0 =
=C2=A00x0000555555da3120<br>0x555555c84700: 0x0000555555da0d20 =C2=A0 =C2=
=A0 =C2=A00xffffffffffffffff<br>0x555555c84710: 0xffffffff00000000 =C2=A0 =
=C2=A0 =C2=A00x00000000ffffffff<br>0x555555c84720: 0x0000000000000000 =C2=
=A0 =C2=A0 =C2=A00x0000000000000000<br>0x555555c84730: 0x0000000000000000 =
=C2=A0 =C2=A0 =C2=A00x0000000000000000<br>0x555555c84740: 0x000000000000000=
0 =C2=A0 =C2=A0 =C2=A00x0000000000000000<br>0x555555c84750: 0x0000555555b06=
178 =C2=A0 =C2=A0 =C2=A00x0000555555b06178<br>0x555555c84760: 0x0000555555b=
06178 =C2=A0 =C2=A0 =C2=A00x0000000000000000<br>0x555555c84770: 0x000000000=
0000000 =C2=A0 =C2=A0 =C2=A00x0000000000000000<br>0x555555c84780: 0x0000000=
000000000 =C2=A0 =C2=A0 =C2=A00x0000000000000000<br>0x555555c84790: 0x00000=
00000000000 =C2=A0 =C2=A0 =C2=A00x000000000221256a<br>0x555555c847a0: 0x000=
0000000000000 =C2=A0 =C2=A0 =C2=A00x0000555555d6ce40<br>0x555555c847b0: 0x0=
000555555c12aa0 =C2=A0 =C2=A0 =C2=A00x0000555555c6dce0<br>0x555555c847c0: 0=
x0000000000000000 =C2=A0 =C2=A0 =C2=A00x0000000000000000<br>0x555555c847d0:=
 0x0000555555e75b90 =C2=A0 =C2=A0 =C2=A00x0000555555b06178<br>0x555555c847e=
0: 0x0000000000000000 =C2=A0 =C2=A0 =C2=A00x0000000000000000<br>0x555555c84=
7f0: 0x3ff0000000000000 =C2=A0 =C2=A0 =C2=A00x3ff0000000000000<br>0x555555c=
84800: 0x0000000000000004 =C2=A0 =C2=A0 =C2=A00x0000000000000021<br>0x55555=
5c84810: 0x0000555555c0c360 =C2=A0 =C2=A0 =C2=A00x00007ffff7fade20<br>0x555=
555c84820: 0x0000000000000000 =C2=A0 =C2=A0 =C2=A00x0000000000000041<br>0x5=
55555c84830: 0x0000555555c0fb00 =C2=A0 =C2=A0 =C2=A00x0000555555c7bb40<br>0=
x555555c84840: 0x0000000000000000 =C2=A0 =C2=A0 =C2=A00x0000555555c0faa0<br=
>0x555555c84850: 0x0000555555c80220 =C2=A0 =C2=A0 =C2=A00x0000000000000000<=
/font><br></div><div><font face=3D"monospace"><br></font></div><div><font f=
ace=3D"monospace"><br></font></div><div>I have just tried with gcc 14.2 and=
 it works well - NO crash, although it shows the same &quot;6-byte hole&quo=
t; for `ptype/o struct selection_input_event`.</div><div><br></div><div>Kin=
d Regards</div><div>Iurie</div><div><br></div></div><br><div class=3D"gmail=
_quote gmail_quote_container"><div dir=3D"ltr" class=3D"gmail_attr">On Wed,=
 26 Feb 2025 at 19:47, Pip Cet &lt;<a href=3D"mailto:pipcet@HIDDEN"=
>pipcet@HIDDEN</a>&gt; wrote:<br></div><blockquote class=3D"gmail_q=
uote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,2=
04);padding-left:1ex">&quot;Iurie Marian&quot; &lt;<a href=3D"mailto:marian=
.iurie@HIDDEN" target=3D"_blank">marian.iurie@HIDDEN</a>&gt; writes:<=
br>
<br>
&gt; Yes, it looks like Michael&#39;s changes have nothing to do with this =
bug,<br>
&gt; but these seem just to reveal some undefined behavior... idk. Btw, <br=
>
&gt; just by commenting the line src/keyboard.c:11697, it is not crashing <=
br>
&gt; anymore; maybe this could be a hint.<br>
&gt;<br>
&gt;&gt; gcc --version<br>
&gt; gcc (Debian 12.2.0-14) 12.2.0<br>
&gt;<br>
&gt;&gt; Can you check that 0x555555cf0b00 is a valid dpyinfo structure?<br=
>
&gt; (gdb) info locals<br>
&gt; event =3D 0x555555953aa0 &lt;kbd_buffer+384&gt;<br>
&gt; copy =3D {kind =3D SELECTION_REQUEST_EVENT, dpyinfo =3D 0x55c82260, re=
questor =3D 0x555555f93a80, selection =3D 0x45, target =3D 0x4d, property =
=3D<br>
&gt; 0x5e, time =3D 0}<br>
&gt; moved_events =3D &lt;optimized out&gt;<br>
&gt;<br>
&gt; (gdb) x 0x555555c82260<br>
&gt; 0x555555c82260: 0x00<br>
<br>
Well, that only tells us the first byte is 0, which is probably correct.<br=
>
Can you retry with x/64gx 0x555555c82260 (or the new address) so we see<br>
some more data?<br>
<br>
&gt;&gt; Can you run &quot;ptype/o struct selection_input_event&quot; [...]=
<br>
&gt;<br>
&gt; (gdb) ptype/o struct selection_input_event<br>
&gt; /* offset=C2=A0 =C2=A0 =C2=A0 |=C2=A0 =C2=A0 size */=C2=A0 type =3D st=
ruct selection_input_event {<br>
&gt; /*=C2=A0 =C2=A0 =C2=A0 0: 0=C2=A0 =C2=A0|=C2=A0 =C2=A0 =C2=A0 =C2=A04 =
*/=C2=A0 =C2=A0 enum event_kind kind : 16;<br>
&gt; /* XXX=C2=A0 6-byte hole=C2=A0 =C2=A0 =C2=A0 */<br>
<br>
This is strange, but it looks like this may be a C undefined behavior<br>
bug (or, less likely, an actual GCC bug).=C2=A0 If the event_kind bitfield =
is<br>
listed with size 4, shouldn&#39;t the hole after it be listed with size 4,<=
br>
not size 6?<br>
<br>
Here&#39;s the code obtained by disass/s evq_flush which copies the relevan=
t<br>
part of the header:<br>
<br>
3810=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 *kbd_store_ptr =3D *event;<br>
=C2=A0 =C2=A00x00000000002f9f4c &lt;+108&gt;:=C2=A0 =C2=A0movd=C2=A0 =C2=A0=
%xmm0,(%rdx)<br>
=C2=A0 =C2=A00x00000000002f9f50 &lt;+112&gt;:=C2=A0 =C2=A0movdqa 0x20(%rsp)=
,%xmm4<br>
=C2=A0 =C2=A00x00000000002f9f56 &lt;+118&gt;:=C2=A0 =C2=A0movdqa 0x10(%rsp)=
,%xmm5<br>
=C2=A0 =C2=A00x00000000002f9f5c &lt;+124&gt;:=C2=A0 =C2=A0movq=C2=A0 =C2=A0=
%xmm1,0x4(%rdx)<br>
<br>
The first movd (not movq or movdq!) copies four bytes containing the<br>
event_kind.=C2=A0 The unaligned movq at +124 copies 8 bytes to bytes 4-11 o=
f<br>
the struct, which copies the low-order 4 bytes of the dpyinfo.<br>
<br>
the code continues with:<br>
<br>
=C2=A0 =C2=A00x00000000002f9f61 &lt;+129&gt;:=C2=A0 =C2=A0mov=C2=A0 =C2=A0 =
%rax,0x1094e0(%rip)=C2=A0 =C2=A0 =C2=A0 =C2=A0 # 0x403448 &lt;kbd_store_ptr=
&gt;<br>
=C2=A0 =C2=A00x00000000002f9f68 &lt;+136&gt;:=C2=A0 =C2=A0sub=C2=A0 =C2=A0 =
%rcx,%rax<br>
=C2=A0 =C2=A00x00000000002f9f6b &lt;+139&gt;:=C2=A0 =C2=A0sar=C2=A0 =C2=A0 =
$0x6,%rax<br>
=C2=A0 =C2=A00x00000000002f9f6f &lt;+143&gt;:=C2=A0 =C2=A0mov=C2=A0 =C2=A0 =
%r12,0x20(%rdx)<br>
=C2=A0 =C2=A00x00000000002f9f73 &lt;+147&gt;:=C2=A0 =C2=A0mov=C2=A0 =C2=A0 =
%rbp,0x38(%rdx)<br>
=C2=A0 =C2=A00x00000000002f9f77 &lt;+151&gt;:=C2=A0 =C2=A0movups %xmm4,0x10=
(%rdx)<br>
=C2=A0 =C2=A00x00000000002f9f7b &lt;+155&gt;:=C2=A0 =C2=A0movups %xmm5,0x28=
(%rdx)<br>
<br>
but, as far as I can tell, bytes 12-15 are never touched by this code.<br>
<br>
Here&#39;s the corresponding code which copies the event structure:<br>
<br>
327=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0union buffered_input_event ev =
=3D evq-&gt;q[0];<br>
=C2=A0 =C2=A00x00000000002f9fee &lt;+270&gt;:=C2=A0 =C2=A0lea=C2=A0 =C2=A0 =
0x19a64b(%rip),%rcx=C2=A0 =C2=A0 =C2=A0 =C2=A0 # 0x494640 &lt;event_q.lto_p=
riv.0&gt;<br>
=C2=A0 =C2=A00x00000000002f9ff5 &lt;+277&gt;:=C2=A0 =C2=A0mov=C2=A0 =C2=A0 =
(%rcx),%rdi<br>
=C2=A0 =C2=A00x00000000002f9ff8 &lt;+280&gt;:=C2=A0 =C2=A0movd=C2=A0 =C2=A0=
(%rdi),%xmm0<br>
=C2=A0 =C2=A00x00000000002f9ffc &lt;+284&gt;:=C2=A0 =C2=A0movdqu 0x10(%rdi)=
,%xmm2<br>
=C2=A0 =C2=A00x00000000002fa001 &lt;+289&gt;:=C2=A0 =C2=A0movdqu 0x28(%rdi)=
,%xmm3<br>
=C2=A0 =C2=A00x00000000002fa006 &lt;+294&gt;:=C2=A0 =C2=A0movq=C2=A0 =C2=A0=
0x4(%rdi),%xmm1<br>
=C2=A0 =C2=A00x00000000002fa00b &lt;+299&gt;:=C2=A0 =C2=A0mov=C2=A0 =C2=A0 =
0x20(%rdi),%r12<br>
=C2=A0 =C2=A00x00000000002fa00f &lt;+303&gt;:=C2=A0 =C2=A0mov=C2=A0 =C2=A0 =
0x38(%rdi),%rbp<br>
=C2=A0 =C2=A00x00000000002fa013 &lt;+307&gt;:=C2=A0 =C2=A0pextrw $0x0,%xmm0=
,%r13d<br>
=C2=A0 =C2=A00x00000000002fa019 &lt;+313&gt;:=C2=A0 =C2=A0movaps %xmm2,0x20=
(%rsp)<br>
=C2=A0 =C2=A00x00000000002fa01e &lt;+318&gt;:=C2=A0 =C2=A0movaps %xmm3,0x10=
(%rsp)<br>
<br>
<br>
Again, I see no code here which touches 0xc(%rdi) or the three bytes<br>
after it.<br>
<br>
But union buffered_input_event has no hole at bytes 12-15, only two of<br>
its union members do.<br>
<br>
So it seems this may be a bug with bitfield enums; it&#39;s not quite clear=
<br>
to me why we&#39;re using one here, but it doesn&#39;t seem to be working a=
s<br>
intended.<br>
<br>
Pip<br>
<br>
</blockquote></div>

--00000000000026bbfe062f113078--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 26 Feb 2025 18:48:08 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 26 13:48:08 2025
Received: from localhost ([127.0.0.1]:55476 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnMRz-00025W-W4
	for submit <at> debbugs.gnu.org; Wed, 26 Feb 2025 13:48:08 -0500
Received: from mail-40131.protonmail.ch ([185.70.40.131]:22767)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <pipcet@HIDDEN>)
 id 1tnMRu-00024q-DH
 for 76559 <at> debbugs.gnu.org; Wed, 26 Feb 2025 13:48:06 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com;
 s=protonmail3; t=1740595675; x=1740854875;
 bh=a4Lt+clFj7q4SftSc7cWddZAoSnB5mMDwmDBo88vM5c=;
 h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References:
 Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID:
 Message-ID:BIMI-Selector:List-Unsubscribe:List-Unsubscribe-Post;
 b=c2XA91ueyNFqwG2Pn3yUZ5sP+FeZ7Zs4MYNRO8jieEOc4zYa2/5SUFiMkH2K6siKo
 nxYyxAT6/9U9neYaX+yH/GDJ8D61+cWBUvIin3Xd5ooHoJjtPrqlPtyTuET1q9viUT
 Av3gqY3PrULPxxVis9jkNRhZFSb29o4JUNgZ+A7Z3lGVMfFcX1XdwLMTASK5STPJSs
 xfIPHVlPueoT1Inv0LejAz87hLMQA9MVxGjAoo7rLm/CQWScEShW5OznD+iTkXlsGr
 W+fuvZHiUd8RI2bdRdTnrRY71JMUI20c66eg1NVBp5cuQxb5uoTkVqDyzXgvbj+0jt
 YM7q0D+CC6Dgg==
Date: Wed, 26 Feb 2025 18:47:51 +0000
To: Iurie Marian <marian.iurie@HIDDEN>
From: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#76559: 31.0.50;
 [-O3 + PGTK] Crash when 'copying as kill'/'killing word'
Message-ID: <87cyf44k7h.fsf@HIDDEN>
In-Reply-To: <CAP+jDP6E=BdUHT3+w0g4QO1GYv5vDcx-VNmEPFp5UyLKhsCZow@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <87wmdc4osq.fsf@HIDDEN>
 <CAP+jDP6E=BdUHT3+w0g4QO1GYv5vDcx-VNmEPFp5UyLKhsCZow@HIDDEN>
Feedback-ID: 112775352:user:proton
X-Pm-Message-ID: 14618ebcf92967efbce4151dc272ded249088532
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Michael Albinus <michael.albinus@HIDDEN>, 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

"Iurie Marian" <marian.iurie@HIDDEN> writes:

> Yes, it looks like Michael's changes have nothing to do with this bug,
> but these seem just to reveal some undefined behavior... idk. Btw,=20
> just by commenting the line src/keyboard.c:11697, it is not crashing=20
> anymore; maybe this could be a hint.
>
>> gcc --version
> gcc (Debian 12.2.0-14) 12.2.0
>
>> Can you check that 0x555555cf0b00 is a valid dpyinfo structure?
> (gdb) info locals
> event =3D 0x555555953aa0 <kbd_buffer+384>
> copy =3D {kind =3D SELECTION_REQUEST_EVENT, dpyinfo =3D 0x55c82260, reque=
stor =3D 0x555555f93a80, selection =3D 0x45, target =3D 0x4d, property =3D
> 0x5e, time =3D 0}
> moved_events =3D <optimized out>
>
> (gdb) x 0x555555c82260
> 0x555555c82260: 0x00

Well, that only tells us the first byte is 0, which is probably correct.
Can you retry with x/64gx 0x555555c82260 (or the new address) so we see
some more data?

>> Can you run "ptype/o struct selection_input_event" [...]
>
> (gdb) ptype/o struct selection_input_event
> /* offset      |    size */  type =3D struct selection_input_event {
> /*      0: 0   |       4 */    enum event_kind kind : 16;
> /* XXX  6-byte hole      */

This is strange, but it looks like this may be a C undefined behavior
bug (or, less likely, an actual GCC bug).  If the event_kind bitfield is
listed with size 4, shouldn't the hole after it be listed with size 4,
not size 6?

Here's the code obtained by disass/s evq_flush which copies the relevant
part of the header:

3810=09      *kbd_store_ptr =3D *event;
   0x00000000002f9f4c <+108>:=09movd   %xmm0,(%rdx)
   0x00000000002f9f50 <+112>:=09movdqa 0x20(%rsp),%xmm4
   0x00000000002f9f56 <+118>:=09movdqa 0x10(%rsp),%xmm5
   0x00000000002f9f5c <+124>:=09movq   %xmm1,0x4(%rdx)

The first movd (not movq or movdq!) copies four bytes containing the
event_kind.  The unaligned movq at +124 copies 8 bytes to bytes 4-11 of
the struct, which copies the low-order 4 bytes of the dpyinfo.

the code continues with:

   0x00000000002f9f61 <+129>:=09mov    %rax,0x1094e0(%rip)        # 0x40344=
8 <kbd_store_ptr>
   0x00000000002f9f68 <+136>:=09sub    %rcx,%rax
   0x00000000002f9f6b <+139>:=09sar    $0x6,%rax
   0x00000000002f9f6f <+143>:=09mov    %r12,0x20(%rdx)
   0x00000000002f9f73 <+147>:=09mov    %rbp,0x38(%rdx)
   0x00000000002f9f77 <+151>:=09movups %xmm4,0x10(%rdx)
   0x00000000002f9f7b <+155>:=09movups %xmm5,0x28(%rdx)

but, as far as I can tell, bytes 12-15 are never touched by this code.

Here's the corresponding code which copies the event structure:

327=09      union buffered_input_event ev =3D evq->q[0];
   0x00000000002f9fee <+270>:=09lea    0x19a64b(%rip),%rcx        # 0x49464=
0 <event_q.lto_priv.0>
   0x00000000002f9ff5 <+277>:=09mov    (%rcx),%rdi
   0x00000000002f9ff8 <+280>:=09movd   (%rdi),%xmm0
   0x00000000002f9ffc <+284>:=09movdqu 0x10(%rdi),%xmm2
   0x00000000002fa001 <+289>:=09movdqu 0x28(%rdi),%xmm3
   0x00000000002fa006 <+294>:=09movq   0x4(%rdi),%xmm1
   0x00000000002fa00b <+299>:=09mov    0x20(%rdi),%r12
   0x00000000002fa00f <+303>:=09mov    0x38(%rdi),%rbp
   0x00000000002fa013 <+307>:=09pextrw $0x0,%xmm0,%r13d
   0x00000000002fa019 <+313>:=09movaps %xmm2,0x20(%rsp)
   0x00000000002fa01e <+318>:=09movaps %xmm3,0x10(%rsp)


Again, I see no code here which touches 0xc(%rdi) or the three bytes
after it.

But union buffered_input_event has no hole at bytes 12-15, only two of
its union members do.

So it seems this may be a bug with bitfield enums; it's not quite clear
to me why we're using one here, but it doesn't seem to be working as
intended.

Pip





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 26 Feb 2025 17:25:35 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 26 12:25:35 2025
Received: from localhost ([127.0.0.1]:55255 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnLA6-0006T9-Ph
	for submit <at> debbugs.gnu.org; Wed, 26 Feb 2025 12:25:35 -0500
Received: from mail-wr1-x430.google.com ([2a00:1450:4864:20::430]:52735)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <marian.iurie@HIDDEN>)
 id 1tnLA3-0006Sq-3t
 for 76559 <at> debbugs.gnu.org; Wed, 26 Feb 2025 12:25:32 -0500
Received: by mail-wr1-x430.google.com with SMTP id
 ffacd0b85a97d-38f378498c9so7161676f8f.1
 for <76559 <at> debbugs.gnu.org>; Wed, 26 Feb 2025 09:25:31 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1740590725; x=1741195525; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=Ib/fswb1EBfhfj18LgQT4yubuHzut4WnHQRq7znIo7c=;
 b=hblomVk4wIjCh8JvFwy540/iU/7zS6r61woYwe8SIxk3W+AALNMpntHFXbht6qnj0K
 0FgdkeiRSBny7A+GIc/m0JZA3MfMiroQFQA2L3POwMd5LOZdtn664pZR22xnIzkBeMtC
 Vis0ozojVKG82rxmFKvcQPHXCHqfFBdIoSb7Nuzdh89PcfVOetLydoc4iDLzHPcll+v1
 unWeAALneB/n8pb7BhecWQ22JM2smyJefh8bAWB+ky6BRHlZjOg8oxaukwSyWwrrgl4J
 4qX7o7rm6cBVL9lVoMmwy8cbC7yb54AC/4MbftGkJJrQOI7j7lpU46Gf5GkvM6Pr3RnT
 rqZw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1740590725; x=1741195525;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=Ib/fswb1EBfhfj18LgQT4yubuHzut4WnHQRq7znIo7c=;
 b=h7N85KYSxKUYLndYpR6PgKYKJZUGySEn1ibdgrsTrxc9BVBgo2dIiPSf5BT4MZCbiT
 sDtVaFZleNrDVnMBnDq/SZJX6yu9hlAZW2N+dWgPulq4aWSy5FUz5I6YYM+XcE3NbLVa
 BSh95P9g9bGx7vOhFzDZQ5iPo6D7UN7sQNB20RRnEKTfwlbQxzVOSeHkDk5ULAwJfivq
 nbOX2HCHi/BjTlAqWZ7JGucfPFPQfS+MYvVL3fyW464PDOn2gLtGrFb9iYp2KGAbUfn3
 3hJ56eIlyn38lWdsV5wbNclGLOfGeZo59gyL7THZ+Ew0Xc1mO0T1IuGmfMRrZsK6ynse
 oj2g==
X-Gm-Message-State: AOJu0YxIR17XpeHaXDni0fwSLcLuWWU985yCxeIP0CurP0S6SgCBBCqF
 pnxdiLHftO4z5PVHYq1B6fniOArs9eMhx7Jo1Z05jIL3BMAs8sHiBzuzqV0ZGcKrUi4myFBsKaH
 2DCp24aRqyt7oDbGegcQfvtyEVZY=
X-Gm-Gg: ASbGncuB2V2XXduiSAhTBtwhodQbXtBA4wlwXeD2cK0fOqvF00LsqJoTkxXczVxx/MK
 3nhYxn715tO3Jg8MISlKGmikv4kLYiVhUppPo/jCX7zUMYFX06e0ZtGmePLyDwJ+MEHhsnFVA1D
 tYgqdeWg==
X-Google-Smtp-Source: AGHT+IHjQq5zHaWfBD542mekCou2F3FYiv42pVQB2ATSlQI6TQFhngP7FBh01yw7uRM/3kefGuLPbNrmyIuQxveugtQ=
X-Received: by 2002:a05:6000:1373:b0:38f:43c8:f766 with SMTP id
 ffacd0b85a97d-390cc60bb96mr8110095f8f.31.1740590724507; Wed, 26 Feb 2025
 09:25:24 -0800 (PST)
MIME-Version: 1.0
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <87wmdc4osq.fsf@HIDDEN>
In-Reply-To: <87wmdc4osq.fsf@HIDDEN>
From: Iurie Marian <marian.iurie@HIDDEN>
Date: Wed, 26 Feb 2025 18:25:12 +0100
X-Gm-Features: AQ5f1JqiUtR_lSk1w2w5HjNxqS1onyX0GUfGHPiIz8bo37NhKSKnKq5FyjKs91A
Message-ID: <CAP+jDP6E=BdUHT3+w0g4QO1GYv5vDcx-VNmEPFp5UyLKhsCZow@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
To: Pip Cet <pipcet@HIDDEN>
Content-Type: multipart/alternative; boundary="000000000000d57045062f0edb0b"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Michael Albinus <michael.albinus@HIDDEN>, 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--000000000000d57045062f0edb0b
Content-Type: text/plain; charset="UTF-8"

Yes, it looks like Michael's changes have nothing to do with this bug,
but these seem just to reveal some undefined behavior... idk. Btw,
just by commenting the line src/keyboard.c:11697, it is not crashing
anymore; maybe this could be a hint.

> gcc --version
gcc (Debian 12.2.0-14) 12.2.0

> Can you check that 0x555555cf0b00 is a valid dpyinfo structure?
(gdb) info locals
event = 0x555555953aa0 <kbd_buffer+384>
copy = {kind = SELECTION_REQUEST_EVENT, dpyinfo = 0x55c82260, requestor =
0x555555f93a80, selection = 0x45, target = 0x4d, property = 0x5e, time = 0}
moved_events = <optimized out>

(gdb) x 0x555555c82260
0x555555c82260: 0x00

> Can you run "ptype/o struct selection_input_event" [...]

(gdb) ptype/o struct selection_input_event
/* offset      |    size */  type = struct selection_input_event {
/*      0: 0   |       4 */    enum event_kind kind : 16;
/* XXX  6-byte hole      */
/*      8      |       8 */    struct pgtk_display_info *dpyinfo;
/*     16      |       8 */    GdkWindow *requestor;
/*     24      |       8 */    GdkAtom selection;
/*     32      |       8 */    GdkAtom target;
/*     40      |       8 */    GdkAtom property;
/*     48      |       4 */    guint32 time;
/* XXX  4-byte padding   */

                               /* total size (bytes):   56 */
                             }

(gdb) ptype/o struct input_event
/* offset      |    size */  type = struct input_event {
/*      0: 0   |       4 */    enum event_kind kind : 16;
/*      2: 0   |       4 */    enum scroll_bar_part part : 16;
/*      4      |       4 */    unsigned int code;
/*      8      |       4 */    unsigned int modifiers;
/* XXX  4-byte hole      */
/*     16      |       8 */    Lisp_Object x;
/*     24      |       8 */    Lisp_Object y;
/*     32      |       8 */    Time timestamp;
/*     40      |       8 */    Lisp_Object frame_or_window;
/*     48      |       8 */    Lisp_Object arg;
/*     56      |       8 */    Lisp_Object device;

                               /* total size (bytes):   64 */
                             }

(gdb) ptype/o union buffered_input_event
/* offset      |    size */  type = union buffered_input_event {
/*                     4 */    enum event_kind kind : 16;
/*                    64 */    struct input_event {
/*      0: 0   |       4 */        enum event_kind kind : 16;
/*      2: 0   |       4 */        enum scroll_bar_part part : 16;
/*      4      |       4 */        unsigned int code;
/*      8      |       4 */        unsigned int modifiers;
/* XXX  4-byte hole      */
/*     16      |       8 */        Lisp_Object x;
/*     24      |       8 */        Lisp_Object y;
/*     32      |       8 */        Time timestamp;
/*     40      |       8 */        Lisp_Object frame_or_window;
/*     48      |       8 */        Lisp_Object arg;
/*     56      |       8 */        Lisp_Object device;

                                   /* total size (bytes):   64 */
                               } ie;
/*                    56 */    struct selection_input_event {
/*      0: 0   |       4 */        enum event_kind kind : 16;
/* XXX  6-byte hole      */
/*      8      |       8 */        struct pgtk_display_info *dpyinfo;
/*     16      |       8 */        GdkWindow *requestor;
/*     24      |       8 */        GdkAtom selection;
/*     32      |       8 */        GdkAtom target;
--Type <RET> for more, q to quit, c to continue without paging--
/*     40      |       8 */        GdkAtom property;
/*     48      |       4 */        guint32 time;
/* XXX  4-byte padding   */

                                   /* total size (bytes):   56 */
                               } sie;

                               /* total size (bytes):   64 */
                             }




On Wed, 26 Feb 2025 at 18:08, Pip Cet <pipcet@HIDDEN> wrote:

> "Iurie Marian" <marian.iurie@HIDDEN> writes:
>
> > Dear Maintainers,
> >
> > Emacs is crashing while copying-as-kill/killing-word, only when compiled
> > with -O3 optimizations. I am using PGTK (see the configure command
> > below). I did a git bisect, and it seems that the commit below is
> > triggering the bug. To reproduce it just compile with -O3 and PGTK, then
> > simply hit M-<backspace>.
>
> Just for completeness, you're using lto as well as -O3, which seems more
> likely to trigger this bug than Michael's change below.
>
> And I can't reproduce it here.
>
> Which precise compiler are you using?  gcc --version would be very
> helpful here.
>
> > (gdb) list
> > 566       pushed = false;
> > 567
> > 568       if (!dpyinfo)
> > 569         goto DONE;
> > 570
> > 571       local_selection_data = LOCAL_SELECTION (selection_symbol,
> dpyinfo);
> > 572
> > 573       /* Decline if we don't own any selections.  */
> > 574       if (NILP (local_selection_data)) goto DONE;
> > 575
> >
> > (gdb) fr 2
> > #2  process_special_events () at
> > /home/rce/.local/emacs/sources/src/keyboard.c:4570
> > 4570              pgtk_handle_selection_event (&copy);
> > (gdb) list
> > 4565              input_pending = readable_events (0);
> > 4566
> > 4567    #ifdef HAVE_X11
> > 4568              x_handle_selection_event (&copy);
> > 4569    #else
> > 4570              pgtk_handle_selection_event (&copy);
> > 4571    #endif
> > 4572    #elif defined HAVE_HAIKU
> > 4573              if (event->ie.kind != SELECTION_CLEAR_EVENT)
> > 4574                emacs_abort ();
> > (gdb) info locals
> > event = 0x555555957a40 <kbd_buffer+384>
> > copy = {kind = SELECTION_REQUEST_EVENT, dpyinfo = 0x55cf0b00,
>
> dypinfo looks like it was truncated to 32 bits.  Can you check that
> 0x555555cf0b00 is a valid dpyinfo structure?
>
> The definition in question is:
>
> struct selection_input_event
> {
>   ENUM_BF (event_kind) kind : EVENT_KIND_WIDTH;
>   struct pgtk_display_info *dpyinfo;
>   /* We spell it with an "o" here because X does.  */
>   GdkWindow *requestor;
>   GdkAtom selection, target, property;
>   guint32 time;
> };
>
> Can you run "ptype/o struct selection_input_event" and "ptype/o struct
> input_event" to see what might be going on?  "ptype/o union
> buffered_input_event" would also be interesting, to see whether our
> union trick might no longer be working.
>
> Pip
>
>

--000000000000d57045062f0edb0b
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Yes, it looks like Michael&#39;s changes have nothing to d=
o with this bug,<br>but these seem just to reveal some undefined behavior..=
. idk. Btw,=C2=A0<div>just by commenting the line src/keyboard.c:11697, it =
is not crashing=C2=A0</div><div>anymore; maybe this could be a hint.<br><di=
v><br>&gt; gcc --version<br>gcc (Debian 12.2.0-14) 12.2.0<br><br>&gt; Can y=
ou check that 0x555555cf0b00 is a valid dpyinfo structure?<br><div>(gdb) in=
fo locals<br>event =3D 0x555555953aa0 &lt;kbd_buffer+384&gt;<br>copy =3D {k=
ind =3D SELECTION_REQUEST_EVENT, dpyinfo =3D 0x55c82260, requestor =3D 0x55=
5555f93a80, selection =3D 0x45, target =3D 0x4d, property =3D 0x5e, time =
=3D 0}<br>moved_events =3D &lt;optimized out&gt;<br><br></div><div>(gdb) x =
0x555555c82260<br>0x555555c82260: 0x00<br><br>&gt; Can you run &quot;ptype/=
o struct selection_input_event&quot; [...]</div><div><br></div><div>(gdb) p=
type/o struct selection_input_event<br>/* offset =C2=A0 =C2=A0 =C2=A0| =C2=
=A0 =C2=A0size */ =C2=A0type =3D struct selection_input_event {<br>/* =C2=
=A0 =C2=A0 =C2=A00: 0 =C2=A0 | =C2=A0 =C2=A0 =C2=A0 4 */ =C2=A0 =C2=A0enum =
event_kind kind : 16;<br>/* XXX =C2=A06-byte hole =C2=A0 =C2=A0 =C2=A0*/<br=
>/* =C2=A0 =C2=A0 =C2=A08 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0 8 */ =
=C2=A0 =C2=A0struct pgtk_display_info *dpyinfo;<br>/* =C2=A0 =C2=A0 16 =C2=
=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0 8 */ =C2=A0 =C2=A0GdkWindow *reques=
tor;<br>/* =C2=A0 =C2=A0 24 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0 8 */=
 =C2=A0 =C2=A0GdkAtom selection;<br>/* =C2=A0 =C2=A0 32 =C2=A0 =C2=A0 =C2=
=A0| =C2=A0 =C2=A0 =C2=A0 8 */ =C2=A0 =C2=A0GdkAtom target;<br>/* =C2=A0 =
=C2=A0 40 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0 8 */ =C2=A0 =C2=A0GdkA=
tom property;<br>/* =C2=A0 =C2=A0 48 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =
=C2=A0 4 */ =C2=A0 =C2=A0guint32 time;<br>/* XXX =C2=A04-byte padding =C2=
=A0 */<br><br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0/* total size (bytes): =
=C2=A0 56 */<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0}</div><div><br>(gdb) ptype/o =
struct input_event<br>/* offset =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0size */ =
=C2=A0type =3D struct input_event {<br>/* =C2=A0 =C2=A0 =C2=A00: 0 =C2=A0 |=
 =C2=A0 =C2=A0 =C2=A0 4 */ =C2=A0 =C2=A0enum event_kind kind : 16;<br>/* =
=C2=A0 =C2=A0 =C2=A02: 0 =C2=A0 | =C2=A0 =C2=A0 =C2=A0 4 */ =C2=A0 =C2=A0en=
um scroll_bar_part part : 16;<br>/* =C2=A0 =C2=A0 =C2=A04 =C2=A0 =C2=A0 =C2=
=A0| =C2=A0 =C2=A0 =C2=A0 4 */ =C2=A0 =C2=A0unsigned int code;<br>/* =C2=A0=
 =C2=A0 =C2=A08 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0 4 */ =C2=A0 =C2=
=A0unsigned int modifiers;<br>/* XXX =C2=A04-byte hole =C2=A0 =C2=A0 =C2=A0=
*/<br>/* =C2=A0 =C2=A0 16 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0 8 */ =
=C2=A0 =C2=A0Lisp_Object x;<br>/* =C2=A0 =C2=A0 24 =C2=A0 =C2=A0 =C2=A0| =
=C2=A0 =C2=A0 =C2=A0 8 */ =C2=A0 =C2=A0Lisp_Object y;<br>/* =C2=A0 =C2=A0 3=
2 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0 8 */ =C2=A0 =C2=A0Time timesta=
mp;<br>/* =C2=A0 =C2=A0 40 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0 8 */ =
=C2=A0 =C2=A0Lisp_Object frame_or_window;<br>/* =C2=A0 =C2=A0 48 =C2=A0 =C2=
=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0 8 */ =C2=A0 =C2=A0Lisp_Object arg;<br>/* =
=C2=A0 =C2=A0 56 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0 8 */ =C2=A0 =C2=
=A0Lisp_Object device;<br><br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0/* total =
size (bytes): =C2=A0 64 */<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0}</div><div><br>=
(gdb) ptype/o union buffered_input_event<br>/* offset =C2=A0 =C2=A0 =C2=A0|=
 =C2=A0 =C2=A0size */ =C2=A0type =3D union buffered_input_event {<br>/* =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 4 */ =C2=
=A0 =C2=A0enum event_kind kind : 16;<br>/* =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A064 */ =C2=A0 =C2=A0struct input_event=
 {<br>/* =C2=A0 =C2=A0 =C2=A00: 0 =C2=A0 | =C2=A0 =C2=A0 =C2=A0 4 */ =C2=A0=
 =C2=A0 =C2=A0 =C2=A0enum event_kind kind : 16;<br>/* =C2=A0 =C2=A0 =C2=A02=
: 0 =C2=A0 | =C2=A0 =C2=A0 =C2=A0 4 */ =C2=A0 =C2=A0 =C2=A0 =C2=A0enum scro=
ll_bar_part part : 16;<br>/* =C2=A0 =C2=A0 =C2=A04 =C2=A0 =C2=A0 =C2=A0| =
=C2=A0 =C2=A0 =C2=A0 4 */ =C2=A0 =C2=A0 =C2=A0 =C2=A0unsigned int code;<br>=
/* =C2=A0 =C2=A0 =C2=A08 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0 4 */ =
=C2=A0 =C2=A0 =C2=A0 =C2=A0unsigned int modifiers;<br>/* XXX =C2=A04-byte h=
ole =C2=A0 =C2=A0 =C2=A0*/<br>/* =C2=A0 =C2=A0 16 =C2=A0 =C2=A0 =C2=A0| =C2=
=A0 =C2=A0 =C2=A0 8 */ =C2=A0 =C2=A0 =C2=A0 =C2=A0Lisp_Object x;<br>/* =C2=
=A0 =C2=A0 24 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0 8 */ =C2=A0 =C2=A0=
 =C2=A0 =C2=A0Lisp_Object y;<br>/* =C2=A0 =C2=A0 32 =C2=A0 =C2=A0 =C2=A0| =
=C2=A0 =C2=A0 =C2=A0 8 */ =C2=A0 =C2=A0 =C2=A0 =C2=A0Time timestamp;<br>/* =
=C2=A0 =C2=A0 40 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0 8 */ =C2=A0 =C2=
=A0 =C2=A0 =C2=A0Lisp_Object frame_or_window;<br>/* =C2=A0 =C2=A0 48 =C2=A0=
 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0 8 */ =C2=A0 =C2=A0 =C2=A0 =C2=A0Lisp_O=
bject arg;<br>/* =C2=A0 =C2=A0 56 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=
=A0 8 */ =C2=A0 =C2=A0 =C2=A0 =C2=A0Lisp_Object device;<br><br>=C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0/* total size (bytes): =C2=A0 64 *=
/<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0} ie;<br>/* =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A056 */ =C2=A0 =C2=A0struct s=
election_input_event {<br>/* =C2=A0 =C2=A0 =C2=A00: 0 =C2=A0 | =C2=A0 =C2=
=A0 =C2=A0 4 */ =C2=A0 =C2=A0 =C2=A0 =C2=A0enum event_kind kind : 16;<br>/*=
 XXX =C2=A06-byte hole =C2=A0 =C2=A0 =C2=A0*/<br>/* =C2=A0 =C2=A0 =C2=A08 =
=C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0 8 */ =C2=A0 =C2=A0 =C2=A0 =C2=A0=
struct pgtk_display_info *dpyinfo;<br>/* =C2=A0 =C2=A0 16 =C2=A0 =C2=A0 =C2=
=A0| =C2=A0 =C2=A0 =C2=A0 8 */ =C2=A0 =C2=A0 =C2=A0 =C2=A0GdkWindow *reques=
tor;<br>/* =C2=A0 =C2=A0 24 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0 8 */=
 =C2=A0 =C2=A0 =C2=A0 =C2=A0GdkAtom selection;<br>/* =C2=A0 =C2=A0 32 =C2=
=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0 8 */ =C2=A0 =C2=A0 =C2=A0 =C2=A0Gdk=
Atom target;<br>--Type &lt;RET&gt; for more, q to quit, c to continue witho=
ut paging--<br>/* =C2=A0 =C2=A0 40 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=
=A0 8 */ =C2=A0 =C2=A0 =C2=A0 =C2=A0GdkAtom property;<br>/* =C2=A0 =C2=A0 4=
8 =C2=A0 =C2=A0 =C2=A0| =C2=A0 =C2=A0 =C2=A0 4 */ =C2=A0 =C2=A0 =C2=A0 =C2=
=A0guint32 time;<br>/* XXX =C2=A04-byte padding =C2=A0 */<br><br>=C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0/* total size (bytes): =C2=A0 56 *=
/<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0} sie;<br><br>=C2=A0 =C2=A0 =C2=A0=
 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0/* total size (bytes): =C2=A0 64 */<br>=C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0}<br></div><div><br></div><div><br></div></div></div></div><br=
><br><div class=3D"gmail_quote gmail_quote_container"><div dir=3D"ltr" clas=
s=3D"gmail_attr">On Wed, 26 Feb 2025 at 18:08, Pip Cet &lt;<a href=3D"mailt=
o:pipcet@HIDDEN">pipcet@HIDDEN</a>&gt; wrote:<br></div><blo=
ckquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left=
:1px solid rgb(204,204,204);padding-left:1ex">&quot;Iurie Marian&quot; &lt;=
<a href=3D"mailto:marian.iurie@HIDDEN" target=3D"_blank">marian.iurie@gm=
ail.com</a>&gt; writes:<br>
<br>
&gt; Dear Maintainers,<br>
&gt;<br>
&gt; Emacs is crashing while copying-as-kill/killing-word, only when compil=
ed<br>
&gt; with -O3 optimizations. I am using PGTK (see the configure command<br>
&gt; below). I did a git bisect, and it seems that the commit below is<br>
&gt; triggering the bug. To reproduce it just compile with -O3 and PGTK, th=
en<br>
&gt; simply hit M-&lt;backspace&gt;.<br>
<br>
Just for completeness, you&#39;re using lto as well as -O3, which seems mor=
e<br>
likely to trigger this bug than Michael&#39;s change below.<br>
<br>
And I can&#39;t reproduce it here.<br>
<br>
Which precise compiler are you using?=C2=A0 gcc --version would be very<br>
helpful here.<br>
<br>
&gt; (gdb) list<br>
&gt; 566=C2=A0 =C2=A0 =C2=A0 =C2=A0pushed =3D false;<br>
&gt; 567<br>
&gt; 568=C2=A0 =C2=A0 =C2=A0 =C2=A0if (!dpyinfo)<br>
&gt; 569=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0goto DONE;<br>
&gt; 570<br>
&gt; 571=C2=A0 =C2=A0 =C2=A0 =C2=A0local_selection_data =3D LOCAL_SELECTION=
 (selection_symbol, dpyinfo);<br>
&gt; 572<br>
&gt; 573=C2=A0 =C2=A0 =C2=A0 =C2=A0/* Decline if we don&#39;t own any selec=
tions.=C2=A0 */<br>
&gt; 574=C2=A0 =C2=A0 =C2=A0 =C2=A0if (NILP (local_selection_data)) goto DO=
NE;<br>
&gt; 575<br>
&gt;<br>
&gt; (gdb) fr 2<br>
&gt; #2=C2=A0 process_special_events () at<br>
&gt; /home/rce/.local/emacs/sources/src/keyboard.c:4570<br>
&gt; 4570=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 pgtk_handle_selec=
tion_event (&amp;copy);<br>
&gt; (gdb) list<br>
&gt; 4565=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 input_pending =3D=
 readable_events (0);<br>
&gt; 4566<br>
&gt; 4567=C2=A0 =C2=A0 #ifdef HAVE_X11<br>
&gt; 4568=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 x_handle_selectio=
n_event (&amp;copy);<br>
&gt; 4569=C2=A0 =C2=A0 #else<br>
&gt; 4570=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 pgtk_handle_selec=
tion_event (&amp;copy);<br>
&gt; 4571=C2=A0 =C2=A0 #endif<br>
&gt; 4572=C2=A0 =C2=A0 #elif defined HAVE_HAIKU<br>
&gt; 4573=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 if (event-&gt;ie.=
kind !=3D SELECTION_CLEAR_EVENT)<br>
&gt; 4574=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 emacs_abor=
t ();<br>
&gt; (gdb) info locals<br>
&gt; event =3D 0x555555957a40 &lt;kbd_buffer+384&gt;<br>
&gt; copy =3D {kind =3D SELECTION_REQUEST_EVENT, dpyinfo =3D 0x55cf0b00,<br=
>
<br>
dypinfo looks like it was truncated to 32 bits.=C2=A0 Can you check that<br=
>
0x555555cf0b00 is a valid dpyinfo structure?<br>
<br>
The definition in question is:<br>
<br>
struct selection_input_event<br>
{<br>
=C2=A0 ENUM_BF (event_kind) kind : EVENT_KIND_WIDTH;<br>
=C2=A0 struct pgtk_display_info *dpyinfo;<br>
=C2=A0 /* We spell it with an &quot;o&quot; here because X does.=C2=A0 */<b=
r>
=C2=A0 GdkWindow *requestor;<br>
=C2=A0 GdkAtom selection, target, property;<br>
=C2=A0 guint32 time;<br>
};<br>
<br>
Can you run &quot;ptype/o struct selection_input_event&quot; and &quot;ptyp=
e/o struct<br>
input_event&quot; to see what might be going on?=C2=A0 &quot;ptype/o union<=
br>
buffered_input_event&quot; would also be interesting, to see whether our<br=
>
union trick might no longer be working.<br>
<br>
Pip<br>
<br>
</blockquote></div>

--000000000000d57045062f0edb0b--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 26 Feb 2025 17:09:07 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 26 12:09:07 2025
Received: from localhost ([127.0.0.1]:55209 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnKuB-0005Za-F8
	for submit <at> debbugs.gnu.org; Wed, 26 Feb 2025 12:09:07 -0500
Received: from mail-4316.protonmail.ch ([185.70.43.16]:63011)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <pipcet@HIDDEN>)
 id 1tnKu5-0005Yc-2U
 for 76559 <at> debbugs.gnu.org; Wed, 26 Feb 2025 12:09:02 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com;
 s=protonmail3; t=1740589734; x=1740848934;
 bh=hNOPwhn62CEaaOphFR4dRLbNan45j1i4RfLqyfSPDWk=;
 h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References:
 Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID:
 Message-ID:BIMI-Selector:List-Unsubscribe:List-Unsubscribe-Post;
 b=bctzzpEdi5pKXIFV/UNsHlNM1sUmNBKx5g6EtQbSYMYl0almeus9rg3V7LQfeKYbT
 do3x9lbao6x1BcZNIiQOyqc655X21mppm8LzNanb0ODAOOtsJkbZXWt6R6Z8HhgiXr
 t4rh+2iHfx9Ojn455A63Rq4jz8L805oIBGl7Wvk1lcP5AjRVdfVniuNgKiiNW48zKJ
 5fuHD7H0RDgUBRAGu5E9oXVxDqG0zg2yqq90tn1M0Lei6hNeh8fqao0udEtmSTRAk5
 aSAhcniq3jD5qnPk/fEN3ESaB3N1ltZ7DKoS2MFcKKmjZ+jIINUBWoll3Z61GV8gTz
 1cBRDt4TQKY3Q==
Date: Wed, 26 Feb 2025 17:08:40 +0000
To: Iurie Marian <marian.iurie@HIDDEN>
From: Pip Cet <pipcet@HIDDEN>
Subject: Re: bug#76559: 31.0.50;
 [-O3 + PGTK] Crash when 'copying as kill'/'killing word'
Message-ID: <87wmdc4osq.fsf@HIDDEN>
In-Reply-To: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
Feedback-ID: 112775352:user:proton
X-Pm-Message-ID: 17067319cf983f5e1301ce61cc4ca1661011dc50
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: Michael Albinus <michael.albinus@HIDDEN>, 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

"Iurie Marian" <marian.iurie@HIDDEN> writes:

> Dear Maintainers,
>
> Emacs is crashing while copying-as-kill/killing-word, only when compiled
> with -O3 optimizations. I am using PGTK (see the configure command
> below). I did a git bisect, and it seems that the commit below is
> triggering the bug. To reproduce it just compile with -O3 and PGTK, then
> simply hit M-<backspace>.

Just for completeness, you're using lto as well as -O3, which seems more
likely to trigger this bug than Michael's change below.

And I can't reproduce it here.

Which precise compiler are you using?  gcc --version would be very
helpful here.

> (gdb) list
> 566       pushed =3D false;
> 567
> 568       if (!dpyinfo)
> 569         goto DONE;
> 570
> 571       local_selection_data =3D LOCAL_SELECTION (selection_symbol, dpy=
info);
> 572
> 573       /* Decline if we don't own any selections.  */
> 574       if (NILP (local_selection_data)) goto DONE;
> 575
>
> (gdb) fr 2
> #2  process_special_events () at
> /home/rce/.local/emacs/sources/src/keyboard.c:4570
> 4570              pgtk_handle_selection_event (&copy);
> (gdb) list
> 4565              input_pending =3D readable_events (0);
> 4566
> 4567    #ifdef HAVE_X11
> 4568              x_handle_selection_event (&copy);
> 4569    #else
> 4570              pgtk_handle_selection_event (&copy);
> 4571    #endif
> 4572    #elif defined HAVE_HAIKU
> 4573              if (event->ie.kind !=3D SELECTION_CLEAR_EVENT)
> 4574                emacs_abort ();
> (gdb) info locals
> event =3D 0x555555957a40 <kbd_buffer+384>
> copy =3D {kind =3D SELECTION_REQUEST_EVENT, dpyinfo =3D 0x55cf0b00,

dypinfo looks like it was truncated to 32 bits.  Can you check that
0x555555cf0b00 is a valid dpyinfo structure?

The definition in question is:

struct selection_input_event
{
  ENUM_BF (event_kind) kind : EVENT_KIND_WIDTH;
  struct pgtk_display_info *dpyinfo;
  /* We spell it with an "o" here because X does.  */
  GdkWindow *requestor;
  GdkAtom selection, target, property;
  guint32 time;
};

Can you run "ptype/o struct selection_input_event" and "ptype/o struct
input_event" to see what might be going on?  "ptype/o union
buffered_input_event" would also be interesting, to see whether our
union trick might no longer be working.

Pip





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 26 Feb 2025 16:38:31 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 26 11:38:31 2025
Received: from localhost ([127.0.0.1]:55113 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnKQY-00042b-SG
	for submit <at> debbugs.gnu.org; Wed, 26 Feb 2025 11:38:31 -0500
Received: from mail-wm1-x32d.google.com ([2a00:1450:4864:20::32d]:55750)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <marian.iurie@HIDDEN>)
 id 1tnKQV-00042I-T4
 for 76559 <at> debbugs.gnu.org; Wed, 26 Feb 2025 11:38:28 -0500
Received: by mail-wm1-x32d.google.com with SMTP id
 5b1f17b1804b1-4399ca9d338so110635e9.3
 for <76559 <at> debbugs.gnu.org>; Wed, 26 Feb 2025 08:38:27 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1740587901; x=1741192701; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=uMuu9HrgmggXmZI/eTIi8/YO8/gOTGT5YMNPZ6Vfsqw=;
 b=mAzV1idqvTKyqKBA9bABOVNsuj0e0Hz5tGu2bcTtf3w1YDIkjSZs4NFlyKQ3uTd1hn
 7E0vX2j6I182rQScOALc+1jUht+TZaggpK9YkDrTXlFlBFOWmCKJc37asJygeYEN7EKm
 cutnhTDW9kbv+3Bazg4PJZGwReJHOQOoiOGrN8TBKaHN1j8wTsdQ4T1FAbIxHDALgoxP
 EADh7OpTor8Opp3audMB4njdYtcCna788Oy4P0E3dhge0zdzn4uyJ0pSrA2SyxDETryw
 VVOc2kB1IIA1SEfArboJYpRt1UjO+8Qz8q9FVyWzK6E0DujAKt4gYr3BAysYU59/oL0v
 G9LA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1740587901; x=1741192701;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=uMuu9HrgmggXmZI/eTIi8/YO8/gOTGT5YMNPZ6Vfsqw=;
 b=ZfmpwdCK5y5X9fBZzikvg5RmgYzid/PGwbtsqns6MQSPvbJsRchOod6WMR8ww29rZf
 0BXNouBkweaiNQbEz68cyjBbqB/BOH2r0oZ8z5FExKZXhwShy7FE8aYd0Q7E547BYzr9
 YX2ZxgduGJrjOJEZopbCnorZFqG+TdS7qow8Atz59dk3nXPTabTINoKEDz62y8rkM0CK
 QUUVt+TMCmVdSgIxHOnfmwrRwZ2vfrw+F6bFkVqgDrp6PHJtTBUN/s0Zn9+EoJwj93L3
 RLEy2vH62HLsFr4e/V7f3YXDf1ioHCuAA/5wU/TbR/NM4cd5aEAvOW9nSe+7NZzIPdhn
 Dofw==
X-Forwarded-Encrypted: i=1;
 AJvYcCUVfwtfods8cjiKYyt+hhmuJEtuVXRr1+wkZ3DBfe1eYUaZFtxSlzyWyzrU9XVNJywMUaQ3ZA==@debbugs.gnu.org
X-Gm-Message-State: AOJu0YxYvtE4jZmbrDVIv22hnE+gROqN+j53Pmk+qbAYSIgS2ADKbbCB
 QKRbC/RZ1kU3jNq0kREv5ayKeiGYkOktWRWggE3bKkIDcesmj1U1o0gEYFwSfpd3/+BeGXGXCrl
 GH7IrEl9YdkzHSy8JRchl9FXs03g=
X-Gm-Gg: ASbGncuCcAcUg3T26xNgJ+uzcPHkXRbag/ZV15Lp7G9E112Qpv8LBWJ+oZt/SUHJP0H
 cVS1jieNtesu1FferZdLLxF2eMtAK55/nHMw2ISl6Iy0wTBmUDXuDmxtNs08hQpK2OXVg773zHI
 gqtvdg6w==
X-Google-Smtp-Source: AGHT+IFIp7jU30JSe8uVpgkhaspxUCR/ivQo/h1zCbgmTsJ5gkoEOv5+1p9zfJD0O5FJXG9uiIUM+DDBIg2FeiMCVYU=
X-Received: by 2002:a5d:588b:0:b0:38c:5dcb:312e with SMTP id
 ffacd0b85a97d-390cc3aff06mr7050422f8f.0.1740587901506; Wed, 26 Feb 2025
 08:38:21 -0800 (PST)
MIME-Version: 1.0
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
In-Reply-To: <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
From: Iurie Marian <marian.iurie@HIDDEN>
Date: Wed, 26 Feb 2025 17:38:10 +0100
X-Gm-Features: AQ5f1Joiiufq1sy980lOo1ivKXoRiInEwOk3t9IqNbnaQaOlXlD3l78Fltan5lQ
Message-ID: <CAP+jDP598yFbJtu7rBNnMW_KZ5V16PSagwzbgS6M97hW4i68dQ@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
To: Eli Zaretskii <eliz@HIDDEN>
Content-Type: text/plain; charset="UTF-8"
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: 76559
Cc: michael.albinus@HIDDEN, Iurie Marian <iura.mail@HIDDEN>,
 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

btw, just by commenting the line src/keyboard.c:11697, it is not
crashing anymore; maybe this could be a hint.

https://git.savannah.gnu.org/cgit/emacs.git/tree/src/keyboard.c?h=master#n11697
  /* Store it into the input event queue.  */
  /* kbd_buffer_store_event (&ie); */


On Wed, 26 Feb 2025 at 17:03, Iurie Marian <marian.iurie@HIDDEN> wrote:
>
> `dpyinfo` is actually invalid...
>
> (gdb) p *event
> $3 = {kind = SELECTION_REQUEST_EVENT, dpyinfo = 0x55c83670, requestor
> = 0x555556035a80, selection = 0x45, target = 0x4d, property = 0x60,
> time = 0}
>
> (gdb) p *event->dpyinfo
> Cannot access memory at address 0x55c83670
>
> (gdb) x/s 0x55c83670
> 0x55c83670:     <error: Cannot access memory at address 0x55c83670>
>
> (gdb) p event->dpyinfo->terminal
> Cannot access memory at address 0x55c83678
>
> On Wed, 26 Feb 2025 at 16:48, Eli Zaretskii <eliz@HIDDEN> wrote:
> >
> > > From: Iurie Marian <iura.mail@HIDDEN>
> > > Date: Wed, 26 Feb 2025 14:43:20 +0100
> > > Cc: Iurie Marian <marian.iurie@HIDDEN>, 76559 <at> debbugs.gnu.org, michael.albinus@HIDDEN
> > >
> > > > What does this produce:
> > > >
> > > >  (gdb) p *event
> > >
> > > (gdb) p *event
> > > $1 = {kind = SELECTION_REQUEST_EVENT, ie = {kind =
> > > SELECTION_REQUEST_EVENT, part = scroll_bar_nowhere, code = 0,
> > > modifiers = 1439199584, x = 0x555555f95a80, y = 0x45, timestamp = 77,
> > > frame_or_window = 0x5e, arg = 0x0, device = 0x30}, sie = {kind =
> > > SELECTION_REQUEST_EVENT, dpyinfo = 0x55c87160, requestor =
> > > 0x555555f95a80, selection = 0x45, target = 0x4d, property = 0x5e, time
> > > = 0}}
> >
> > And this:
> >
> >  (gdb) p event->dpyinfo->terminal
> >  (gdb) p event->dpyinfo->terminal->Vselection_list




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 26 Feb 2025 16:35:50 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 26 11:35:50 2025
Received: from localhost ([127.0.0.1]:55099 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnKNy-0003wJ-5q
	for submit <at> debbugs.gnu.org; Wed, 26 Feb 2025 11:35:50 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:50420)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tnKNu-0003vz-HC
 for 76559 <at> debbugs.gnu.org; Wed, 26 Feb 2025 11:35:47 -0500
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 <eliz@HIDDEN>)
 id 1tnKNp-0001v0-2n; Wed, 26 Feb 2025 11:35:41 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=cpNyHAWu5qbXXPHlyaF+EQAwMgWrlD3xHrQfzHloBT0=; b=Kj7oR6Yg7G9Z
 J6pyiriy5VMCKw1IhTq7iiw3ao9kwjitfOhyH88n/nNQhO/qvkEWsbnAei8S9lYncqj499M7ESad/
 T8S73KOYzKiZ2Occk72KmcriMRJRTZ2A1sSUKbTeEt/0judcPiAhI+VeABvYI1EyM9B+s/njknjOn
 wYm75LTuD5xFazmaxcwoIbz+SP4G5C7b0GDdhcneXieyAhdWbGDLpvU33hvk9A5Wwn44tUb3K26xr
 20lhi5MCkBd0coJfvIvtZXMoP7OcSFeH6KhhfK5tGVEotjbslV1eDfCGO5EIdLC40QAqcu+VVFGAf
 VRfSmf+FQK1ff73Jssd5LQ==;
Date: Wed, 26 Feb 2025 18:35:37 +0200
Message-Id: <86h64gvf3a.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Iurie Marian <marian.iurie@HIDDEN>, Po Lu <luangruo@HIDDEN>
In-Reply-To: <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
 (message from Iurie Marian on Wed, 26 Feb 2025 17:03:29 +0100)
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
 <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 76559
Cc: michael.albinus@HIDDEN, iura.mail@HIDDEN, 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Iurie Marian <marian.iurie@HIDDEN>
> Date: Wed, 26 Feb 2025 17:03:29 +0100
> Cc: Iurie Marian <iura.mail@HIDDEN>, 76559 <at> debbugs.gnu.org, michael.albinus@HIDDEN
> 
> `dpyinfo` is actually invalid...
> 
> (gdb) p *event
> $3 = {kind = SELECTION_REQUEST_EVENT, dpyinfo = 0x55c83670, requestor
> = 0x555556035a80, selection = 0x45, target = 0x4d, property = 0x60,
> time = 0}
> 
> (gdb) p *event->dpyinfo
> Cannot access memory at address 0x55c83670
> 
> (gdb) x/s 0x55c83670
> 0x55c83670:     <error: Cannot access memory at address 0x55c83670>
> 
> (gdb) p event->dpyinfo->terminal
> Cannot access memory at address 0x55c83678

So dpyinfo got freed somehow?

 Po Lu, any suggestions or ideas?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 26 Feb 2025 16:14:16 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 26 11:14:16 2025
Received: from localhost ([127.0.0.1]:55019 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnK36-0002ic-28
	for submit <at> debbugs.gnu.org; Wed, 26 Feb 2025 11:14:16 -0500
Received: from mail-qk1-x72b.google.com ([2607:f8b0:4864:20::72b]:46246)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <iura.mail@HIDDEN>)
 id 1tnHhK-0001p3-Gk
 for 76559 <at> debbugs.gnu.org; Wed, 26 Feb 2025 08:43:39 -0500
Received: by mail-qk1-x72b.google.com with SMTP id
 af79cd13be357-7c0a4b030f2so877941385a.0
 for <76559 <at> debbugs.gnu.org>; Wed, 26 Feb 2025 05:43:38 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1740577413; x=1741182213; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=xQ7rGTYWEOXU/UFmHzn4X9c4lRkrEITV2klMP7jLcgE=;
 b=KM9IGGPHMDlEY0BCDf9TEEXmqDrafMfNiBXZwASvMsKwdA/CKWGmA+7B8IDje4pc41
 hPZBhmXzQSCH5+MZRCg4feibk10Wfn71ix6yC8Yp25wv5dNFjjjcxwBRkBfFeoldg6qY
 VApMcgCDAZOa/iMJCMapaYqBpXQEjfI57TIJosZdhiIneQ4MrRQiQEFwzDCEyGRUAcCv
 sxSUdfE1zTFps/91N7yAPjbFKBecCVHPN1HX+TysdDb6G9kClRzPLOvi+AHXbL79hC7k
 gY7NMsfOm14T2WREVLnxi+AFKgBoJYKgzTM4iVsreJbEHyibORe65eI9gnKjm8p5gW5j
 Qofw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1740577413; x=1741182213;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=xQ7rGTYWEOXU/UFmHzn4X9c4lRkrEITV2klMP7jLcgE=;
 b=eNqnYrKGIiWUH8hVq8xc9i5FFP1M62LHnV24iFHcHFLn7mpxljzNeROsCYZrDrw+0i
 J5PF7Eh9vLwCQb0knc4s5/hGJmsTeef3cykB590EYcTgKjjb9uVdZnI2KU7yNiEVG95p
 9lYIvsWIBzOjRBuMKM5FlFYeD/nwc+cd6FGO4YOlQ442flBZfglCfn6qWRjqc4mrO4Nr
 BLYY8W97dwg26fw85Ue+RhAgMGCjdctTX3QzK/5T8W6ch252s5EeXA9Dx/Lcjoz2WZQK
 hXlSU/J0VvLttFjfG84eInuyFYcFN3mZ9ZWbcyYqZoqPTAcsj/I+zhTQsYwZO+iWn+wB
 UAuw==
X-Forwarded-Encrypted: i=1;
 AJvYcCXQPcBNOB/YQh+65iAyMDzr0q4So38CJjESWCeXFp8ubTYZ13qAgLbRoTZ6df+mdeAiIw4Atw==@debbugs.gnu.org
X-Gm-Message-State: AOJu0Yz+gJ1J2is7o9Q9ZaTOIQ+uhaaS7Dxk3fqfjWH1oUtvm7hmTtnr
 80jIQl/XlQsVrpCyLAiQO93IkSYwy6auDQdEvoh9ptXZCKFKQ/PHaFdRu3m95rexnJxt61rHy0E
 MIVw8BuowP9Ti4SoNWLJ+flLRamo=
X-Gm-Gg: ASbGnct9d7FgAavx6bCu1EL5JrlVPMpAwAtPBUX1H1w0ZWJE72lEyTkN6aZi+nLZsF4
 N086LSRsLI/0hyiyO79briFBUYdxIJp+v8OJPRjWeuEbmglobL06/5nlRJGU5qyzm09YSHaEfWW
 qt3eZ14w==
X-Google-Smtp-Source: AGHT+IEQibdKHRP9kRs2jwgV57Q9OZJce1AMKh9wbVoI2A4cDg0vNm1GGc9DULBfeLHx1EmetpL1ZlJUCy/Szo24gQk=
X-Received: by 2002:a05:622a:347:b0:471:fe62:9627 with SMTP id
 d75a77b69052e-47224716d1fmr320707241cf.3.1740577411890; Wed, 26 Feb 2025
 05:43:31 -0800 (PST)
MIME-Version: 1.0
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
In-Reply-To: <868qpsx35i.fsf@HIDDEN>
From: Iurie Marian <iura.mail@HIDDEN>
Date: Wed, 26 Feb 2025 14:43:20 +0100
X-Gm-Features: AWEUYZnNit8DmuyLhV-_1MbCjFeuR5BImgCZ0ha90ecT_NUudbTE3ha-M-iAsR0
Message-ID: <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
To: Eli Zaretskii <eliz@HIDDEN>
Content-Type: text/plain; charset="UTF-8"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
X-Mailman-Approved-At: Wed, 26 Feb 2025 11:13:52 -0500
Cc: michael.albinus@HIDDEN, Iurie Marian <marian.iurie@HIDDEN>,
 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

> What does this produce:
>
>  (gdb) p *event

(gdb) p *event
$1 = {kind = SELECTION_REQUEST_EVENT, ie = {kind =
SELECTION_REQUEST_EVENT, part = scroll_bar_nowhere, code = 0,
modifiers = 1439199584, x = 0x555555f95a80, y = 0x45, timestamp = 77,
frame_or_window = 0x5e, arg = 0x0, device = 0x30}, sie = {kind =
SELECTION_REQUEST_EVENT, dpyinfo = 0x55c87160, requestor =
0x555555f95a80, selection = 0x45, target = 0x4d, property = 0x5e, time
= 0}}



On Wed, 26 Feb 2025 at 14:10, Eli Zaretskii <eliz@HIDDEN> wrote:
>
> > Cc: Michael Albinus <michael.albinus@HIDDEN>
> > From: Iurie Marian <marian.iurie@HIDDEN>
> > Date: Tue, 25 Feb 2025 18:32:39 +0100
> >
> > Dear Maintainers,
> >
> > Emacs is crashing while copying-as-kill/killing-word, only when compiled
> > with -O3 optimizations. I am using PGTK (see the configure command
> > below). I did a git bisect, and it seems that the commit below is
> > triggering the bug. To reproduce it just compile with -O3 and PGTK, then
> > simply hit M-<backspace>.
> >
> > At the bottom you will also see the the stack trace, maybe it's useful.
>
> Is this still in GDB, and you can answer some questions about it?  Or,
> if not, then reproduce the crash and answer the questions then?
>
> > (gdb) info locals
> > event = 0x555555957a40 <kbd_buffer+384>
> > copy = {kind = SELECTION_REQUEST_EVENT, dpyinfo = 0x55cf0b00,
> > requestor = 0x555555f97a80, selection = 0x45, target = 0x4d, property
> > = 0x5e, time = 0}
> > moved_events = <optimized out>
> >
> > (gdb) x/s 0x55cf0b00
> > 0x55cf0b00:     <error: Cannot access memory at address 0x55cf0b00>
>
> What does this produce:
>
>  (gdb) p *event
>




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 26 Feb 2025 16:03:53 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 26 11:03:53 2025
Received: from localhost ([127.0.0.1]:54958 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnJt2-00029J-Lg
	for submit <at> debbugs.gnu.org; Wed, 26 Feb 2025 11:03:53 -0500
Received: from mail-wr1-x42a.google.com ([2a00:1450:4864:20::42a]:47593)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <marian.iurie@HIDDEN>)
 id 1tnJsx-00028l-9w
 for 76559 <at> debbugs.gnu.org; Wed, 26 Feb 2025 11:03:50 -0500
Received: by mail-wr1-x42a.google.com with SMTP id
 ffacd0b85a97d-38f6287649eso5499513f8f.3
 for <76559 <at> debbugs.gnu.org>; Wed, 26 Feb 2025 08:03:47 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1740585821; x=1741190621; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=Qf4O01zWbckF9we4GJl7TkXCXs33JwPB7WWUUlqW19Q=;
 b=avErAErvWSASb6UsqGWYmlORW1cuXt8uffivgLj7YCVvd/9CiQB9Mldupx4fIe7XK6
 LXTvNsT1evfhsbbkx9kEWtV59CWQNXo1jUvIsfFskYzm1WSTi1vp5zX5Yji5uO/gGrph
 2UXFrCglRT7GH5lrBi66XmxxL745Rd6hmJYZMuLcDvAxqQG/DNUgCo/9ndEaxQx6egR2
 jrSVekiG3VWEP2+5k9s7uinvjLLSXEga4DXaDlBar4w+FbI0ZPIrIZRMcQ44i1NWXzeE
 MZqzhxqNw6nTcBSKTUGAc9pPYP6mdwJEu0rfq2JA0/pDHAJteI+HHA+FQIdb8Gn2caG2
 GVuA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1740585821; x=1741190621;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=Qf4O01zWbckF9we4GJl7TkXCXs33JwPB7WWUUlqW19Q=;
 b=t2AV1TllUg+7u3IhHXcjfT6Y6VK/ImpqVqmIu3Dcs4m3h2pkm3jtT7xnmRf2MRdeT3
 OZSrKAKPbLagLb9iUYEJEp7brVUswboDTskdGKKE82pD089vNC2hzGcKIeAvaUOg+bBj
 X5KC5m+pG9qTtXf+euhxsF45PWA4FOwcvljeTamPtnJgWeUfnhP930Jb3v5bpp6a4eZ4
 T+mwhd8JqMKcK/MGJ0y0kzf8byroFG+6uTpsaXiZok+JYAv6wSzVm++TyxFmC1h/MybV
 +0y/xBspvTYwpEQpVLG5ExjphqqTKGj11rqPFWXSyXge02/c7DpOgR+PhjI6If+krN3O
 ju2A==
X-Forwarded-Encrypted: i=1;
 AJvYcCUOy42OYZrLU3iiWTWP10YoO7klrxc4AwfI5OT+5XtqqcRDkE+lsi9voHJpgoaWq+LA1xDTOA==@debbugs.gnu.org
X-Gm-Message-State: AOJu0YxeYkXSzpjWh/T8TDcCVOqCgkwK5sLEsCRyWOusK6QrD8DRDh16
 SgCvLzYXq7KG9gtiheyaP1iCi6v/LeleCiY8JA0nP93f8A9cO91ktSiHh/UVlDuYaEB9/oX/hGO
 nPJKI9oRsPYrO1wST9AHDSHZ/9N4=
X-Gm-Gg: ASbGnct3kSLXo/UyHb+Zrq7vEg8Ltvfjl7vKxXyB7vbzzZ7fUeHO2Cumvp+TOV5+u1I
 o7nfVYwINxTG7bsCc01YAJl6UWwuI1AF6SOXfV1rgCHEByXQYccGnTfoZew0lESeGlANy8+bv5F
 cqP5DCpw==
X-Google-Smtp-Source: AGHT+IGw2j6mMU4y3VcmyJt3nzPHzwNPXuoH6KJBFQYKdSObNm2kceln2AEolPSr1Q9GAsgKMdhWnJ8GI+CJgXAeYZ8=
X-Received: by 2002:a5d:47c2:0:b0:38f:394f:d81 with SMTP id
 ffacd0b85a97d-38f7078453cmr15724107f8f.2.1740585820703; Wed, 26 Feb 2025
 08:03:40 -0800 (PST)
MIME-Version: 1.0
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 <86o6yovh9e.fsf@HIDDEN>
In-Reply-To: <86o6yovh9e.fsf@HIDDEN>
From: Iurie Marian <marian.iurie@HIDDEN>
Date: Wed, 26 Feb 2025 17:03:29 +0100
X-Gm-Features: AQ5f1Jpxb6As6KNoFEWuLqcOnEdn6pErW_MATnEIwZMZ2UAGNrN2HIt3Oc91qUs
Message-ID: <CAP+jDP5Lxjv_wPWuOTZA8EFyffT70KXYcWZFHq2TOK8vBReAiw@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
To: Eli Zaretskii <eliz@HIDDEN>
Content-Type: text/plain; charset="UTF-8"
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: 76559
Cc: michael.albinus@HIDDEN, Iurie Marian <iura.mail@HIDDEN>,
 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

`dpyinfo` is actually invalid...

(gdb) p *event
$3 = {kind = SELECTION_REQUEST_EVENT, dpyinfo = 0x55c83670, requestor
= 0x555556035a80, selection = 0x45, target = 0x4d, property = 0x60,
time = 0}

(gdb) p *event->dpyinfo
Cannot access memory at address 0x55c83670

(gdb) x/s 0x55c83670
0x55c83670:     <error: Cannot access memory at address 0x55c83670>

(gdb) p event->dpyinfo->terminal
Cannot access memory at address 0x55c83678

On Wed, 26 Feb 2025 at 16:48, Eli Zaretskii <eliz@HIDDEN> wrote:
>
> > From: Iurie Marian <iura.mail@HIDDEN>
> > Date: Wed, 26 Feb 2025 14:43:20 +0100
> > Cc: Iurie Marian <marian.iurie@HIDDEN>, 76559 <at> debbugs.gnu.org, michael.albinus@HIDDEN
> >
> > > What does this produce:
> > >
> > >  (gdb) p *event
> >
> > (gdb) p *event
> > $1 = {kind = SELECTION_REQUEST_EVENT, ie = {kind =
> > SELECTION_REQUEST_EVENT, part = scroll_bar_nowhere, code = 0,
> > modifiers = 1439199584, x = 0x555555f95a80, y = 0x45, timestamp = 77,
> > frame_or_window = 0x5e, arg = 0x0, device = 0x30}, sie = {kind =
> > SELECTION_REQUEST_EVENT, dpyinfo = 0x55c87160, requestor =
> > 0x555555f95a80, selection = 0x45, target = 0x4d, property = 0x5e, time
> > = 0}}
>
> And this:
>
>  (gdb) p event->dpyinfo->terminal
>  (gdb) p event->dpyinfo->terminal->Vselection_list




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 26 Feb 2025 15:48:57 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 26 10:48:57 2025
Received: from localhost ([127.0.0.1]:54911 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnJea-0001Mp-Kv
	for submit <at> debbugs.gnu.org; Wed, 26 Feb 2025 10:48:56 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:46448)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tnJeX-0001MX-Ra
 for 76559 <at> debbugs.gnu.org; Wed, 26 Feb 2025 10:48:54 -0500
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 <eliz@HIDDEN>)
 id 1tnJeS-0003b5-H4; Wed, 26 Feb 2025 10:48:48 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=f/VfH49ZGMQ4pZR93zlUqNyvUDxJJ8s59NTTJkfnumA=; b=haaJXa7MP5I2
 NYkBOsLYv+WUn61wu3MO6UqbXYEAH5GgtBANLutQ7if0y3NdXbnSj1sSJ4mNpORc0B/vWSyueIgDW
 T1MH3QMe3ZLr/BYv2uyNHvJwpiRyFaxeZatOGo3YBz3QTq1dMglqEJflHJ+KR2neJF7KFB8ZDZ7Z4
 GBN2EsKEn7R6RGZIyHddP8tfb4+6ChfIWjWURSeEKJYut3DPBOVMq4jT7PNwpWz0X2nXDo0LM/KXA
 9XlKbpoQGX++KvkGAR4POcsQTyiSFXtEKGui7CqH7dg7AJFKFiH6YKgegtJxKxN5ZltzHq+OkSTSZ
 jS9hygEoa4PzPYJDtvI7Cw==;
Date: Wed, 26 Feb 2025 17:48:45 +0200
Message-Id: <86o6yovh9e.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Iurie Marian <iura.mail@HIDDEN>
In-Reply-To: <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
 (message from Iurie Marian on Wed, 26 Feb 2025 14:43:20 +0100)
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
 <CAAsKXAzcrKJegrWPZJmUYRMRxtcosncGetok-1d2vR4Z3dczrQ@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 76559
Cc: michael.albinus@HIDDEN, marian.iurie@HIDDEN, 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Iurie Marian <iura.mail@HIDDEN>
> Date: Wed, 26 Feb 2025 14:43:20 +0100
> Cc: Iurie Marian <marian.iurie@HIDDEN>, 76559 <at> debbugs.gnu.org, michael.albinus@HIDDEN
> 
> > What does this produce:
> >
> >  (gdb) p *event
> 
> (gdb) p *event
> $1 = {kind = SELECTION_REQUEST_EVENT, ie = {kind =
> SELECTION_REQUEST_EVENT, part = scroll_bar_nowhere, code = 0,
> modifiers = 1439199584, x = 0x555555f95a80, y = 0x45, timestamp = 77,
> frame_or_window = 0x5e, arg = 0x0, device = 0x30}, sie = {kind =
> SELECTION_REQUEST_EVENT, dpyinfo = 0x55c87160, requestor =
> 0x555555f95a80, selection = 0x45, target = 0x4d, property = 0x5e, time
> = 0}}

And this:

 (gdb) p event->dpyinfo->terminal
 (gdb) p event->dpyinfo->terminal->Vselection_list




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 26 Feb 2025 15:21:48 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 26 10:21:48 2025
Received: from localhost ([127.0.0.1]:54806 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnJEK-0008Nx-6k
	for submit <at> debbugs.gnu.org; Wed, 26 Feb 2025 10:21:48 -0500
Received: from mail-wr1-x431.google.com ([2a00:1450:4864:20::431]:49468)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <marian.iurie@HIDDEN>)
 id 1tnJEG-0008Ne-Vv
 for 76559 <at> debbugs.gnu.org; Wed, 26 Feb 2025 10:21:45 -0500
Received: by mail-wr1-x431.google.com with SMTP id
 ffacd0b85a97d-38f488f3161so3874913f8f.3
 for <76559 <at> debbugs.gnu.org>; Wed, 26 Feb 2025 07:21:44 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1740583299; x=1741188099; darn=debbugs.gnu.org;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:from:to:cc:subject:date:message-id:reply-to;
 bh=EyIeGL25+86OE2D8EhAQ5bM+gEKdvWU2B2DbNImUkmQ=;
 b=W5WD1J0TD+ZHjIK9P2uY4NZZt+ftMrX9rn8HWrb/WSlvAGwL3MMKs+PfIkv36Xo9j+
 TCRQse5b3WuB7xHOIFoTe8qYdvAIYKoT5Q2Az+XIXhDTe7bqMBOqdnb9AnsHkorUhhnM
 uBsufrrN2Bhv2BEh2/naQEgOjwFw/EILTd1z2oXT3MbGjYwdudb66/q5ZP3BM/o5TWSa
 oIZ/lQGjWQ27QhZbMPm4+Ah+MmfSZTQX6Wp+ma6xp9GT1iupm+2hfSYzV0aIilkibR9W
 R3EKhpeUmM/jVVCGRBKaLnNEMaI7k2zG5hW2urVCAks6FVYVaT/yiFkD+26Na3GtqT7o
 x+3g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1740583299; x=1741188099;
 h=cc:to:subject:message-id:date:from:in-reply-to:references
 :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=EyIeGL25+86OE2D8EhAQ5bM+gEKdvWU2B2DbNImUkmQ=;
 b=r7GFdUI+AtKoIUe3DdcpwdaIeAMCXASiUaScoecVE2yy+6Jt2WCXrLfj/DnYtBAqN1
 xk6fw6e5IwuhlG76OtpYQxOW926nIMmTjp7ryfJ4pXrUkkBs42Vk6Wey4JJ4YiKzyQkY
 H1oECWchXPzzgJqG7P/9CYgI87lmUrtclNo9ePqgvdS7tpia7MQBVXhnUsCGAYSFGWFJ
 efO+OgR/eTSyAHdqZ1fm6EOpeU3q7wNMnOqx5v6zoFRxrR8ofTS/0vwUy3K7r5QvpAGs
 5zAzYmJQM38cM4wT1/4LFQJm+YfHckVbWnpZSFuHxLnX4wPfufoqCTogJdNol1XJ50tl
 uspQ==
X-Gm-Message-State: AOJu0YzW7Bn5zmLknEfFn/q3opaXxCJGt6jBD9s07BsJEZY4zH4IAD25
 iJ46wvKVT9qOOGKyufh7cD4Rh9U2nXlTCaftj6BQcF4d1fV468hN6eZRmOH/4RT+vOlmwjfhBVv
 X69N9aZNn9J2jwH0nd2yRflppbn4=
X-Gm-Gg: ASbGnculShACWB2QLAQ3mH49P0IFTuJy67vfLyU/JkBVpZci7flTng0UOCvFjVHmSFn
 1BmR6FDLmOGhNPoamD7NzNr7WuHT35x3rIkoDE771rMsa6ntNMpowj0Evlm5g9m1PgaKQ+FatTt
 iFpNc8fQ==
X-Google-Smtp-Source: AGHT+IFECoyAFOX+5VlsCqR/yT9wptR6XXAaXcrcADWw0OGLRn0s/p6a5E8rusOsNs4nZw/T4fbBUa5PccMxKZykm/0=
X-Received: by 2002:a5d:5f53:0:b0:38f:23f4:2d7a with SMTP id
 ffacd0b85a97d-38f70827f18mr18454509f8f.40.1740583298605; Wed, 26 Feb 2025
 07:21:38 -0800 (PST)
MIME-Version: 1.0
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 <868qpsx35i.fsf@HIDDEN>
In-Reply-To: <868qpsx35i.fsf@HIDDEN>
From: Iurie Marian <marian.iurie@HIDDEN>
Date: Wed, 26 Feb 2025 16:21:27 +0100
X-Gm-Features: AQ5f1Jrh2o_i4q0lRtI56jcYfL3jOVJTjvjSZrRS-J4EmIieF0hl9fDtCHhffmE
Message-ID: <CAP+jDP4Kau33Jw=7FENd8EMAdruqo_f8Q2f27wZOSxRurBv=ug@HIDDEN>
Subject: Re: bug#76559: 31.0.50; [-O3 + PGTK] Crash when 'copying as
 kill'/'killing word'
To: Eli Zaretskii <eliz@HIDDEN>
Content-Type: text/plain; charset="UTF-8"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 76559
Cc: michael.albinus@HIDDEN, 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

> What does this produce:
>
>  (gdb) p *event

(gdb) p *event
$1 = {kind = SELECTION_REQUEST_EVENT, ie = {kind =
SELECTION_REQUEST_EVENT, part = scroll_bar_nowhere, code = 0,
modifiers = 1439199584, x = 0x555555f95a80, y = 0x45, timestamp = 77,
frame_or_window = 0x5e, arg = 0x0, device = 0x30}, sie = {kind =
SELECTION_REQUEST_EVENT, dpyinfo = 0x55c87160, requestor =
0x555555f95a80, selection = 0x45, target = 0x4d, property = 0x5e, time
= 0}}

On Wed, 26 Feb 2025 at 14:10, Eli Zaretskii <eliz@HIDDEN> wrote:
>
> > Cc: Michael Albinus <michael.albinus@HIDDEN>
> > From: Iurie Marian <marian.iurie@HIDDEN>
> > Date: Tue, 25 Feb 2025 18:32:39 +0100
> >
> > Dear Maintainers,
> >
> > Emacs is crashing while copying-as-kill/killing-word, only when compiled
> > with -O3 optimizations. I am using PGTK (see the configure command
> > below). I did a git bisect, and it seems that the commit below is
> > triggering the bug. To reproduce it just compile with -O3 and PGTK, then
> > simply hit M-<backspace>.
> >
> > At the bottom you will also see the the stack trace, maybe it's useful.
>
> Is this still in GDB, and you can answer some questions about it?  Or,
> if not, then reproduce the crash and answer the questions then?
>
> > (gdb) info locals
> > event = 0x555555957a40 <kbd_buffer+384>
> > copy = {kind = SELECTION_REQUEST_EVENT, dpyinfo = 0x55cf0b00,
> > requestor = 0x555555f97a80, selection = 0x45, target = 0x4d, property
> > = 0x5e, time = 0}
> > moved_events = <optimized out>
> >
> > (gdb) x/s 0x55cf0b00
> > 0x55cf0b00:     <error: Cannot access memory at address 0x55cf0b00>
>
> What does this produce:
>
>  (gdb) p *event
>




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at 76559 <at> debbugs.gnu.org:


Received: (at 76559) by debbugs.gnu.org; 26 Feb 2025 13:10:45 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 26 08:10:45 2025
Received: from localhost ([127.0.0.1]:51466 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tnHBV-0000Di-Da
	for submit <at> debbugs.gnu.org; Wed, 26 Feb 2025 08:10:45 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:34372)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tnHBS-0000DS-HO
 for 76559 <at> debbugs.gnu.org; Wed, 26 Feb 2025 08:10:43 -0500
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 <eliz@HIDDEN>)
 id 1tnHBM-0007gB-Md; Wed, 26 Feb 2025 08:10:36 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=/tMsLtpFezw6HWF+P8o/C6GUSYePqMB7wwXRMy6LZUk=; b=BkaSp07Ai7a5
 Xi1DHFwVOcXybiR0rhgxaefEhybqIBt/lP8kPi1zz3r6B4SGJK0gk14L8sL/f3RYrXCcY4eXhMfVm
 03gd4zNnisLYPyYt7kgENCpHWQIQiutEpfppaegR2XBeRtuJ6KBCUVhNTpoBylK87KuGE9dQGO42I
 3wiJW1JkWfKwyPxVY1c+xh710xO8KOSNWMBKgGAiLEQibMk0lp3s5U1z5rhlDi7hu/jh+w7f+h7gG
 tY3BZu3Vl5bQ3pAyUfXVzDqlkolkTGWo9sVCzVvzeHDmVkgdtgqYyR0dsV2V37KG/+3aC/C3KlAXM
 x4DHH4co1hkV8j5fOWFUDA==;
Date: Wed, 26 Feb 2025 15:10:33 +0200
Message-Id: <868qpsx35i.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Iurie Marian <marian.iurie@HIDDEN>
In-Reply-To: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
 (message from Iurie Marian on Tue, 25 Feb 2025 18:32:39 +0100)
Subject: Re: bug#76559: 31.0.50;
 [-O3 + PGTK] Crash when 'copying as kill'/'killing word'
References: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 76559
Cc: michael.albinus@HIDDEN, 76559 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Cc: Michael Albinus <michael.albinus@HIDDEN>
> From: Iurie Marian <marian.iurie@HIDDEN>
> Date: Tue, 25 Feb 2025 18:32:39 +0100
> 
> Dear Maintainers,
> 
> Emacs is crashing while copying-as-kill/killing-word, only when compiled
> with -O3 optimizations. I am using PGTK (see the configure command
> below). I did a git bisect, and it seems that the commit below is
> triggering the bug. To reproduce it just compile with -O3 and PGTK, then
> simply hit M-<backspace>.
> 
> At the bottom you will also see the the stack trace, maybe it's useful.

Is this still in GDB, and you can answer some questions about it?  Or,
if not, then reproduce the crash and answer the questions then?

> (gdb) info locals
> event = 0x555555957a40 <kbd_buffer+384>
> copy = {kind = SELECTION_REQUEST_EVENT, dpyinfo = 0x55cf0b00,
> requestor = 0x555555f97a80, selection = 0x45, target = 0x4d, property
> = 0x5e, time = 0}
> moved_events = <optimized out>
> 
> (gdb) x/s 0x55cf0b00
> 0x55cf0b00:     <error: Cannot access memory at address 0x55cf0b00>

What does this produce:

 (gdb) p *event





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 25 Feb 2025 17:33:15 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 25 12:33:15 2025
Received: from localhost ([127.0.0.1]:48284 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1tmyny-0000Wd-O9
	for submit <at> debbugs.gnu.org; Tue, 25 Feb 2025 12:33:15 -0500
Received: from lists.gnu.org ([2001:470:142::17]:41678)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <marian.iurie@HIDDEN>)
 id 1tmynv-0000WJ-71
 for submit <at> debbugs.gnu.org; Tue, 25 Feb 2025 12:33:12 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <marian.iurie@HIDDEN>)
 id 1tmynh-0004We-Pz
 for bug-gnu-emacs@HIDDEN; Tue, 25 Feb 2025 12:32:58 -0500
Received: from mail-wr1-x42c.google.com ([2a00:1450:4864:20::42c])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <marian.iurie@HIDDEN>)
 id 1tmynf-0006A8-4F
 for bug-gnu-emacs@HIDDEN; Tue, 25 Feb 2025 12:32:57 -0500
Received: by mail-wr1-x42c.google.com with SMTP id
 ffacd0b85a97d-388cae9eb9fso3184946f8f.3
 for <bug-gnu-emacs@HIDDEN>; Tue, 25 Feb 2025 09:32:54 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1740504771; x=1741109571; darn=gnu.org;
 h=cc:to:subject:message-id:date:from:mime-version:from:to:cc:subject
 :date:message-id:reply-to;
 bh=a37LLQm/GqkwfL434rMFGNynOklkPTiGFqSvBTG2Cg0=;
 b=ZgsoZUF6qWmr0OE8qEcYkXPEFj+9huiDsYz33Op8zrd+4rHMjHIb2w81/80Rqtrqhj
 6l6ExPUHuTsAWXCwT6AxsA7OAfWPUMAUt79yW4IrJRdUrNMxwxbicfXAM/FMuB9teRaA
 d6e/Vk8XUMGB07fHJAFFwJGnd8tYxLmZofxEfte44uIF+SfidMu2Zem8moE3xJ8aQg++
 Sig1IOUV9nyaOEje0bp+EFW01Qwl/AXE7K5eV2QAsBDs4mICnBWX3vBvjzvFb2b6WqIc
 8Q+uNxoM+tEvf9NQPQD0sm3I78uDq+R/HdZlREjwbbsgJL/2nlySkEM3ER3qTtM6H5db
 s5zA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1740504771; x=1741109571;
 h=cc:to:subject:message-id:date:from:mime-version:x-gm-message-state
 :from:to:cc:subject:date:message-id:reply-to;
 bh=a37LLQm/GqkwfL434rMFGNynOklkPTiGFqSvBTG2Cg0=;
 b=Kq/SoHJRDs4puuFjNYRwv+jp8xt2iT4ygH3iFfH+vkNqX94IaBJ0xQrQ/zuDE4JKAl
 JuZZOw1W+VzcW+GQn8eQ1c3eNnW+NNCkzzILL0MI5b3ZPK/1i2SGCKDFbifLJb+3HuaE
 qZgCuxo49A4w4nnIRO5K16iwCHduGt+jlflaUeF6Qy/4v33N1P9x3kPV2aG3wp9wMMIf
 s051QkBCr6P716CTKwwXJL7QtMOdDk7Siyn7xgL2K/KgOSoVBmN8daDigpyVt2z6DIzr
 BZ0bMdHMEnWvE1L65J2ItLa6q7/v4l1ICowu17qmP51YkYL2yWufvNue//AokbpzqMN+
 Ksdg==
X-Gm-Message-State: AOJu0YysB7dqfGsEfwyuBM3O5S/WXDvikaqApQTyZU8dT+MCprAGWuFS
 YqzqkvDKsxcCEeovfsvBWSUSmK3iwfPbdgHHjp8EE9+OXtdfvXpVIAz6GagaozmRFHwWicOzn0Q
 wgwD6Mdlhyxt3v44lZA/kEZPcw1X/uOFIl9GBqQ==
X-Gm-Gg: ASbGncu6ru/F0sSA6lT/lvVDD8x/72vLRuBuRwXVt2oLrB8+ssE6YRKfk2tRR3iaxeP
 ORjQ2CBOkk09kFFaWyLzGCVrgmoiFztOr7ZsT4SKuzmPid7K5Qzd30sgc524v4L4HReKaNFD/Lj
 UdnRPZcg==
X-Google-Smtp-Source: AGHT+IFQhMK74vo7Cf8oyU0XV806DjAKnCqsM41TNoZK63XnNgGrsWxxaO0I7V+yj1WQ/CmlrSL6twOzFRGp3918JZQ=
X-Received: by 2002:adf:e912:0:b0:38f:24f9:8bac with SMTP id
 ffacd0b85a97d-390cc60c1f9mr3253926f8f.23.1740504771014; Tue, 25 Feb 2025
 09:32:51 -0800 (PST)
MIME-Version: 1.0
From: Iurie Marian <marian.iurie@HIDDEN>
Date: Tue, 25 Feb 2025 18:32:39 +0100
X-Gm-Features: AQ5f1Jpo9xLhgTQ34Mda4MVrEnjPzOUKw__LniwKgteB0ytJMnMk1JXpc8UR6gI
Message-ID: <CAP+jDP7RYFUYF3hh0jSUOaxNyqtr0ZFupoOdU8gqu3Adn=YPjQ@HIDDEN>
Subject: 31.0.50; [-O3 + PGTK] Crash when 'copying as kill'/'killing word'
To: bug-gnu-emacs@HIDDEN
Content-Type: text/plain; charset="UTF-8"
Received-SPF: pass client-ip=2a00:1450:4864:20::42c;
 envelope-from=marian.iurie@HIDDEN; helo=mail-wr1-x42c.google.com
X-Spam_score_int: -20
X-Spam_score: -2.1
X-Spam_bar: --
X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001,
 RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,
 SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: submit
Cc: Michael Albinus <michael.albinus@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.0 (/)

Dear Maintainers,

Emacs is crashing while copying-as-kill/killing-word, only when compiled
with -O3 optimizations. I am using PGTK (see the configure command
below). I did a git bisect, and it seems that the commit below is
triggering the bug. To reproduce it just compile with -O3 and PGTK, then
simply hit M-<backspace>.

At the bottom you will also see the the stack trace, maybe it's useful.

Kind Regards,
Iurie

======================================================================

d41178368eb73873f34c15b58062a7447802c914 is the first bad commit
commit d41178368eb73873f34c15b58062a7447802c914
Author: Michael Albinus <michael.albinus@HIDDEN>
Date:   Fri Feb 7 12:04:05 2025 +0100
    New function insert-special-event and special event sleep-event

    * doc/lispref/commands.texi (Misc Events): Add sleep-event.
    (Special Events): New function insert-special-event.

    * etc/NEWS: New function insert-special-event.  New event 'sleep-event'.
    Fix typos.

    * src/keyboard.c (Finsert_special_event): New defun.
    (syms_of_keyboard): Declare Qsleep_event.  Define subroutine
    Sinsert_special_event.  Add sleep-event to Vspecial_event_map.
    (Bug#63620)
    (kbd_buffer_get_event, make_lispy_event)
    (init_while_no_input_ignore_events, is_ignored_event):
    * src/termhooks.h (event_kind): Add SLEEP_EVENT.
 doc/lispref/commands.texi | 32 ++++++++++++++++++++++
 etc/NEWS                  | 19 +++++++++++---
 src/keyboard.c            | 67 +++++++++++++++++++++++++++++++++++++++++++++++
 src/termhooks.h           |  3 +++
 4 files changed, 117 insertions(+), 4 deletions(-)

======================================================================

In GNU Emacs 31.0.50 (build 35, x86_64-pc-linux-gnu, GTK+ Version
 3.24.38, cairo version 1.16.0) of 2025-02-25 built on
 unit_xpchipbarcodereader
Repository revision: d41178368eb73873f34c15b58062a7447802c914
Repository branch: HEAD
System Description: Debian GNU/Linux 12 (bookworm)

Configured using:
 'configure 'CFLAGS= -g -Wall -Wextra -pedantic -O3'
 --prefix=/home/roche/.local/emacs/build_ --sysconfdir=/etc
 --libexecdir=/home/roche/.local/emacs/build_/usr/lib
 --localstatedir=/home/roche/.local/emacs/build_/var --with-modules
 --without-gconf --without-gsettings --enable-link-time-optimization
 --with-x-toolkit=yes --without-xaw3d --without-m17n-flt --with-cairo
 --without-compress-install --with-native-compilation=aot
 --with-mailutils --with-xft --with-rsvg --with-pgtk'

Configured features:
CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS HARFBUZZ JPEG LIBOTF LIBSELINUX
LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PGTK PNG RSVG SECCOMP
SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER WEBP XIM GTK3
ZLIB

Important settings:
  value of $LC_ALL: C
  locale-coding-system: nil

Major mode: Lisp Interaction

Minor modes in effect:
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  minibuffer-regexp-mode: t
  line-number-mode: t
  indent-tabs-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr compile comint ansi-osc ansi-color ring comp-run
bytecomp byte-compile comp-common rx emacsbug message mailcap yank-media
puny dired dired-loaddefs rfc822 mml mml-sec password-cache epa derived
epg rfc6068 epg-config gnus-util text-property-search time-date subr-x
mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils
mailheader cl-loaddefs cl-lib sendmail rfc2047 rfc2045 ietf-drums
mm-util mail-prsvr mail-utils rmc iso-transl tooltip cconv eldoc paren
electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel
term/pgtk-win pgtk-win term/common-win touch-screen pgtk-dnd tool-bar
dnd fontset image regexp-opt fringe tabulated-list replace newcomment
text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow
isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax
font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic
indonesian philippine cham georgian utf-8-lang misc-lang vietnamese
tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek
romanian slovak czech european ethiopic indian cyrillic chinese
composite emoji-zwj charscript charprop case-table epa-hook
jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs
theme-loaddefs faces cus-face macroexp files window text-properties
overlay sha1 md5 base64 format env code-pages mule custom widget keymap
hashtable-print-readable backquote threads dbusbind inotify
dynamic-setting font-render-setting cairo gtk pgtk multi-tty
move-toolbar make-network-process tty-child-frames native-compile emacs)

======================================================================

(gdb) bt
#0  pgtk_handle_selection_request (event=0x7fffffffd810) at
/home/rce/.local/emacs/sources/src/pgtkselect.c:571
#1  0x000055555569edd5 in pgtk_handle_selection_event
(event=0x7fffffffd810) at
/home/rce/.local/emacs/sources/src/pgtkselect.c:782
#2  process_special_events () at
/home/rce/.local/emacs/sources/src/keyboard.c:4570
#3  0x00005555555b5424 in swallow_events (do_display=true) at
/home/rce/.local/emacs/sources/src/keyboard.c:4610
#4  sit_for (timeout=0x7a, reading=<optimized out>, display_option=1)
at /home/rce/.local/emacs/sources/src/dispnew.c:6867
#5  0x00005555556a7c34 in read_char (commandflag=1,
map=0x7fffef23de23, prev_event=0x0, used_mouse_menu=0x7fffffffdfbb,
end_time=0x0) at /home/rce/.local/emacs/sources/src/lisp.h:704
#6  0x000055555583fa7b in read_key_sequence.constprop.0
(keybuf=<optimized out>, prevent_redisplay=false,
disable_text_conversion_p=false, fix_current_buffer=true,
can_return_switch_frame=true, dont_downcase_last=false, prompt=0x0) at
/home/rce/.local/emacs/sources/src/keyboard.c:10750
#7  0x000055555569ba51 in command_loop_1 () at
/home/rce/.local/emacs/sources/src/keyboard.c:1424
#8  0x000055555573d9f7 in internal_condition_case (bfun=0x55555569b8b0
<command_loop_1>, handlers=<optimized out>, hfun=0x555555699790
<cmd_error>) at /home/rce/.local/emacs/sources/src/eval.c:1602
#9  0x0000555555699a46 in command_loop_2
(handlers=handlers@entry=0x90) at
/home/rce/.local/emacs/sources/src/keyboard.c:1163
#10 0x000055555573d94c in internal_catch (tag=<optimized out>,
func=0x555555699a20 <command_loop_2>, arg=0x90) at
/home/rce/.local/emacs/sources/src/eval.c:1282
#11 0x000055555569b451 in command_loop () at
/home/rce/.local/emacs/sources/src/keyboard.c:1141
#12 0x000055555586e628 in recursive_edit_1.isra.0 () at
/home/rce/.local/emacs/sources/src/keyboard.c:749
#13 0x000055555569b88d in Frecursive_edit () at
/home/rce/.local/emacs/sources/src/keyboard.c:832
#14 0x00005555555a8c94 in main (argc=2, argv=0x7fffffffe668) at
/home/rce/.local/emacs/sources/src/emacs.c:2558

(gdb) list
566       pushed = false;
567
568       if (!dpyinfo)
569         goto DONE;
570
571       local_selection_data = LOCAL_SELECTION (selection_symbol, dpyinfo);
572
573       /* Decline if we don't own any selections.  */
574       if (NILP (local_selection_data)) goto DONE;
575

(gdb) fr 2
#2  process_special_events () at
/home/rce/.local/emacs/sources/src/keyboard.c:4570
4570              pgtk_handle_selection_event (&copy);
(gdb) list
4565              input_pending = readable_events (0);
4566
4567    #ifdef HAVE_X11
4568              x_handle_selection_event (&copy);
4569    #else
4570              pgtk_handle_selection_event (&copy);
4571    #endif
4572    #elif defined HAVE_HAIKU
4573              if (event->ie.kind != SELECTION_CLEAR_EVENT)
4574                emacs_abort ();
(gdb) info locals
event = 0x555555957a40 <kbd_buffer+384>
copy = {kind = SELECTION_REQUEST_EVENT, dpyinfo = 0x55cf0b00,
requestor = 0x555555f97a80, selection = 0x45, target = 0x4d, property
= 0x5e, time = 0}
moved_events = <optimized out>

(gdb) x/s 0x55cf0b00
0x55cf0b00:     <error: Cannot access memory at address 0x55cf0b00>




Acknowledgement sent to Iurie Marian <marian.iurie@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs@HIDDEN. Full text available.
Report forwarded to bug-gnu-emacs@HIDDEN:
bug#76559; Package emacs. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Tue, 4 Mar 2025 06:45:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.