diff options
author | Frediano Ziglio <frediano.ziglio@citrix.com> | 2013-02-14 12:37:17 +0000 |
---|---|---|
committer | Keir Fraser <keir.xen@gmail.com> | 2013-02-21 16:28:22 +0000 |
commit | 922153cd375b0666e129ebe85c58224cf3aeec2d (patch) | |
tree | b022885c62723993036212fb4af1e8efcc09e20f /docs/misc | |
parent | eb459da88574d295152cdff20e67486b08c3066d (diff) | |
download | xen-922153cd375b0666e129ebe85c58224cf3aeec2d.tar.gz xen-922153cd375b0666e129ebe85c58224cf3aeec2d.tar.bz2 xen-922153cd375b0666e129ebe85c58224cf3aeec2d.zip |
gcov: Add documentation for coverage
Diffstat (limited to 'docs/misc')
-rw-r--r-- | docs/misc/coverage.markdown | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/docs/misc/coverage.markdown b/docs/misc/coverage.markdown new file mode 100644 index 0000000000..74af665cfe --- /dev/null +++ b/docs/misc/coverage.markdown @@ -0,0 +1,39 @@ +# Coverage support for Xen + +Coverare support allow you to get coverage information from Xen execution. +You can see how many times a line is executed. + +The compiler have specific options that enable the collection of these +information. Every basic block in the code will be instructed by the compiler +to compute these statistics. It should not be used in production as it slow +down your hypervisor. + +## Enable coverage + +Test coverage support can be turned on compiling Xen with coverage option set +to y. + +Something like: + cd xen + make coverage=y + +(or change your `Config.mk` file). + +## Extract coverage data + +The way GCC and other tools deal with coverage information is to use some files +created during build phase (.gcno) and some files produced by executing the +*program* (.gcda). The program in this case is Xen but Xen cannot write files +so the way you can use coverage from Xen is extract coverage data from Xen and +then split these information into files. + +To extract data you use a simple utility called `xencov`. Mainly `xencore` +allow you to do 3 operations: + +* `xencov read` extract data +* `xencov reset` reset all coverage counters +* `xencov read-reset` extract data and reset counters at the same time. + +Another utility (**TODO**) is used to split extracted data file into files +needed by userspace tools. + |