tests: VM test script: Copy gcov data if present
If there's code coverage analysis data, copy it out of the VM to be able to analyse it later. Also add a description to the README file about how to use it. Signed-hostap: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
f7579502a6
commit
667a158d08
2 changed files with 30 additions and 0 deletions
|
@ -17,3 +17,28 @@ vm-run.sh script). If you want valgrind, also increase the memory size.
|
|||
Now you can run the vm-run.sh script and it will execute the tests using
|
||||
your system's root filesystem (read-only) inside the VM. The options you
|
||||
give it are passed through to run-all.sh, see there.
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
Code Coverage Analysis
|
||||
|
||||
In order to do code coverage analysis, reconfigure the kernel to include
|
||||
|
||||
CONFIG_GCOV_KERNEL=y
|
||||
CONFIG_GCOV_PROFILE_ALL=y
|
||||
|
||||
Note that for gcc 4.7, kernel version 3.13-rc1 or higher is required.
|
||||
|
||||
The scripts inside the VM will automatically copy the gcov data out of the
|
||||
VM into the logs directory. To post-process this data, you'll want to use
|
||||
lcov and run
|
||||
|
||||
cd /tmp/hwsim-test-logs/<timestamp>
|
||||
lcov -c -d gcov/ > gcov/data
|
||||
genhtml -o html/ gcov/data
|
||||
|
||||
Then open html/index.html in your browser.
|
||||
|
||||
Note that in this case you need to keep your build and source directories
|
||||
across the test run (otherwise, it's safe to only keep the kernel image.)
|
||||
|
|
|
@ -68,6 +68,11 @@ else
|
|||
|
||||
cd $TESTDIR
|
||||
./run-all.sh $ARGS >/dev/ttyS0 2>&1
|
||||
if test -d /sys/kernel/debug/gcov ; then
|
||||
cp -ar /sys/kernel/debug/gcov /tmp/logs/
|
||||
# these are broken as they're updated while being read ...
|
||||
find /tmp/logs/gcov/ -wholename '*kernel/gcov/*' -print0 | xargs -0 rm
|
||||
fi
|
||||
#bash </dev/ttyS0 >/dev/ttyS0 2>&1
|
||||
fi
|
||||
|
||||
|
|
Loading…
Reference in a new issue