Am 28.01.2013 19:15, schrieb Eduardo Habkost:
> When running "make check" with gcov enabled, we get the following
> message:
> 
>    hw/tmp105.gcda:cannot open data file, assuming not executed
> 
> The problem happens because:
> 
>  * tmp105-test exits before QEMU exits, because waitpid() at
>    qtest_quit() fails;
>  * waitpid() fails because there's another process already
>    waiting for the QEMU process;
>  * The process that is already waiting for QEMU is the child created by
>    qtest_init() to run system();
>  * qtest_quit() is incorrectly waiting for the QEMU PID directly instead
>    of the child created by qtest_init().
> 
> This fixes the problem by sending SIGTERM to QEMU, but waiting for the
> child process created by qtest_init() (that exits immediately after QEMU
> exits).
> 
> Reported-by: Andreas Färber <afaer...@suse.de>
> Signed-off-by: Eduardo Habkost <ehabk...@redhat.com>

Tested-by: Andreas Färber <afaer...@suse.de>

Thanks a lot for the quick analysis and fix!

Andreas

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg

Reply via email to