[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 0/5] backdoor: lightweight guest-to-QEMU back
From: |
Lluís Vilanova |
Subject: |
Re: [Qemu-devel] [PATCH v2 0/5] backdoor: lightweight guest-to-QEMU backdoor channel |
Date: |
Wed, 07 Dec 2011 23:03:50 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.0.92 (gnu/linux) |
Lluís Vilanova writes:
[...]
> From my experience, these are the basics I need:
> * Decide what to do when an event is translated (by default - no
> instrumentation
> -, it just generates a TCG call to an execution-time tracing routine).
> This includes:
> * Deciding whether to generate the TCG call to the execution-time tracing
> routine.
> * Access to generating other arbitrary TCG code (the API is pretty stable,
> but
> headers depend on target-specific defines).
> This could also include generating code like incrementing a counter (e.g.,
> when counting instructions), instead of calling the execution-time tracing
> routine.
> My library actually hides this from the user, who just provides conditions
> to establish whether to trace the event. Then the library automatically
> establishes whether it's best to evaluate each condition at translation
> time, using TCG code or when the execution-time tracing routine is
> invoked.
> * [still don't have it] Access to a map between target-specific abstractions
> (mainly register names) and TCG values (e.g., to generate code that gets
> or
> sets the value of a well-known register).
> * Decide what to do when an event is executed, including calls to
> execution-time
> event tracing routines generated by TCG code (by default, it just calls the
> tracing backend).
> This includes:
> * Arbitrary user-provided code (the analysis itself when not inlined with
> TCG).
> * [still don't have it] Access to get and set the values of target-specific
> abstractions (mainly registers).
> * Add a per-vCPU opaque pointer with data private to the analyzer code.
I forgot to add that another nice addition is to let the translation-time
user-code specify which global registers might be accessed in the execution-time
user code (thus the translation can generate TCG_CALL_CONST by default).
Right now, it is established at compile time by having two event properties; one
with and one without TCG_CALL_CONST-enabled TCG helpers.
Lluis
--
"And it's much the same thing with knowledge, for whenever you learn
something new, the whole world becomes that much richer."
-- The Princess of Pure Reason, as told by Norton Juster in The Phantom
Tollbooth
- Re: [Qemu-devel] [PATCH v2 0/5] backdoor: lightweight guest-to-QEMU backdoor channel, (continued)
- Re: [Qemu-devel] [PATCH v2 0/5] backdoor: lightweight guest-to-QEMU backdoor channel, Lluís Vilanova, 2011/12/07
- Re: [Qemu-devel] [PATCH v2 0/5] backdoor: lightweight guest-to-QEMU backdoor channel, Anthony Liguori, 2011/12/07
- Re: [Qemu-devel] [PATCH v2 0/5] backdoor: lightweight guest-to-QEMU backdoor channel, Lluís Vilanova, 2011/12/07
- Re: [Qemu-devel] [PATCH v2 0/5] backdoor: lightweight guest-to-QEMU backdoor channel, Anthony Liguori, 2011/12/07
- Re: [Qemu-devel] [PATCH v2 0/5] backdoor: lightweight guest-to-QEMU backdoor channel, Lluís Vilanova, 2011/12/07
- Re: [Qemu-devel] [PATCH v2 0/5] backdoor: lightweight guest-to-QEMU backdoor channel, Anthony Liguori, 2011/12/07
- Re: [Qemu-devel] [PATCH v2 0/5] backdoor: lightweight guest-to-QEMU backdoor channel, Lluís Vilanova, 2011/12/07
- Re: [Qemu-devel] [PATCH v2 0/5] backdoor: lightweight guest-to-QEMU backdoor channel, Peter Maydell, 2011/12/07
- Re: [Qemu-devel] [PATCH v2 0/5] backdoor: lightweight guest-to-QEMU backdoor channel, Anthony Liguori, 2011/12/07
- Re: [Qemu-devel] [PATCH v2 0/5] backdoor: lightweight guest-to-QEMU backdoor channel, Lluís Vilanova, 2011/12/07
- Re: [Qemu-devel] [PATCH v2 0/5] backdoor: lightweight guest-to-QEMU backdoor channel,
Lluís Vilanova <=
- Re: [Qemu-devel] [PATCH v2 0/5] backdoor: lightweight guest-to-QEMU backdoor channel, Blue Swirl, 2011/12/08
Re: [Qemu-devel] [PATCH v2 0/5] backdoor: lightweight guest-to-QEMU backdoor channel, Stefan Hajnoczi, 2011/12/08