From: Fabien Chouteau <chouteau@adacore.com>
To: "Stefan Hajnoczi" <stefanha@gmail.com>,
"Alexander Graf" <agraf@suse.de>,
"qemu-devel@nongnu.org Developers" <qemu-devel@nongnu.org>,
"Lluís Vilanova" <vilanova@ac.upc.edu>
Subject: Re: [Qemu-devel] GSoC mentor summit QEMU users session
Date: Mon, 07 Nov 2011 14:51:36 +0100 [thread overview]
Message-ID: <4EB7E268.5090000@adacore.com> (raw)
In-Reply-To: <874nygf8x3.fsf@ginnungagap.bsc.es>
On 07/11/2011 12:50, Lluís Vilanova wrote:
> Fabien Chouteau writes:
>
>> On 04/11/2011 19:45, Lluís Vilanova wrote:
>>> I've only had a brief look into the changes, but I think the mechanism I
>>> implemented has a cleaner fit into QEMU, thanks to previous feedback from this
>>> list.
>
>> I don't know about your implementation, can you give more information?
>> What type of analysis is supported (object, statement, decision, MC/DC)?
>> Which language? And maybe you can post a link to your repository.
>
> I'll be posting the patches once QEMU opens up for new commits other than
> release stabilization. If this is too far away in time, please tell me.
>
>
>>> It explicitly separates the tracing mechanism (in QEMU itself) from the specific
>>> trace analysis (which resides in a separate library specified by the user at
>>> compile time, where most of couverture would go).
>
>> As I understand everything is compiled within Qemu, right?
>
>> GNATcoverage seems even more separate. We use Qemu to generate an
>> execution trace file and the coverage analysis tool is a totally
>> separate program. You can add support for another language or implement
>> your own coverage tool without recompiling (redistribute) Qemu.
>
> The process is basically:
>
> * Add trace events that can work during TCG code generation (e.g., start TB,
> start instruction fetch, memory access, etc.)
>
> * Let the user select which trace events to instrument, including both "regular"
> trace events and TCG trace events (thus you instrument at both execution and
> translation time).
>
> * The user provides her own implementation of the instrumented trace events.
>
> As you can see, this system only gives you the hooks were code can be
> inserted. Whether your hooks implement everything inside QEMU or just write a
> trace file, that is up to you.
>
Interesting, what kind of analysis do you plan to perform with this?
> [...]
>>>
>>> On the other hand, I have a complementary set of events, so we can definitely
>>> join the efforts on that side (e.g., I haven't yet went into the trouble of
>>> adding the begin/end TB or branch events).
>
>> I don't know what do you mean by events, but we sure can join efforts on
>> coverage with Qemu.
>
> Well, my target is not code coverage, but generating events that can be used for
> architecture simulation. In any case, there will surely be trace events that
> we're both interested in (e.g., TB start and branch).
>
OK I thought you were talking about coverage. I'm not sure if and how we
can implement coverage using your events but for the moment both
features can cohabit.
--
Fabien Chouteau
next prev parent reply other threads:[~2011-11-07 13:51 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-10-29 13:52 [Qemu-devel] GSoC mentor summit QEMU users session Alexander Graf
2011-10-31 13:12 ` Peter Maydell
2011-11-01 0:08 ` Alexander Graf
2011-11-01 1:35 ` Peter Maydell
2011-11-01 4:29 ` Alexander Graf
2011-11-01 10:05 ` Gerd Hoffmann
2011-11-01 23:11 ` Chris Johns
2011-11-02 17:44 ` Fabien Chouteau
2011-11-02 18:17 ` Jan Kiszka
2011-11-02 18:29 ` Anthony Liguori
2011-11-02 18:34 ` Alexander Graf
2011-11-02 18:46 ` Jan Kiszka
2011-11-02 18:47 ` Alexander Graf
2011-11-02 19:07 ` Peter Maydell
2011-11-02 19:27 ` Alexander Graf
2011-11-02 19:35 ` Anthony Liguori
2011-11-02 20:24 ` Blue Swirl
2011-11-02 20:42 ` Anthony Liguori
2011-11-03 7:34 ` Markus Armbruster
2011-11-03 7:46 ` Markus Armbruster
2011-11-03 8:36 ` Andreas Färber
2011-11-04 15:47 ` Alexander Graf
2011-11-02 18:50 ` Anthony Liguori
2011-11-02 18:52 ` Jan Kiszka
2011-11-02 18:51 ` Anthony Liguori
2011-11-03 7:38 ` Stefan Hajnoczi
2011-11-03 7:44 ` Markus Armbruster
2011-11-01 14:28 ` Andreas Färber
2011-11-01 14:50 ` Anthony Liguori
2011-11-02 17:39 ` Fabien Chouteau
2011-11-03 7:44 ` Stefan Hajnoczi
2011-11-03 9:35 ` Fabien Chouteau
2011-11-04 8:36 ` Stefan Hajnoczi
2011-11-04 9:53 ` Fabien Chouteau
2011-11-04 12:04 ` Stefan Hajnoczi
2011-11-04 14:36 ` Fabien Chouteau
2011-11-04 18:45 ` Lluís Vilanova
2011-11-07 10:16 ` Fabien Chouteau
2011-11-07 11:50 ` Lluís Vilanova
2011-11-07 13:51 ` Fabien Chouteau [this message]
2011-11-07 14:17 ` 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=4EB7E268.5090000@adacore.com \
--to=chouteau@adacore.com \
--cc=agraf@suse.de \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@gmail.com \
--cc=vilanova@ac.upc.edu \
/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.