All of lore.kernel.org
 help / color / mirror / Atom feed
From: Fabien Chouteau <chouteau@adacore.com>
To: Stefan Hajnoczi <stefanha@gmail.com>
Cc: "Lluís Vilanova" <vilanova@ac.upc.edu>,
	"Alexander Graf" <agraf@suse.de>,
	"qemu-devel@nongnu.org Developers" <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] GSoC mentor summit QEMU users session
Date: Thu, 03 Nov 2011 10:35:28 +0100	[thread overview]
Message-ID: <4EB26060.4060003@adacore.com> (raw)
In-Reply-To: <CAJSP0QX2Q2WpXETTSRvUjK4s_82=qYHvYBABCGzmd=LXuDLY1A@mail.gmail.com>

On 03/11/2011 08:44, Stefan Hajnoczi wrote:
> On Wed, Nov 2, 2011 at 5:39 PM, Fabien Chouteau <chouteau@adacore.com> wrote:
>> On 29/10/2011 15:52, Alexander Graf wrote:
>>> The RTEMS guys use QEMU to do coverage testing of their kernel code.
>>> They run their test-cases and see if all of their code and branches
>>> have been hit. Adacore seems to have a patches version of QEMU to
>>> provide an easily parsable log file for that sort of thing. Might be a
>>> good idea to consolidate upstream. Patches welcome :)
>>
>> That's right we do have a coverage analysis solution based on Qemu.
>> Execution traces generated by Qemu are analyzed by the GNATcoverage
>> tool to provide object, statement, decision or Modified
>> Condition/Decision coverage analysis.
>>
>> The main interest of Qemu is to provide execution traces without
>> code instrumentation.
>>
>> Alex, it is of course in our plans to submit patches to the upstream Qemu ;)
>>
>> I give you some pointers if you want to find more on GNATcoverage (technical stuff :)
>>
>>  * GNATcoverage is hosted on forge.open-do.org. You can checkout the
>>   repository with:
>>
>>     $ svn checkout svn://scm.forge.open-do.org/scmrepos/svn/couverture/trunk/couverture
>>
>>   From there, you have
>>     * the tool source tree in "tools"
>>     * a synthesis article in "publications" : 201005-erts2.pdf
>>
>>  * GNATcov's documentation attached to this email
>
> Thanks for mentioning Couverture.  Just yesterday I talked to neo_1987
> on IRC who is trying to get QEMU /w couverture to work for him.

Great, good to know!

>  We ran into a little bit of confusion because the -trace command-line
>  option is also used in upstream QEMU but for a different purpose
>  (http://wiki.qemu.org/Features/Tracing).
>

We had the same problem, the option is now -exec-trace. Checkout the
qemu-head branch of https://forge.open-do.org/anonscm/git/couverture-qemu/couverture-qemu.git

> I took a quick peak at the qemu-trace.[ch] from couverture and it
> looks along the lines of the instrumentation that others have been
> doing too.  I hope you have time to propose the coverage
> instrumentation for upstream QEMU.
>

I don't know much about other instrumentations in Qemu (pointers are
welcome :), but what we have in couverture-qemu is not trivial,
especially when it comes to MC/DC analysis. You should take a look at
201005-erts2.pdf if you want technical details.

-- 
Fabien Chouteau

  reply	other threads:[~2011-11-03  9:36 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 [this message]
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
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=4EB26060.4060003@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.