Building on gcc112 is stuck in msgfmt
Stefan Ring
stefanrin@gmail.com
Tue Aug 29 10:32:00 GMT 2017
On Tue, Aug 29, 2017 at 9:32 AM, Martin Liška <mliska@suse.cz> wrote:
> On 08/28/2017 09:15 PM, Martin Liška wrote:
>> On 08/28/2017 04:06 PM, Jeff Law wrote:
>>> On 08/28/2017 01:16 AM, Martin Liška wrote:
>>>> Hello.
>>>>
>>>> I've just repeatedly seen stuck in build process:
>>>>
>>>> make[5]: Entering directory `/home/marxin/Programming/gcc/objdir/powerpc64le-unknown-linux-gnu/libstdc++-v3/po'
>>>> msgfmt -o de.mo ../../../../libstdc++-v3/po/de.po
>>>>
>>>> 49 __asm volatile ("sc; mfcr %0"
>>>> Missing separate debuginfos, use: debuginfo-install gettext-0.18.2.1-4.el7.ppc64le
>>>> (gdb) bt
>>>> #0 0x00003fff85d8bac8 in sys_futex0 (val=-1, op=128, addr=0x3fff85db0520 <acc_device_lock>) at ../../../libgomp/config/linux/powerpc/futex.h:49
>>>> #1 futex_wait (val=-1, addr=0x3fff85db0520 <acc_device_lock>) at ../../../libgomp/config/linux/powerpc/futex.h:62
>>>> #2 do_wait (val=-1, addr=<optimized out>) at ../../../libgomp/config/linux/wait.h:67
>>>> #3 gomp_mutex_lock_slow (mutex=0x3fff85db0520 <acc_device_lock>, oldval=<optimized out>) at ../../../libgomp/config/linux/mutex.c:63
>>>> #4 0x00003fff85d98b04 in gomp_mutex_lock (mutex=0x3fff85db0520 <acc_device_lock>) at ../../../libgomp/config/linux/mutex.h:57
>>>> #5 goacc_register (disp=0x3fff85db0090 <host_dispatch>) at ../../../libgomp/oacc-init.c:74
>>>> #6 0x00003fff85d983fc in goacc_host_init () at ../../../libgomp/oacc-host.c:265
>>>> #7 0x00003fff85d99c88 in goacc_runtime_initialize () at ../../../libgomp/oacc-init.c:657
>>>> #8 0x00003fff85d7882c in initialize_env () at ../../../libgomp/env.c:1340
>>>> #9 0x00003fff86525c74 in _dl_init_internal () from /lib64/ld64.so.2
>>>> #10 0x00003fff865119cc in _dl_start_user () from /lib64/ld64.so.2
>>>>
>> I did the same with the same result. Note that I can see the same problem
>> on gcc110 machine :/
>>
[...]
>
> Looks it uses different invocation of futex syscall. In order to have it working I needed to configure gettext w/ --disable-openmp.
> Note that the former invocation of msgfmt contains just a single futex syscall, so should not be blocked by anything else.
Then it looks very much like libgomp got its memory barriers wrong for
powerpc64.
More information about the Gcc
mailing list