From: Anthony Liguori <anthony@codemonkey.ws>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: "Blue Swirl" <blauwirbel@gmail.com>,
"Zhi Yong Wu" <zwu.kernel@gmail.com>,
"Lluís Vilanova" <vilanova@ac.upc.edu>,
qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH v2 0/5] backdoor: lightweight guest-to-QEMU backdoor channel
Date: Wed, 07 Dec 2011 12:54:23 -0600 [thread overview]
Message-ID: <4EDFB65F.902@codemonkey.ws> (raw)
In-Reply-To: <CAFEAcA8fWO4V87HOt1NdkC2-yqDFEKjv_j7BfW-nhB=As-R30A@mail.gmail.com>
On 12/07/2011 12:51 PM, Peter Maydell wrote:
> 2011/12/7 Lluís Vilanova<vilanova@ac.upc.edu>:
>> Anthony Liguori writes:
>> [...]
>>> Why should this analyzer live outside of QEMU in the first place? I fail to see
>>> the rationale for that other than not wanting to do the work of making it
>>> suitable for upstream consumption.
>>
>> For the same reason that SystemTap lets you add user-provided code into the
>> trace hooks, you never know what the user actually wants. The difference is that
>> when dealing with traces that require a high bandwidth, different people may be
>> interested on analyzing different events and under different conditions, and
>> having a JIT in QEMU comes in handy to optimize the traces. This includes the
>> generation of extra tracing code at translation time (e.g., I generate checks in
>> TCG to establish when I want to trace a specific event, and someone else may
>> just want to increment a counter using TCG code).
>>
>> Guest trace instrumentation turns QEMU into a highly-performant tool for dynamic
>> binary instrumentation, with all the benefits that stem from QEMU (support for a
>> myriad of target architectures, as well as support for both full-system and
>> user-level applications).
>
> I think this *is* useful. However I also think that it *is* effectively
> defining an API for people writing this hook code, and as such we ought
> to do it properly if we're going to do it. (ie nail down what we are
> providing for hook authors and don't let them grub around in the internals
> otherwise).
I strongly suspect that you could define interfaces in QEMU such that you could
do most of what you want without needing to link any code against QEMU itself.
This is probably a case where LUA integration might make a lot of sense.
Regards,
Anthony Liguori
>
> -- PMM
>
>
next prev parent reply other threads:[~2011-12-07 18:54 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-12-05 22:22 [Qemu-devel] [PATCH v2 0/5] backdoor: lightweight guest-to-QEMU backdoor channel Lluís Vilanova
2011-12-05 22:22 ` [Qemu-devel] [PATCH v2 1/5] backdoor: Add documentation Lluís Vilanova
2011-12-06 22:36 ` Peter Maydell
2011-12-06 22:51 ` Anthony Liguori
2011-12-06 22:50 ` Anthony Liguori
2011-12-05 22:22 ` [Qemu-devel] [PATCH v2 2/5] backdoor: Add build infrastructure Lluís Vilanova
2011-12-05 22:22 ` [Qemu-devel] [PATCH v2 3/5] backdoor: [*-user] Add QEMU-side proxy to "libbackdoor.a" Lluís Vilanova
2011-12-05 22:23 ` [Qemu-devel] [PATCH v2 4/5] backdoor: [softmmu] " Lluís Vilanova
2011-12-06 19:55 ` Anthony Liguori
2011-12-06 22:30 ` Lluís Vilanova
2011-12-06 22:35 ` Anthony Liguori
2011-12-06 22:37 ` Peter Maydell
2011-12-07 8:21 ` [Qemu-devel] Insane virtio-serial semantics (was: [PATCH v2 4/5] backdoor: [softmmu] Add QEMU-side proxy to "libbackdoor.a") Markus Armbruster
2011-12-07 13:49 ` [Qemu-devel] Insane virtio-serial semantics Anthony Liguori
2011-12-07 19:44 ` Michael Roth
2011-12-07 19:53 ` Anthony Liguori
2011-12-08 10:11 ` Markus Armbruster
2011-12-08 14:37 ` Anthony Liguori
2011-12-06 22:39 ` [Qemu-devel] [PATCH v2 4/5] backdoor: [softmmu] Add QEMU-side proxy to "libbackdoor.a" Lluís Vilanova
2011-12-05 22:23 ` [Qemu-devel] [PATCH v2 5/5] backdoor: Add guest-side library Lluís Vilanova
2011-12-06 22:52 ` [Qemu-devel] [PATCH v2 0/5] backdoor: lightweight guest-to-QEMU backdoor channel Anthony Liguori
2011-12-07 12:21 ` Lluís Vilanova
2011-12-07 13:55 ` Anthony Liguori
2011-12-07 15:23 ` Lluís Vilanova
2011-12-07 15:48 ` Anthony Liguori
2011-12-07 16:59 ` Lluís Vilanova
2011-12-07 17:48 ` Anthony Liguori
2011-12-07 18:35 ` Lluís Vilanova
2011-12-07 18:51 ` Peter Maydell
2011-12-07 18:54 ` Anthony Liguori [this message]
2011-12-07 20:13 ` Lluís Vilanova
2011-12-07 22:03 ` Lluís Vilanova
2011-12-08 20:45 ` Blue Swirl
2011-12-08 14:05 ` Stefan Hajnoczi
2011-12-08 18:57 ` Lluís Vilanova
2011-12-08 20:57 ` Blue Swirl
2011-12-08 22:16 ` Lluís Vilanova
2011-12-09 11:23 ` Stefan Hajnoczi
2011-12-09 20:55 ` Lluís Vilanova
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=4EDFB65F.902@codemonkey.ws \
--to=anthony@codemonkey.ws \
--cc=blauwirbel@gmail.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=vilanova@ac.upc.edu \
--cc=zwu.kernel@gmail.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).