From: Luis Machado <luis.machado@arm.com>
To: Pedro Alves <pedro@palves.net>, John Baldwin <jhb@FreeBSD.org>,
gdb-patches@sourceware.org,
David Spickett <David.Spickett@arm.com>
Subject: Re: [PATCH] [Arm] Remove dead FPA code
Date: Tue, 25 Oct 2022 14:54:30 +0100 [thread overview]
Message-ID: <4f93b1b5-7052-bdd4-8dac-761b2ff1e224@arm.com> (raw)
In-Reply-To: <ff30980f-86db-281c-bd60-de214cee087c@arm.com>
On 10/13/22 10:40, Luis Machado via Gdb-patches wrote:
> On 10/13/22 09:29, Pedro Alves wrote:
>>
>>
>> On 2022-10-13 8:23 a.m., Luis Machado wrote:
>>> On 10/10/22 15:58, Pedro Alves wrote:
>>>> On 2022-10-05 9:26 a.m., Luis Machado wrote:
>>>>
>>>>> Yeah, that's what I was worried about. Register discoveries without XML are not great, and more recently debugging stubs have been
>>>>> exposing more system registers. Having to consider FPA (which was *removed* 10 years ago from GCC, but fell in disuse before then) is not
>>>>> acceptable at this point.
>>>>>
>>>>> If those debugging stubs want to skip XML, I think it would be reasonable for them to at least update the expected 'g' packet to contain just
>>>>> the basic registers, with CPSR as 16.
>>>>>
>>>>> That might need some coordination. I can coordinate this from the Linux Kernel's side, but I never dealt with the BSD kernels.
>>>>
>>>> I'm not seeing much point in this:
>>>>
>>>> #1 - If the remote side supplies XML, then the register number doesn't really matter, GDB auto-maps the numbers.
>>>>
>>>> #2 - If the remote side doesn't supply XML, then you're just setting up for a world of coordination pain for no benefit.
>>>>
>>>> In GDB, to keep things working, we just have to keep the FPA register number hole in place. That's hardly causing
>>>> any maintenance burden, IMO. We just have to have comments in place explaining why we have them.
>>>
>>> Based on a recent thread with the Arm Linux Kernel maintainer, he finds it reasonable to make kgdb
>>> return XML data and to keep a compatibility layer (the g guesses) going for a reasonable amount of
>>> time, after which we can retire the guesses and drop the code.
>>
>> Good. Of course, the Linux kernel isn't going to be the only remote server or stub out there.
>>
>
> No, but most of the probes have been updated to use XML over the years. Yes, there is an unknown list of old
> probes and hardware out there potentially not using XML. I haven't seen any such issues reported against the
> GDB bugzilla though, which is good either way.
>
>>>
>>> It is not clear when we'll drop the compatibility layer, but at least we can get some traction towards
>>> making targets use XML and maybe add some deprecation warning to the g packet guesses. If we keep the code as-is,
>>> there is no incentive to update targets using old mechanisms.
>>
>> Deprecation warnings makes sense to me. Much more user-friendly than flat out removing the guesses without a warning
>> period, and/or changing the non-XML g/G packet layout.
>>
>> The (unwritten) policy for as long as I'm worked on GDB has always been that you don't change the hardcoded g/G packet
>> layout, ever. You can only grow it. Or use XML.
>
> Sure. But no longer required for XML-based data.
>
>>
>> While we can push new versions of tools to switch to XML, the older versions will still be out there. Stubs can
>> be embedded in devices that aren't going to update easily or at all. Is it a good idea to to cause them pain? IMHO, no.
>>
>> Note, for the FPA removal, you should send an email to gdb@ as well, see here for the obsoleting procedure:
>>
>> https://sourceware.org/gdb/wiki/Internals%20Obsoleting-code
>>
>
> Do you want that procedure followed completely, including the week waiting? I also seem to recall a different policy, where we
> deprecate something for a particular release and then remove on the next one.
Before I refresh this patch, did you have thoughts on the above?
next prev parent reply other threads:[~2022-10-25 13:54 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-20 12:30 Luis Machado
2022-09-20 12:47 ` Eli Zaretskii
2022-10-02 13:39 ` Enze Li
2022-10-03 8:27 ` Luis Machado
2022-10-03 17:33 ` John Baldwin
2022-10-03 19:16 ` Pedro Alves
2022-10-04 8:43 ` Luis Machado
2022-10-04 17:08 ` John Baldwin
2022-10-04 17:43 ` Luis Machado
2022-10-04 21:36 ` John Baldwin
2022-10-05 8:26 ` Luis Machado
2022-10-05 8:36 ` David Spickett
2022-10-05 8:36 ` David Spickett
2022-10-05 16:48 ` John Baldwin
2022-10-05 16:57 ` Richard Earnshaw
2022-10-06 13:02 ` Luis Machado
2022-10-10 14:58 ` Pedro Alves
2022-10-13 7:23 ` Luis Machado
2022-10-13 8:29 ` Pedro Alves
2022-10-13 9:40 ` Luis Machado
2022-10-25 13:54 ` Luis Machado [this message]
2022-11-14 14:30 ` Simon Marchi
2022-10-10 14:56 ` Pedro Alves
2022-10-13 7:18 ` Luis Machado
2022-10-13 8:44 ` Pedro Alves
2022-10-13 9:15 ` Luis Machado
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4f93b1b5-7052-bdd4-8dac-761b2ff1e224@arm.com \
--to=luis.machado@arm.com \
--cc=David.Spickett@arm.com \
--cc=gdb-patches@sourceware.org \
--cc=jhb@FreeBSD.org \
--cc=pedro@palves.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).