public inbox for libc-alpha@sourceware.org
 help / color / mirror / Atom feed
From: Florian Weimer <fweimer@redhat.com>
To: sellcey@cavium.com, libc-alpha@sourceware.org
Subject: Re: nptl/tst-eintr1.c test question
Date: Fri, 16 Dec 2016 07:46:00 -0000	[thread overview]
Message-ID: <d3f066a4-1d52-b4a9-db61-67262dcdd7a7@redhat.com> (raw)
In-Reply-To: <201612152302.uBFN2dkC010965@sellcey-lt.caveonetworks.com>

On 12/16/2016 12:02 AM, Steve Ellcey wrote:

> FYI: The failure I get is due to to many forks causing the make process(es) to
> abort:
>
> ../scripts/evaluate-test.sh nptl/tst-eintr1 $? false false > /home/ubuntu/sellcey/glibc-patched/obj-glibc64/nptl/tst-eintr1.test-result
> /bin/sh: 2: Cannot fork
> ../Rules:241: recipe for target '/home/ubuntu/sellcey/glibc-patched/obj-glibc64/nptl/tst-eintr1.out' failed
> make[2]: *** [/home/ubuntu/sellcey/glibc-patched/obj-glibc64/nptl/tst-eintr1.out] Error 2
> make[2]: Leaving directory '/home/ubuntu/sellcey/glibc-patched/src/glibc/nptl'
> Makefile:215: recipe for target 'nptl/tests' failed
> make[1]: *** [nptl/tests] Error 2
> make[1]: Leaving directory '/home/ubuntu/sellcey/glibc-patched/src/glibc'
> Makefile:9: recipe for target 'check' failed
> make: *** [check] Error 2

So the failure happens outside of the test harness.  This means we 
cannot intercept it.

Some kernel developers have suggested we should just retry the fork if 
we get EAGAIN (and do the same for thread creation).  But I don't think 
this is a good idea—we would either have to do it in glibc, or any shell 
on the planet.  It's also not clear how many attempts are are needed to 
cover up the race.

A few more details are available here:

   https://bugzilla.kernel.org/show_bug.cgi?id=154011

It may help to disable cgroups restrictions and avoid configuring low 
per-user process limits.  Or you might be observing a different issue, 
not related to what we saw earlier this year on Fedora builders.

In the end, the kernel's fork/clone implementation is buggy and has to 
be fixed.

Florian

  reply	other threads:[~2016-12-16  7:46 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-12-15 23:02 Steve Ellcey
2016-12-16  7:46 ` Florian Weimer [this message]
2016-12-16  8:06 ` Stefan Liebler

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=d3f066a4-1d52-b4a9-db61-67262dcdd7a7@redhat.com \
    --to=fweimer@redhat.com \
    --cc=libc-alpha@sourceware.org \
    --cc=sellcey@cavium.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).