On Thu, Nov 21, 2013 at 12:03:53PM +0100, Stefan Hajnoczi wrote:
> GLib uses abort(3) to exit failed test cases.  As a result, the pid file and
> UNIX domain sockets for a running test are leaked upon failure.
> 
> Since abort(3) does not call atexit(3) handler functions, we could set up a
> SIGABRT handler that performs cleanup.  But there are other conditions where
> processes die, like SIGSEGV or SIGBUS.
> 
> Let's unlink pid files and UNIX domain sockets as soon as the QEMU process has
> initialized and connections have been made.  This eliminates the possibility 
> of
> leaking these files.
> 
> Note that the actual QEMU process is orphaned when a test case fails.  This
> series does not fix that problem.
> 
> Stefan Hajnoczi (2):
>   qtest: unlink QEMU pid file after startup
>   qtest: unlink UNIX domain sockets after connecting
> 
>  tests/libqtest.c | 45 +++++++++++++++++++++++----------------------
>  1 file changed, 23 insertions(+), 22 deletions(-)

Ping

Reply via email to