From: "Dr. David Alan Gilbert" <dave@treblig.org>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: "Markus Armbruster" <armbru@redhat.com>,
"Philippe Mathieu-Daudé" <philmd@linaro.org>,
qemu-devel@nongnu.org,
"Mark Cave-Ayland" <mark.cave-ayland@ilande.co.uk>,
"Daniel P . Berrangé" <berrange@redhat.com>,
qemu-ppc@nongnu.org, "Paolo Bonzini" <pbonzini@redhat.com>,
"Eduardo Habkost" <eduardo@habkost.net>
Subject: Re: Examining device state via monitor for debugging (was: [PATCH 0/2] hw/misc/mos6522: Do not open-code hmp_info_human_readable_text())
Date: Tue, 11 Jun 2024 12:23:49 +0000 [thread overview]
Message-ID: <ZmhB1RzXCGOU9nu4@gallifrey> (raw)
In-Reply-To: <CAFEAcA8F9fTVuTwNosLi7qcZ7ki-kARKJsnrp3-er41LbkpZiA@mail.gmail.com>
* Peter Maydell (peter.maydell@linaro.org) wrote:
> On Tue, 11 Jun 2024 at 06:50, Markus Armbruster <armbru@redhat.com> wrote:
> >
> > Philippe Mathieu-Daudé <philmd@linaro.org> writes:
> >
> > > Officialise the QMP command, use the existing
> > > hmp_info_human_readable_text() helper.
> >
> > I'm not sure "officialise" is a word :)
> >
> > Taking a step back... "info via" and its new QMP counterpart
> > x-query-mos6522-devices dump device state. I understand why examining
> > device state via monitor can be useful for debugging. However, we have
> > more than 2000 devices in the tree. Clearly, we don't want 2000 device
> > state queries. Not even 100. Could we have more generic means instead?
> >
> > We could use QOM (read-only) properties to expose device state.
> >
> > If we use one QOM property per "thing", examining device state becomes
> > quite tedious. Also, you'd have to stop the guest to get a consistent
> > view, and adding lots of QOM properties bloats the code.
> >
> > If we use a single, object-valued property for the entire state, we get
> > to define the objects in QAPI. Differently tedious, and bloats the
> > generated code.
>
> We already have a machine readable mandatory-for-every-device
> representation of its entire state -- it's the vmstate struct.
> Admittedly this is sometimes a bit different from the guest-facing
> view of a device and we don't machine-record the field names...
vmstate might not contain everything needed for debug; devices
do a lot of fiddling to create a consistent vmstate, and there may
be more that someone debugging wants (e.g. fd's or host memory addresses).
It's also hopelessly cryptic.
From an HMP point, a 'info debug <DEVICENAME>' seems good to me,
possibly with some options as to whether to recurse or perhaps
add flags to 'info qtree' to also call it.
Dave
> -- PMM
--
-----Open up your eyes, open up your mind, open up your code -------
/ Dr. David Alan Gilbert | Running GNU/Linux | Happy \
\ dave @ treblig.org | | In Hex /
\ _________________________|_____ http://www.treblig.org |_______/
prev parent reply other threads:[~2024-06-11 12:24 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-10 15:07 [PATCH 0/2] hw/misc/mos6522: Do not open-code hmp_info_human_readable_text() Philippe Mathieu-Daudé
2024-06-10 15:07 ` [PATCH 1/2] hw/misc/mos6522: Expose x-query-mos6522-devices QMP command Philippe Mathieu-Daudé
2024-06-10 17:08 ` Daniel P. Berrangé
2024-06-11 5:36 ` Markus Armbruster
2024-06-10 15:07 ` [PATCH 2/2] hw/misc/mos6522: Do not open-code hmp_info_human_readable_text() Philippe Mathieu-Daudé
2024-06-10 17:09 ` Daniel P. Berrangé
2024-06-11 5:49 ` Examining device state via monitor for debugging (was: [PATCH 0/2] hw/misc/mos6522: Do not open-code hmp_info_human_readable_text()) Markus Armbruster
2024-06-11 6:09 ` Examining device state via monitor for debugging Mark Cave-Ayland
2024-06-11 6:58 ` Manos Pitsidianakis
2024-06-11 8:06 ` Mark Cave-Ayland
2024-06-11 7:57 ` Examining device state via monitor for debugging (was: [PATCH 0/2] hw/misc/mos6522: Do not open-code hmp_info_human_readable_text()) Daniel P. Berrangé
2024-06-11 8:13 ` Examining device state via monitor for debugging Mark Cave-Ayland
2024-06-11 8:46 ` Daniel P. Berrangé
2024-06-11 8:30 ` Examining device state via monitor for debugging (was: [PATCH 0/2] hw/misc/mos6522: Do not open-code hmp_info_human_readable_text()) Peter Maydell
2024-06-11 12:23 ` Dr. David Alan Gilbert [this message]
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=ZmhB1RzXCGOU9nu4@gallifrey \
--to=dave@treblig.org \
--cc=armbru@redhat.com \
--cc=berrange@redhat.com \
--cc=eduardo@habkost.net \
--cc=mark.cave-ayland@ilande.co.uk \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=philmd@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.