Bug#554218: perl: FTBFS on hppa: Thread creation failed

Carlos O'Donell carlos at systemhalted.org
Tue Nov 3 21:15:06 UTC 2009


On Tue, Nov 3, 2009 at 3:36 PM, Niko Tyni <ntyni at debian.org> wrote:
> Package: perl
> Version: 5.10.1-6
> Severity: serious
>
> perl/5.10.1-6 failed to build on paer, see
>
>  https://buildd.debian.org/fetch.cgi?pkg=perl&arch=hppa&ver=5.10.1-6&stamp=1256782011&file=log&as=raw
>
> 5.10.1-5 built OK, and as there were no related source changes in -6,
> I assume the libc NPTL switch is the culprit.
>
> Cc'ing the debian-hppa list. Could somebody please look into this?
> I don't know if perl needs to be recompiled against libc6 2.10 first or
> if it shows up with the system perl too.
>
> It should be enough to just run 'cd ext/threads-shared && perl t/stress.t'
> but I don't quite have the heart to try it out on paer and its chroot
> still has libc6 2.9 anyway.
>
>  Thread creation failed: pthread_create returned 11 at ../ext/threads-shared/t/stress.t line 77.
>  Thread creation failed: pthread_create returned 11 at ../ext/threads-shared/t/stress.t line 77.
>  Thread creation failed: pthread_create returned 11 at ../ext/threads-shared/t/stress.t line 77.
>  Thread creation failed: pthread_create returned 11 at ../ext/threads-shared/t/stress.t line 77.
>  Thread creation failed: pthread_create returned 11 at ../ext/threads-shared/t/stress.t line 77.
>  Thread creation failed: pthread_create returned 11 at ../ext/threads-shared/t/stress.t line 77.
>  Thread creation failed: pthread_create returned 11 at ../ext/threads-shared/t/stress.t line 77.
>  Thread creation failed: pthread_create returned 11 at ../ext/threads-shared/t/stress.t line 77.
>  Thread creation failed: pthread_create returned 11 at ../ext/threads-shared/t/stress.t line 77.
>  Thread creation failed: pthread_create returned 11 at ../ext/threads-shared/t/stress.t line 77.
>  Thread creation failed: pthread_create returned 11 at ../ext/threads-shared/t/stress.t line 77.
>  Thread creation failed: pthread_create returned 11 at ../ext/threads-shared/t/stress.t line 77.
>  Thread creation failed: pthread_create returned 11 at ../ext/threads-shared/t/stress.t line 77.
>  # Warning: 13 threads failed
>  # Note: errno 12 = ENOMEM
>  # Test failed: 37 threads timed out
>  ext/threads-shared/t/stress...................................FAILED at test 1

This is a bug in the perl test case.

The error number 11 is EAGAIN, which means it needs to retry the
thread creation.

POSIX says:
~~~
[EAGAIN]
    The system lacked the necessary resources to create another
thread, or the system-imposed limit on the total number of threads in
a process {PTHREAD_THREADS_MAX} would be exceeded.
~~~

There are several code paths during thread creation that may return
EAGAIN, and the testsuite should handle that.

Cheers,
Carlos.






More information about the Perl-maintainers mailing list