Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 30 Dec 2017 17:31:51 -0800
From:      Mark Millard <markmi@dsl-only.net>
To:        Sean Bruno <sbruno@FreeBSD.org>
Cc:        Freebsd-arm <freebsd-arm@freebsd.org>, FreeBSD Ports <freebsd-ports@freebsd.org>
Subject:   Re: armv7 cross-build of port: devel/libunistring stuck in configure for over an hour: ***MEMORY-ERROR***: [27504]: GSlice: failed to allocate 496 bytes (alignment: 512): Cannot allocate memory
Message-ID:  <97845FC0-403D-48EF-AD6F-394405FEB656@dsl-only.net>
In-Reply-To: <D96401A3-15EF-437A-AD32-16FF7DEBEA8F@dsl-only.net>
References:  <A873E3E9-F023-4DC1-A166-E9A112248513@dsl-only.net> <D96401A3-15EF-437A-AD32-16FF7DEBEA8F@dsl-only.net>

next in thread | previous in thread | raw e-mail | index | archive | help
[qemu-aarch64-static has the same issue as qemu-arm-static.]

On 2017-Dec-30, at 4:08 PM, Mark Millard <markmi at dsl-only.net> wrote:

> [top shows /usr/local/bin/qemu-arm-static is stuck in uwait.]
>=20
> On 2017-Dec-30, at 3:15 PM, Mark Millard <markmi at dsl-only.net> =
wrote:
>=20
>> =
/usr/local/poudriere/data/.m/FBSDFSSDjailArmV7-default/06/wrkdirs/usr/port=
s/devel/libunistring/work/libunistring-0.9.8/config.log
>>=20
>> shows:
>>=20
>> configure:25883: checking whether printf survives out-of-memory =
conditions
>> configure:26055: /nxb-bin/usr/bin/cc -o conftest -O2 -pipe =
-mcpu=3Dcortex-a7  -DLIBICONV_PLUG -g -fno-strict-aliasing =
-mcpu=3Dcortex-a7 -DLIBICONV_PLUG -D_THREAD_SAFE  conftest.c  >&5
>> configure:26058: $? =3D 0
>>=20
>> ***MEMORY-ERROR***: [27504]: GSlice: failed to allocate 496 bytes =
(alignment: 512): Cannot allocate memory
>>=20
>>=20
>>=20
>> And there is no more to the tail of the config.log file: it does not =
grow.
>>=20
>> # ls -lTdt =
/usr/local/poudriere/data/.m/FBSDFSSDjailArmV7-default/06/wrkdirs/usr/port=
s/devel/libunistring/work/libunistring-0.9.8/*
>> -rw-r--r--   1 root  wheel   130860 Dec 30 14:51:04 2017 =
/usr/local/poudriere/data/.m/FBSDFSSDjailArmV7-default/06/wrkdirs/usr/port=
s/devel/libunistring/work/libunistring-0.9.8/config.log
>> . . .
>>=20
>>=20
>> It has been sitting like this for well over an hour:
>>=20
>> [06]: devel/libunistring | libunistring-0.9.8 configure (01:35:18)=20
>>=20
>>=20
>>=20
>> # uname -apKU
>> FreeBSD FBSDFSSD 12.0-CURRENT FreeBSD 12.0-CURRENT  r327364M  amd64 =
amd64 1200054 1200054
>>=20
>>=20
>> # svnlite info /usr/ports/ | grep "Re[plv]"
>> Relative URL: ^/head
>> Repository Root: svn://svn.freebsd.org/ports
>> Repository UUID: 35697150-7ecd-e111-bb59-0022644237b5
>> Revision: 457579
>> Last Changed Rev: 457579
>=20
> top indicates that it is /usr/local/bin/qemu-arm-static that is stuck
> (in uwait), a range of the "top -Cawopid" output shows:
>=20
> 27504 root             2  52    0 87228K  9324K     0K uwait  22   =
0:00   0.00% /usr/local/bin/qemu-arm-static ./conftest
> 27499 root             1  52    0 11260K  2540K     0K wait   10   =
0:00   0.00% /bin/sh ./configure --disable-static --prefix=3D/usr/local =
--localstatedir=3D/var --mandir=3D/usr/local/man --disable-silent-
> 9769 root             1  52    0 11260K  2544K     0K wait   22   0:01 =
  0.00% /bin/sh ./configure --disable-static --prefix=3D/usr/local =
--localstatedir=3D/var --mandir=3D/usr/local/man --disable-silent-
> 8294 root             1  52    0 10224K  1772K     0K wait   13   0:00 =
  0.00% [sh]
> 7730 root             1  20    0 10296K  1712K     0K wait    1   0:00 =
  0.00% /usr/bin/make -C /usr/ports/devel/libunistring configure
> 7729 root             1  52    0 12944K  3552K     0K wait    5   0:00 =
  0.00% sh: poudriere[FBSDFSSDjailArmV7-default][06]: build_pkg =
(libunistring-0.9.8) (sh)
> 99854 root             1  20    0 12944K  3560K     0K select  0   =
0:00   0.00% sh: poudriere[FBSDFSSDjailArmV7-default][06]: build_pkg =
(libunistring-0.9.8) (sh)
> 99817 root             1  27    0 12944K  3548K     0K piperd 17   =
0:03   0.00% sh -e /usr/local/share/poudriere/bulk.sh =
-jFBSDFSSDjailArmV7 -w -f /root/armv7-origins.txt
> 74826 root             1  52    0 12944K  3512K     0K nanslp 26   =
1:39   0.53% sh -e /usr/local/share/poudriere/bulk.sh =
-jFBSDFSSDjailArmV7 -w -f /root/armv7-origins.txt
> 74601 root             1  52    0 12728K  3608K     0K select 19   =
0:12   0.00% sh -e /usr/local/share/poudriere/bulk.sh =
-jFBSDFSSDjailArmV7 -w -f /root/armv7-origins.txt
>=20
> (This was after letting it get to the point that
> only the libunistring poudriere job was being run.)
>=20
> Apparently, "checking whether printf survives out-of-memory =
conditions"
> and qemu-arm-static to not mix well.

qemu-aarch64-static has the same issue as qemu-arm-static:

configure:25883: checking whether printf survives out-of-memory =
conditions
configure:26055: /nxb-bin/usr/bin/cc -o conftest -O2 -pipe =
-mcpu=3Dcortex-a53  -DLIBICONV_PLUG -g -fno-strict-aliasing =
-mcpu=3Dcortex-a53 -DLIBICONV_PLUG -D_THREAD_SAFE  conftest.c  >&5
configure:26058: $? =3D 0

***MEMORY-ERROR***: [10016]: GSlice: failed to allocate 496 bytes =
(alignment: 512): Cannot allocate memory


and top shows:

10016 root             2  52    0   221M 13296K     0K uwait   6   0:00  =
 0.00% /usr/local/bin/qemu-aarch64-static ./conftest


In both cases doing a kill -9 from top of the
stuck qemu-*-static process allowed things to
continue.

"checking whether printf survives out-of-memory conditions"
and qemu-aarch64-static or qemu-arm-static just do not mix
well.


=3D=3D=3D
Mark Millard
markmi at dsl-only.net




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?97845FC0-403D-48EF-AD6F-394405FEB656>