Bug#761596: autopkgtest: overrides default SIGINT handler
Niko Tyni
ntyni at debian.org
Sun Sep 14 21:11:41 UTC 2014
Package: autopkgtest
Version: 3.5
Tests run under adt-run seem to have their default SIGINT handler
overridden. This is breaking at least libevent-rpc-perl, where
t/04.cnct-auth-ssl-verifypeer-noca.t is killing a process with SIGINT
and then hangs in 'wait' because the process didn't terminate.
Consider this test case:
#!/usr/bin/perl -wl
use strict;
# $SIG{INT} = 'DEFAULT';
$| = 1; # unbuffer output
my $pid = fork;
if ($pid) { # parent
sleep 1;
print "P: killing";
kill 2 => $pid;
print "P: waiting";
wait;
print "P: done";
} else { # kid
print "K: sleeping";
sleep;
print "K: slept";
}
This hangs for me in adt-run with schroot at "P: waiting".
If I uncomment the $SIG{INT} line, it gets to "P: done" as expected.
SIGQUIT seems to be similarly blocked.
Is this intentional and/or fixable?
--
Niko Tyni ntyni at debian.org
More information about the autopkgtest-devel
mailing list