From: Luis Machado <luis.machado@arm.com>
To: Peter Maydell <peter.maydell@linaro.org>,
Fabiano Rosas <farosas@suse.de>
Cc: "Alex Bennée" <alex.bennee@linaro.org>,
qemu-devel@nongnu.org, "David Hildenbrand" <david@redhat.com>,
"Wainer dos Santos Moschetta" <wainersm@redhat.com>,
"Richard Henderson" <richard.henderson@linaro.org>,
qemu-arm@nongnu.org, "Peter Xu" <peterx@redhat.com>,
"Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Cleber Rosa" <crosa@redhat.com>,
"Thomas Huth" <thuth@redhat.com>,
"Paolo Bonzini" <pbonzini@redhat.com>,
"Beraldo Leal" <bleal@redhat.com>
Subject: Re: [PATCH 09/11] tests/tcg: disable pauth for aarch64 gdb tests
Date: Mon, 13 Mar 2023 11:16:42 +0000 [thread overview]
Message-ID: <0603036f-ac1c-3b04-4ea2-eb3967768df2@arm.com> (raw)
In-Reply-To: <CAFEAcA_bjTPO+68gV0V7436S2n=iJAoH3qXGw1v9-xhG2N0CLA@mail.gmail.com>
On 3/10/23 18:07, Peter Maydell wrote:
> On Fri, 10 Mar 2023 at 18:00, Fabiano Rosas <farosas@suse.de> wrote:
>>
>> Peter Maydell <peter.maydell@linaro.org> writes:
>>
>>> On Fri, 10 Mar 2023 at 10:31, Alex Bennée <alex.bennee@linaro.org> wrote:
>>>>
>>>> You need a very new gdb to be able to run with pauth support otherwise
>>>> your likely to hit asserts and aborts. Disable pauth for now until we
>>>> can properly probe support in gdb.
>>>>
>>>> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>>>
>>> If it makes gdb fall over, then shouldn't we be disabling
>>> the pauth gdbstub stuff entirely ? Otherwise even if our
>>> tests are fine our users will not be...
>>>
>>
>> Have you seem my message on IRC about changing the feature name in the
>> XML? I think the issue is that we're putting the .xml in a "namespace"
>> where GDB expects to only find stuff which it has code to
>> support. Changing from "org.gnu.gdb.aarch64.pauth" to
>> "org.qemu.aarch64.pauth" made it stop crashing and I can read the
>> registers just fine.
It might be a better option to emit a pauth feature in the qemu namespace to dodge the crashing bug from older
gdb's (a latent pauth-related bug in gdb that is triggered by having gdb identify that a target supports
pauth and at the same time having a target description containing system registers gdb doesn't
care about).
>
> But then presumably a pauth-aware GDB won't actually know
> the values it needs to be able to convert between with-PAC
> and without-PAC addresses for backtracing?
>
> Luis, how is this intended to work? Is there some way the
> stub can check with the gdb that's connected whether the
> gdb is able to cope with the pauth XML, so it can avoid
> sending it to a gdb that is going to crash if it sees it ?
There isn't a probing mechanism unfortunately, and gdb isn't supposed to crash in this case.
With the changes from commit 6d0020873deb2f2c4e0965dc2ebf227bc1db3140, gdb now unmasks signed
addresses using the additional pauth registers. If gdb doesn't detect the pauth feature, it will
still mask out the top bits using a default mask of 0xff80000000000000.
While that should be enough for user addresses, it won't help with "kernel" addresses (when the VA select bit is 1).
To dodge the crashing bug of older gdb's, I can adjust gdb to also look for the pauth registers in the qemu namespace and
document that accordingly.
>
> thanks
> -- PMM
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
next prev parent reply other threads:[~2023-03-13 11:18 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-03-10 10:31 [PATCH 00/11] tweaks and fixes for 8.0-rc1 (tests, plugins, docs) Alex Bennée
2023-03-10 10:31 ` [PATCH 01/11] tests/avocado: update AArch64 tests to Alpine 3.17.2 Alex Bennée
2023-03-10 10:31 ` [PATCH 02/11] tests/docker: all add DOCKER_BUILDKIT to RUNC environment Alex Bennée
2023-03-10 10:31 ` [PATCH 03/11] scripts/ci: add libslirp-devel to build-environment Alex Bennée
2023-03-10 10:31 ` [PATCH 04/11] scripts/ci: update gitlab-runner playbook to handle CentOS Alex Bennée
2023-03-10 10:31 ` [PATCH 05/11] gitlab: update centos-8-stream job Alex Bennée
2023-03-10 10:31 ` [PATCH 06/11] include/qemu: add documentation for memory callbacks Alex Bennée
2023-03-10 10:31 ` [PATCH 07/11] tcg: Clear plugin_mem_cbs on TB exit Alex Bennée
2023-03-10 17:39 ` Richard Henderson
2023-03-10 17:41 ` Richard Henderson
2023-03-10 17:56 ` Alex Bennée
2023-03-10 17:59 ` Richard Henderson
2023-03-10 10:31 ` [PATCH 08/11] tests/tcg: add some help output for running individual tests Alex Bennée
2023-03-10 10:31 ` [PATCH 09/11] tests/tcg: disable pauth for aarch64 gdb tests Alex Bennée
2023-03-10 17:44 ` Richard Henderson
2023-03-10 17:47 ` Peter Maydell
2023-03-10 18:00 ` Fabiano Rosas
2023-03-10 18:07 ` Peter Maydell
2023-03-10 18:15 ` Fabiano Rosas
2023-03-13 11:16 ` Luis Machado [this message]
2023-03-10 18:14 ` Alex Bennée
2023-03-13 11:22 ` Peter Maydell
2023-03-13 11:44 ` Luis Machado
2023-03-13 19:21 ` Richard Henderson
2023-03-13 21:35 ` Peter Maydell
2023-03-14 8:20 ` Luis Machado
2023-03-15 9:50 ` Luis Machado
2023-03-17 16:37 ` Peter Maydell
2023-03-17 16:55 ` Luis Machado
2023-03-17 17:07 ` Peter Maydell
2023-03-17 17:12 ` Luis Machado
2023-03-17 17:16 ` Luis Machado
2023-03-10 18:07 ` Richard Henderson
2023-03-10 10:31 ` [PATCH 10/11] include/exec: fix kerneldoc definition Alex Bennée
2023-03-10 12:38 ` Philippe Mathieu-Daudé
2023-03-13 17:00 ` Thomas Huth
2023-03-13 17:03 ` Peter Maydell
2023-03-13 17:14 ` Thomas Huth
2023-03-13 17:30 ` Peter Maydell
2023-03-13 18:08 ` Peter Maydell
2023-03-10 10:31 ` [PATCH 11/11] tests/avocado: don't use tags to define drive Alex Bennée
2023-03-10 11:04 ` David Woodhouse
2023-03-10 12:42 ` Philippe Mathieu-Daudé
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=0603036f-ac1c-3b04-4ea2-eb3967768df2@arm.com \
--to=luis.machado@arm.com \
--cc=alex.bennee@linaro.org \
--cc=bleal@redhat.com \
--cc=crosa@redhat.com \
--cc=david@redhat.com \
--cc=farosas@suse.de \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=peterx@redhat.com \
--cc=philmd@linaro.org \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=richard.henderson@linaro.org \
--cc=thuth@redhat.com \
--cc=wainersm@redhat.com \
/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 NNTP newsgroup(s).