Bug#727009: FTBFS on kfreebsd-i386: FAIL: test-pangocairo-threads

Steven Chamberlain steven at pyro.eu.org
Wed Nov 6 20:57:28 UTC 2013


Hi,

On 06/11/13 09:09, Emilio Pozuelo Monfort wrote:
> Any news here? This is blocking pango's migration and the harfbuzz transition.

I found this is caused by 'make' raising RLIMIT_STACK from the default
setting of 8192k to its maximum, 65536k.  It is reproducible from the
shell by setting "ulimit -s 65536" before running the test program directly.

I don't know if this is an eglibc bug or expected behaviour (and
therefore a 'make' bug) so I am Cc'ing Petr.


In the successful case, creation of each thread involves an mmap of len
0x800000 (8192k) by the parent:

> pango1.0-1.36.0/debian/build/shared/tests$ ktrace -di -- ./test-pangocairo-threads

>  52374 100417 lt-test-pangocairo- CALL  thr_new(0xffffc2ec,0x34)
>  52374 100417 lt-test-pangocairo- RET   thr_new 0
>  52374 100417 lt-test-pangocairo- CALL  mmap(0,0x800000,0x7<PROT_READ|PROT_WRITE|PROT_EXEC>,0x1002<MAP_ANON|MAP_TYPE|MAP_PRIVATE>,0xffffffff,0,0)
>  52374 100417 lt-test-pangocairo- RET   mmap 693108736/0x29500000
>  52374 100417 lt-test-pangocairo- CALL  mprotect(0x29500000,0x1000,0<PROT_NONE>)
>  52374 100417 lt-test-pangocairo- RET   mprotect 0

The failure case (when invoked by 'make') involves an mmap of len
0x4000000 instead (65536k) as each thread is created:

> pango1.0-1.36.0/debian/build/shared/tests$ ktrace -di -- make check

>  51903 100859 lt-test-pangocairo- CALL  thr_new(0xffffc10c,0x34)
>  51903 100859 lt-test-pangocairo- RET   thr_new 0
>  51903 100859 lt-test-pangocairo- CALL  mmap(0,0x4000000,0x7<PROT_READ|PROT_WRITE|PROT_EXEC>,0x1002<MAP_ANON|MAP_TYPE|MAP_PRIVATE>,0xffffffff,0,0)
>  51903 100859 lt-test-pangocairo- RET   mmap 751828992/0x2cd00000
>  51903 100859 lt-test-pangocairo- CALL  mprotect(0x2cd00000,0x1000,0<PROT_NONE>)
>  51903 100859 lt-test-pangocairo- RET   mprotect 0

On kfreebsd-i386 only, this reproducibly fails at thread '53' of 100:

>  51903 100859 lt-test-pangocairo- RET   thr_new 0
>  51903 100859 lt-test-pangocairo- CALL  mmap(0,0x4000000,0x7<PROT_READ|PROT_WRITE|PROT_EXEC>,0x1002<MAP_ANON|MAP_TYPE|MAP_PRIVATE>,0xffffffff,0,0)
>  51903 100859 lt-test-pangocairo- RET   mmap -1 errno 12 Cannot allocate memory

>  51903 100859 lt-test-pangocairo- GIO   fd 2 wrote 111 bytes
>        "
>         (process:51903): GLib-ERROR **: creating thread '53': Error creating thread: Resource temporarily unavailable
>        "

Regards,
-- 
Steven Chamberlain
steven at pyro.eu.org



More information about the pkg-gnome-maintainers mailing list