[PATCH v2 2/2] ioctl console test v2

Bran S archsbran at gmail.com
Tue Mar 17 16:41:38 UTC 2020

On Mon, 9 Mar 2020 at 19:19, Eugene Syromiatnikov <esyr at redhat.com> wrote:
> On Mon, Mar 09, 2020 at 07:06:49PM +0530, Bran S wrote:
> > I am interested in the Comprehensive test suite project.
> I'd suggest building strace with LCOV with different kernel headers
> on different arches (./configure --enable-code-coverage && make check &&
> make code-coverage-capture) and look at parts of the code (and branches)
> that are not covered by tests.  Other possibility is to check out
> codecov[1], but it's vaguely representative (it's built against rather
> old kernel and only on x86_64).
> [1] https://codecov.io/gh/strace/strace

On running `make code-coverage-capture` I am getting below error.
lcov  --directory . --capture --output-file
"strace-" --test-name
"strace_5_5_0_67_269b" --no-checksum --compat-libtool  --rc
lcov_branch_coverage=1 --gcov-tool "gcov"
Capturing coverage data from .
Found gcov version: 8.2.1
Using intermediate gcov format
Scanning . for .gcda files ...
Found 313 data files in .
Processing libmpers_m32_a-fetch_struct_stat64.gcda
geninfo: ERROR: GCOV failed for
make: *** [Makefile:9957: code-coverage-capture] Error 29

Searching about I found a suggestion to make sure that the gcc and
gcov versions are same.
My gcc and gcov version are same i.e. gcc (GCC) 8.2.1 20180801 and
gcov (GCC) 8.2.1 20180801 respectively.
Any ideas ?

In the project "Comprehensive test suite" one would need to go through
the files at codecov and find out untested portion of the code and
then write tests to test those.
For example: bpf.c is 61% covered, within bpf.c lines 126 and 127 are
untested. So the task at hand would be to write tests so that those
lines are executed.
Is my understanding correct ? Please correct me where I am wrong and
please point out what I have missed in understanding.

More information about the Strace-devel mailing list