qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Peter Maydell <peter.maydell@linaro.org>
To: Christopher Caulfield <ctcaulfield@gmail.com>
Cc: alexsmendez@live.com, QEMU Developers <qemu-devel@nongnu.org>
Subject: Re: QEMU on x64
Date: Fri, 30 Jul 2021 19:13:38 +0100	[thread overview]
Message-ID: <CAFEAcA9QexXsrXMHMQrS-aGNbA_4_G2CB+9KeRJqMEF5LQ84ig@mail.gmail.com> (raw)
In-Reply-To: <CAGu1Vjjot17roFD-YTWmQcDhhMD=Lzi3b3Q51cHNRnz+6JT_HQ@mail.gmail.com>

On Fri, 30 Jul 2021 at 19:05, Christopher Caulfield
<ctcaulfield@gmail.com> wrote:
> This is Christopher from the debugging experiences team at Microsoft focused on kernel debugging. I am reaching out with a few questions about QEMU on x64.
>
> Is it possible for the QEMU-x86-64 GDB Server to send the full set of x64 system registers (whether they are included in a separated system xml file or as part of the core registers xml file)?

Do you mean "is it possible for somebody to write code for
QEMU to make it do that", or "does QEMU do it today if you pass
it the right command line option" ? The answer to the former
is "yes", to the latter "no". (If you want the debugger to
be able to write to the system registers this might be a little
trickier, mostly in terms of "auditing the code to make sure this
can't confuse QEMU if you change some sysreg under its feet.".)

> e.g. System registers missing from i386-64bit.xml file

> DWORD64 IDTBase;
> DWORD64 IDTLimit;
> DWORD64 GDTBase;
> DWORD64 GDTLimit;
> DWORD SelLDT;
> SEG64_DESC_INFO SegLDT;
> DWORD SelTSS;
> SEG64_DESC_INFO SegTSS;
>
> How can I access x64 MSR registers by using the QEMU-x86-64 GDB server?
>
> #define MSR_EFER 0xc0000080 // extended function enable register

EFER is in the xml ("x64_efer") so should be already accessible.
For anything else you're going to need to write some code to
make it happen.

>is there any plan to support reading/writing to MSRs via QEMU-x86-64 GDB server?

Not that I know of. We'd be happy to review patches if you want to
write them.

thanks
-- PMM


  reply	other threads:[~2021-07-30 18:15 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-30 17:36 QEMU on x64 Christopher Caulfield
2021-07-30 18:13 ` Peter Maydell [this message]
2021-08-02 17:27   ` Alex Bennée
2021-08-03  1:34     ` Christopher Caulfield
2021-11-12 23:18       ` Christopher Caulfield
2021-08-02  9:05 ` Paolo Bonzini

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=CAFEAcA9QexXsrXMHMQrS-aGNbA_4_G2CB+9KeRJqMEF5LQ84ig@mail.gmail.com \
    --to=peter.maydell@linaro.org \
    --cc=alexsmendez@live.com \
    --cc=ctcaulfield@gmail.com \
    --cc=qemu-devel@nongnu.org \
    /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).