Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.debian.bugs.dist > #1020697

Bug#966692: stunnel4: FTBFS because of test hang

From Peter Pentchev <roam@ringlet.net>
Newsgroups linux.debian.bugs.dist
Subject Bug#966692: stunnel4: FTBFS because of test hang
Date 2020-08-05 23:40 +0200
Message-ID <AAziF-1RJ-5@gated-at.bofh.it> (permalink)
References (4 earlier) <AAwuu-ae-1@gated-at.bofh.it> <Az9JE-7hn-3@gated-at.bofh.it> <AAyFX-1oZ-1@gated-at.bofh.it> <Az9JE-7hn-3@gated-at.bofh.it> <AAyFX-1oZ-1@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


[Multipart message — attachments visible in raw view] - view raw

On Wed, Aug 05, 2020 at 10:52:31PM +0200, Michał Mirosław wrote:
> On Wed, Aug 05, 2020 at 09:28:12PM +0300, Peter Pentchev wrote:
> > On Wed, Aug 05, 2020 at 08:01:53PM +0200, Michał Mirosław wrote:
> > > On Sun, Aug 02, 2020 at 05:34:40PM +0300, Peter Pentchev wrote:
> > > > On Sun, Aug 02, 2020 at 02:02:22AM +0200, Michał Mirosław wrote:
> > > [...]
> > > > --- a/debian/tests/runtime
> > > > +++ b/debian/tests/runtime
> > > > @@ -432,6 +432,7 @@ MAIN:
> > > >  
> > > >  				if (!defined $line) {
> > > >  					$eof->send($got_version);
> > > > +					undef $f_out;
> > > >  				} elsif (!$got_version) {
> > > >  					if ($line =~ m{^
> > > >  						stunnel \s+
> > > 
> > > I believe $f_out will not be defined here, as it only gets set after
> > > sub{} is created. Perl confirms this:
> > > 
> > > $ TEST_STUNNEL=src/stunnel strace -f -o /tmp/log debian/tests/runtime
> > > Global symbol "$f_out" requires explicit package name (did you forget to declare "my $f_out"?) at debian/tests/runtime line 435.
> > > Execution of debian/tests/runtime aborted due to compilation errors.
> > 
> > Of course you're right. Sorry about that! That's what I get for writing
> > a patch three minutes before I have to head out and never remembering to
> > actually test it later :(
> > 
> > How about the attached one?
[snip]
> 
> This stops the endless readings of EOF, but:
> 
> 1. the FD gets leaked (shouldn't matter much, though)
> 2. the test hangs anyway
> 
> Using print-debugging, I see that it stops at wait_for_child line just
> after printing the version. It seems that something is reaping the child
> before the main thread has a chance to wait for it.

OK, so the only thing that comes to my mind now is that you may be
hitting a crazy, crazy race between register_child() and child_reaper(),
and I say "a crazy, crazy race", because the test has to (apparently
reproducibly) receive the CHLD signal exactly between the check and
the creation in register_child()'s first "$children{...} //= ...cv"
statement.

Can you apply the following patch and show me the output of running
the test?

G'luck,
Peter

-- 
Peter Pentchev  roam@ringlet.net roam@debian.org pp@storpool.com
PGP key:        http://people.FreeBSD.org/~roam/roam.key.asc
Key fingerprint 2EE7 A7A5 17FC 124C F115  C354 651E EFB0 2527 DF13

Back to linux.debian.bugs.dist | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Bug#966692: stunnel4: FTBFS because of test hang Peter Pentchev <roam@ringlet.net> - 2020-08-05 20:40 +0200
  Bug#966692: stunnel4: FTBFS because of test hang Michał Mirosław <mirq-linux@rere.qmqm.pl> - 2020-08-05 23:00 +0200
    Bug#966692: stunnel4: FTBFS because of test hang Peter Pentchev <roam@ringlet.net> - 2020-08-05 23:40 +0200
      Bug#966692: stunnel4: FTBFS because of test hang Michał Mirosław <mirq-linux@rere.qmqm.pl> - 2020-08-06 03:20 +0200
        Bug#966692: stunnel4: FTBFS because of test hang Peter Pentchev <roam@ringlet.net> - 2020-08-06 08:10 +0200

csiph-web