All of lore.kernel.org
 help / color / mirror / Atom feed
* meta-java: Problems creating image inside VM? openjdk-6 build gets killed by host OOM killer.
@ 2015-01-11 21:39 Colin Smiley
  2015-01-12 19:11 ` Mark Hatle
  0 siblings, 1 reply; 4+ messages in thread
From: Colin Smiley @ 2015-01-11 21:39 UTC (permalink / raw)
  To: yocto


I need help.

I am trying to use yocto and bitbake to create a QEMU-x86 image containing
the openjdk-6 jvm. I am using open-embedded and meta-java for this.

Since I am running on a Mac, I am attempting creation from inside a VMWare
VM (similar to the Yocto Build Appliance). I have tried using Ubuntu 14.04
Server, Fedora Core 18, 19, & 20 and met with the same results. My VM has
4 cores, and 8GB of RAM, and with the OOM killer involved I¹ve tried
giving it 10GB and 12GB as well.

With all VMs, the failure is the same. OOM killer kills the qemu-i386 when
running the following:

GENERATING 
/home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b24-
1.11.9-r22.1/icedtea6-1.11.9/build/generated.build/sun/awt/X11/generator/si
zes.32


Here are the steps and configuration I follow:

1) Create a VM with either Ubuntu or Fedora (failure has been same for
all). VM has 50GB of disk and 8GB of RAM (although have tried increasing
to 10GB and 12GB with same result).

2) Perform os updates per yocto page here:
http://www.yoctoproject.org/docs/1.7/ref-manual/ref-manual.html#required-pa
ckages-for-the-host-development-system

3) Check out appropriate version and branches, per meta-java readme.
$ git clone http://git.yoctoproject.org/git/poky
$ cd poky
$ git checkout -b daisy origin/daisy
$ git clone git://git.openembedded.org/meta-openembedded
$ cd meta-openembedded
$ git checkout -b daisy origin/daisy
$ cd ..
$ git clone git://git.yoctoproject.org/meta-java

4) Since I only want java 6, copy meta-java¹s java-test-image.bb recipe,
calling it java-6-test-image.bb. It reads:

LICENSE = "MIT"
inherit core-image
IMAGE_LINGUAS = " "
IMAGE_INSTALL = "busybox modutils-initscripts initscripts opkg udev
sysvinit netbase base-files base-passwd busybox-hwclock \
                 ${ROOTFS_PKGMANAGE_BOOTSTRAP} ${CORE_IMAGE_EXTRA_INSTALL}
\
openjdk-6-jre openjdk-6-vm-zero openjdk-6-vm-jamvm openjdk-6-vm-cacao \
                 strace dropbear binutils \
                 classpath \
                 classpath-common \
                 classpath-examples \
                 classpath-tools \
                 jamvm \
                 cacao \
"

5) Set up environment with `. ./oe-init-build-env`


6) Modify build/conf/local.conf and add (I have tried setting threads and
parallel_make to 1, 2, 4, and 8 with the same results):
# Added for OpenJDK6
PREFERRED_PROVIDER_virtual/java-initial = "cacao-initial"
PREFERRED_PROVIDER_virtual/java-native = "jamvm-native"
PREFERRED_PROVIDER_virtual/javac-native = "ecj-bootstrap-native"
PREFERRED_VERSION_openjdk-6-jre = "6b24-1.11.9"
PREFERRED_PROVIDER_openjdk-6-jre = "openjdk-6-jre"
PREFERRED_VERSION_icedtea6-native = "1.8.11"
# The maximum number of tasks BitBake should run in parallel at any one
time
BB_NUMBER_THREADS = "8"
# Extra options passed to the make command during the do_compile task in
order to specify parallel compilation on the local build host.
PARALLEL_MAKE = "-j 8"

7) Modify build/conf/bblayers.conf

# LAYER_CONF_VERSION is increased each time build/conf/bblayers.conf
# changes incompatibly
LCONF_VERSION = "6"

BBPATH = "${TOPDIR}"
BBFILES ?= ""

BBLAYERS ?= " \
  /home/csmiley/yocto/poky/meta \
  /home/csmiley/yocto/poky/meta-yocto \
  /home/csmiley/yocto/poky/meta-yocto-bsp \
  /home/csmiley/yocto/poky/meta-openembedded/meta-oe \
  /home/csmiley/yocto/poky/meta-java \
  "
BBLAYERS_NON_REMOVABLE ?= " \
  /home/csmiley/yocto/poky/meta \
  /home/csmiley/yocto/poky/meta-yocto \
  "

8) Run `bitbake java-6-test-image`. This runs until compilation failure,
due to a date bug introduced in meta-java on 12/31/14, with:

/home/csmiley/yacto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b24-
1.11.9-r22.1/build/bootstrap/jdk1.6.0/bin/java  -client -Xmx896m -Xms128m
-XX:PermSize=32m -XX:MaxPermSize=160m -jar
/home/csmiley/yacto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b24-
1.11.9-r22.1/build/openjdk.build-ecj/btjars/generatecurrencydata.jar -o
/home/csmiley/yacto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b24-
1.11.9-r22.1/build/openjdk.build-ecj/lib/currency.data.temp \
| 	< ../../../src/share/classes/java/util/CurrencyData.properties
| Error: time is more than 10 years from present: 1104530400000
| java.lang.RuntimeException: time is more than 10 years from present:
1104530400000
| 	at 
build.tools.generatecurrencydata.GenerateCurrencyData.makeSpecialCaseEntry(
GenerateCurrencyData.java:285)
| 	at 
build.tools.generatecurrencydata.GenerateCurrencyData.buildMainAndSpecialCa
seTables(GenerateCurrencyData.java:225)
| 	at 
build.tools.generatecurrencydata.GenerateCurrencyData.main(GenerateCurrency
Data.java:154)

9) Fix above problem by editing all instances of
build/tmp/work/work/Š/CurrencyData.properties to get rid of Turkish
Currency Issue.


10) Restart by running `bitbake java-6-test-image`. This now fails when
doing the generation on Sizes.32 with:
| i586-poky-linux-gcc  -m32 -march=i586
--sysroot=/home/csmiley/yocto/poky/build/tmp/sysroots/qemux86  -O2 -pipe
-g -feliminate-unused-debug-types   -fno-strict-aliasing -fPIC -W -Wall
-Wno-unused -Wno-parentheses -m32 -D_LITTLE_ENDIAN -g   -DARCH='"i586"'
-Di586 -DLINUX -DRELEASE='"1.6.0_24"' -D_LARGEFILE64_SOURCE -D_GNU_SOURCE
-D_REENTRANT -I. 
-I/home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b2
4-1.11.9-r22.1/icedtea6-1.11.9/build/openjdk.build-ecj/tmp/sun/sun.awt.X11/
xawt/CClassHeaders -I../../../src/solaris/javavm/export
-I../../../src/share/javavm/export -I../../../src/share/javavm/include
-I../../../src/solaris/javavm/include -I../../../src/share/native/common
-I../../../src/solaris/native/common
-I../../../src/share/native/sun/awt/X11
-I../../../src/solaris/native/sun/awt/X11
-I/home/csmiley/yocto/poky/build/tmp/sysroots/qemux86/usr/include -DXAWT
-DXAWT_HACK 
-I/home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b2
4-1.11.9-r22.1/icedtea6-1.11.9/build/openjdk.build-ecj/tmp/sun/sun.awt.X11/
xawt/../../sun.awt/awt/CClassHeaders -I../../../src/solaris/native/sun/awt
-I../../../src/solaris/native/sun/xawt
-I../../../src/solaris/native/sun/jdga
-I../../../src/share/native/sun/awt/debug
-I../../../src/share/native/sun/awt/image/cvutils
-I../../../src/share/native/sun/java2d
-I../../../src/share/native/sun/java2d/loops
-I../../../src/share/native/sun/awt/image/cvutils
-I../../../src/share/native/sun/awt/image
-I../../../src/share/native/sun/font
-I../../../src/solaris/native/sun/java2d
-I../../../src/share/native/sun/java2d/pipe
-I../../../src/share/native/sun/java2d/opengl
-I../../../src/solaris/native/sun/java2d/opengl
-I../../../src/solaris/native/sun/java2d/x11
-I../../../src/share/native/sun/dc/path
-I../../../src/share/native/sun/dc/doe
-I../../../src/share/native/sun/awt/alphacomposite
-I../../../src/share/native/sun/awt/medialib
-I../../../src/solaris/native/sun/awt/medialib
-I../../../src/solaris/native/sun/font -I../../../src/share/native/sun/awt
-I../../../src/solaris/native/sun/awt -o
/home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b24-
1.11.9-r22.1/icedtea6-1.11.9/build/generated.build/sun/awt/X11/generator/si
zer.32 
/home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b24-
1.11.9-r22.1/icedtea6-1.11.9/build/generated.build/sun/awt/X11/generator/si
zer.32.c
| GENERATING 
/home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b24-
1.11.9-r22.1/icedtea6-1.11.9/build/generated.build/sun/awt/X11/generator/si
zes.32
| Killed
| make[5]: *** 
[/home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b24
-1.11.9-r22.1/icedtea6-1.11.9/build/generated.build/sun/awt/X11/generator/s
izes.32] Error 137



System console has the message:
Jan 11 02:00:47 yoctomatic kernel: [59600.572556] Out of memory: Kill
process 69268 (qemu-i386) score 944 or sacrifice child
Jan 11 02:00:47 yoctomatic kernel: [59600.573756] Killed process 69268
(qemu-i386) total-vm:15519392kB, anon-rss:7674264kB, file-rss:32kB



I have tried the following while diagnosing:

* Build core-image-minimal (works)
* Build java-6-test-image without java/jdk portions (dependencies only)
(works)
* Builds varying number of threads/parallel make, memory of VM, OS of VM
(all break in same place).

I would like some help diagnosing this. Please help!


Thanks,


Colin





^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: meta-java: Problems creating image inside VM? openjdk-6 build gets killed by host OOM killer.
  2015-01-11 21:39 meta-java: Problems creating image inside VM? openjdk-6 build gets killed by host OOM killer Colin Smiley
@ 2015-01-12 19:11 ` Mark Hatle
  2015-01-12 22:54   ` Colin Smiley
  0 siblings, 1 reply; 4+ messages in thread
From: Mark Hatle @ 2015-01-12 19:11 UTC (permalink / raw)
  To: yocto

On 1/11/15 3:39 PM, Colin Smiley wrote:
> 
> I need help.
> 

... commenting on the one piece I'm aware of ...

> 8) Run `bitbake java-6-test-image`. This runs until compilation failure,
> due to a date bug introduced in meta-java on 12/31/14, with:
> 
> /home/csmiley/yacto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b24-
> 1.11.9-r22.1/build/bootstrap/jdk1.6.0/bin/java  -client -Xmx896m -Xms128m
> -XX:PermSize=32m -XX:MaxPermSize=160m -jar
> /home/csmiley/yacto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b24-
> 1.11.9-r22.1/build/openjdk.build-ecj/btjars/generatecurrencydata.jar -o
> /home/csmiley/yacto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b24-
> 1.11.9-r22.1/build/openjdk.build-ecj/lib/currency.data.temp \
> | 	< ../../../src/share/classes/java/util/CurrencyData.properties
> | Error: time is more than 10 years from present: 1104530400000
> | java.lang.RuntimeException: time is more than 10 years from present:
> 1104530400000
> | 	at 
> build.tools.generatecurrencydata.GenerateCurrencyData.makeSpecialCaseEntry(
> GenerateCurrencyData.java:285)
> | 	at 
> build.tools.generatecurrencydata.GenerateCurrencyData.buildMainAndSpecialCa
> seTables(GenerateCurrencyData.java:225)
> | 	at 
> build.tools.generatecurrencydata.GenerateCurrencyData.main(GenerateCurrency
> Data.java:154)
> 
> 9) Fix above problem by editing all instances of
> build/tmp/work/work/Š/CurrencyData.properties to get rid of Turkish
> Currency Issue.

That is right answer (well kind of).  Really a patch needs to be submitted for
this little bit of insanity.

> 10) Restart by running `bitbake java-6-test-image`. This now fails when
> doing the generation on Sizes.32 with:
> | i586-poky-linux-gcc  -m32 -march=i586
> --sysroot=/home/csmiley/yocto/poky/build/tmp/sysroots/qemux86  -O2 -pipe
> -g -feliminate-unused-debug-types   -fno-strict-aliasing -fPIC -W -Wall
> -Wno-unused -Wno-parentheses -m32 -D_LITTLE_ENDIAN -g   -DARCH='"i586"'
> -Di586 -DLINUX -DRELEASE='"1.6.0_24"' -D_LARGEFILE64_SOURCE -D_GNU_SOURCE
> -D_REENTRANT -I. 
> -I/home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b2
> 4-1.11.9-r22.1/icedtea6-1.11.9/build/openjdk.build-ecj/tmp/sun/sun.awt.X11/
> xawt/CClassHeaders -I../../../src/solaris/javavm/export
> -I../../../src/share/javavm/export -I../../../src/share/javavm/include
> -I../../../src/solaris/javavm/include -I../../../src/share/native/common
> -I../../../src/solaris/native/common
> -I../../../src/share/native/sun/awt/X11
> -I../../../src/solaris/native/sun/awt/X11
> -I/home/csmiley/yocto/poky/build/tmp/sysroots/qemux86/usr/include -DXAWT
> -DXAWT_HACK 
> -I/home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b2
> 4-1.11.9-r22.1/icedtea6-1.11.9/build/openjdk.build-ecj/tmp/sun/sun.awt.X11/
> xawt/../../sun.awt/awt/CClassHeaders -I../../../src/solaris/native/sun/awt
> -I../../../src/solaris/native/sun/xawt
> -I../../../src/solaris/native/sun/jdga
> -I../../../src/share/native/sun/awt/debug
> -I../../../src/share/native/sun/awt/image/cvutils
> -I../../../src/share/native/sun/java2d
> -I../../../src/share/native/sun/java2d/loops
> -I../../../src/share/native/sun/awt/image/cvutils
> -I../../../src/share/native/sun/awt/image
> -I../../../src/share/native/sun/font
> -I../../../src/solaris/native/sun/java2d
> -I../../../src/share/native/sun/java2d/pipe
> -I../../../src/share/native/sun/java2d/opengl
> -I../../../src/solaris/native/sun/java2d/opengl
> -I../../../src/solaris/native/sun/java2d/x11
> -I../../../src/share/native/sun/dc/path
> -I../../../src/share/native/sun/dc/doe
> -I../../../src/share/native/sun/awt/alphacomposite
> -I../../../src/share/native/sun/awt/medialib
> -I../../../src/solaris/native/sun/awt/medialib
> -I../../../src/solaris/native/sun/font -I../../../src/share/native/sun/awt
> -I../../../src/solaris/native/sun/awt -o
> /home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b24-
> 1.11.9-r22.1/icedtea6-1.11.9/build/generated.build/sun/awt/X11/generator/si
> zer.32 
> /home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b24-
> 1.11.9-r22.1/icedtea6-1.11.9/build/generated.build/sun/awt/X11/generator/si
> zer.32.c
> | GENERATING 
> /home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b24-
> 1.11.9-r22.1/icedtea6-1.11.9/build/generated.build/sun/awt/X11/generator/si
> zes.32
> | Killed
> | make[5]: *** 
> [/home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b24
> -1.11.9-r22.1/icedtea6-1.11.9/build/generated.build/sun/awt/X11/generator/s
> izes.32] Error 137
> 
> 
> 
> System console has the message:
> Jan 11 02:00:47 yoctomatic kernel: [59600.572556] Out of memory: Kill
> process 69268 (qemu-i386) score 944 or sacrifice child
> Jan 11 02:00:47 yoctomatic kernel: [59600.573756] Killed process 69268
> (qemu-i386) total-vm:15519392kB, anon-rss:7674264kB, file-rss:32kB

The above seems to indicate you host system ran out of memory or your local
resource space was hit.

Some of the generators can take gigabytes of memory and when a parallel build is
attempted smaller systems just are not enough.  (Yes, 16 GB of actual ram is
starting to be considered "small" for some of these kinds of builds.)

I'd recommend checking you local environment settings (ulimit), verifying that
you have plenty of swamp.. and if you are still having problems limit the number
of parallel jobs.  (Parallel tasks should still be fine.)

(BTW most of my builders have 16-24 cores, 32-64 GB of ram, and 256+ GB of
swap...  I've not run into these myself, but I'm not building java on a regular
basis either.)

--Mark

> 
> 
> I have tried the following while diagnosing:
> 
> * Build core-image-minimal (works)
> * Build java-6-test-image without java/jdk portions (dependencies only)
> (works)
> * Builds varying number of threads/parallel make, memory of VM, OS of VM
> (all break in same place).
> 
> I would like some help diagnosing this. Please help!
> 
> 
> Thanks,
> 
> 
> Colin
> 
> 
> 



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: meta-java: Problems creating image inside VM? openjdk-6 build gets killed by host OOM killer.
  2015-01-12 19:11 ` Mark Hatle
@ 2015-01-12 22:54   ` Colin Smiley
  2015-01-13  0:08     ` Colin Smiley
  0 siblings, 1 reply; 4+ messages in thread
From: Colin Smiley @ 2015-01-12 22:54 UTC (permalink / raw)
  To: Mark Hatle, yocto


Mark, thanks for the reply. Comments in-line.

On 1/12/15, 1:11 PM, "Mark Hatle" <mark.hatle@windriver.com> wrote:

>On 1/11/15 3:39 PM, Colin Smiley wrote:
>> 
>> I need help.
>> 
>
>... commenting on the one piece I'm aware of ...
>
>> 8) Run `bitbake java-6-test-image`. This runs until compilation failure,
>> due to a date bug introduced in meta-java on 12/31/14, with:
>> 
>> 
>>/home/csmiley/yacto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b2
>>4-
>> 1.11.9-r22.1/build/bootstrap/jdk1.6.0/bin/java  -client -Xmx896m
>>-Xms128m
>> -XX:PermSize=32m -XX:MaxPermSize=160m -jar
>> 
>>/home/csmiley/yacto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b2
>>4-
>> 1.11.9-r22.1/build/openjdk.build-ecj/btjars/generatecurrencydata.jar -o
>> 
>>/home/csmiley/yacto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b2
>>4-
>> 1.11.9-r22.1/build/openjdk.build-ecj/lib/currency.data.temp \
>> | 	< ../../../src/share/classes/java/util/CurrencyData.properties
>> | Error: time is more than 10 years from present: 1104530400000
>> | java.lang.RuntimeException: time is more than 10 years from present:
>> 1104530400000
>> | 	at 
>> 
>>build.tools.generatecurrencydata.GenerateCurrencyData.makeSpecialCaseEntr
>>y(
>> GenerateCurrencyData.java:285)
>> | 	at 
>> 
>>build.tools.generatecurrencydata.GenerateCurrencyData.buildMainAndSpecial
>>Ca
>> seTables(GenerateCurrencyData.java:225)
>> | 	at 
>> 
>>build.tools.generatecurrencydata.GenerateCurrencyData.main(GenerateCurren
>>cy
>> Data.java:154)
>> 
>> 9) Fix above problem by editing all instances of
>> build/tmp/work/work/Š/CurrencyData.properties to get rid of Turkish
>> Currency Issue.
>
>That is right answer (well kind of).  Really a patch needs to be
>submitted for
>this little bit of insanity.

According to an OpenJDK board/mailing list I saw in my googling-about,
they’re looking towards back-porting some of the currency changes from
OpenJDK 7. 

My inclination is to supply a patch into the recipe that will patch
CurrencyData post source checkout, but pre-build. I am new to how yocto
works, however, so I’m not sure if that’s the right way to do it.



>
>> 10) Restart by running `bitbake java-6-test-image`. This now fails when
>> doing the generation on Sizes.32 with:
>> | i586-poky-linux-gcc  -m32 -march=i586
>> --sysroot=/home/csmiley/yocto/poky/build/tmp/sysroots/qemux86  -O2 -pipe
>> -g -feliminate-unused-debug-types   -fno-strict-aliasing -fPIC -W -Wall
>> -Wno-unused -Wno-parentheses -m32 -D_LITTLE_ENDIAN -g   -DARCH='"i586"'
>> -Di586 -DLINUX -DRELEASE='"1.6.0_24"' -D_LARGEFILE64_SOURCE
>>-D_GNU_SOURCE
>> -D_REENTRANT -I.
>> 
>>-I/home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6
>>b2
>> 
>>4-1.11.9-r22.1/icedtea6-1.11.9/build/openjdk.build-ecj/tmp/sun/sun.awt.X1
>>1/
>> xawt/CClassHeaders -I../../../src/solaris/javavm/export
>> -I../../../src/share/javavm/export -I../../../src/share/javavm/include
>> -I../../../src/solaris/javavm/include -I../../../src/share/native/common
>> -I../../../src/solaris/native/common
>> -I../../../src/share/native/sun/awt/X11
>> -I../../../src/solaris/native/sun/awt/X11
>> -I/home/csmiley/yocto/poky/build/tmp/sysroots/qemux86/usr/include -DXAWT
>> -DXAWT_HACK 
>> 
>>-I/home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6
>>b2
>> 
>>4-1.11.9-r22.1/icedtea6-1.11.9/build/openjdk.build-ecj/tmp/sun/sun.awt.X1
>>1/
>> xawt/../../sun.awt/awt/CClassHeaders
>>-I../../../src/solaris/native/sun/awt
>> -I../../../src/solaris/native/sun/xawt
>> -I../../../src/solaris/native/sun/jdga
>> -I../../../src/share/native/sun/awt/debug
>> -I../../../src/share/native/sun/awt/image/cvutils
>> -I../../../src/share/native/sun/java2d
>> -I../../../src/share/native/sun/java2d/loops
>> -I../../../src/share/native/sun/awt/image/cvutils
>> -I../../../src/share/native/sun/awt/image
>> -I../../../src/share/native/sun/font
>> -I../../../src/solaris/native/sun/java2d
>> -I../../../src/share/native/sun/java2d/pipe
>> -I../../../src/share/native/sun/java2d/opengl
>> -I../../../src/solaris/native/sun/java2d/opengl
>> -I../../../src/solaris/native/sun/java2d/x11
>> -I../../../src/share/native/sun/dc/path
>> -I../../../src/share/native/sun/dc/doe
>> -I../../../src/share/native/sun/awt/alphacomposite
>> -I../../../src/share/native/sun/awt/medialib
>> -I../../../src/solaris/native/sun/awt/medialib
>> -I../../../src/solaris/native/sun/font
>>-I../../../src/share/native/sun/awt
>> -I../../../src/solaris/native/sun/awt -o
>> 
>>/home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b2
>>4-
>> 
>>1.11.9-r22.1/icedtea6-1.11.9/build/generated.build/sun/awt/X11/generator/
>>si
>> zer.32 
>> 
>>/home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b2
>>4-
>> 
>>1.11.9-r22.1/icedtea6-1.11.9/build/generated.build/sun/awt/X11/generator/
>>si
>> zer.32.c
>> | GENERATING 
>> 
>>/home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b2
>>4-
>> 
>>1.11.9-r22.1/icedtea6-1.11.9/build/generated.build/sun/awt/X11/generator/
>>si
>> zes.32
>> | Killed
>> | make[5]: *** 
>> 
>>[/home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b
>>24
>> 
>>-1.11.9-r22.1/icedtea6-1.11.9/build/generated.build/sun/awt/X11/generator
>>/s
>> izes.32] Error 137
>> 
>> 
>> 
>> System console has the message:
>> Jan 11 02:00:47 yoctomatic kernel: [59600.572556] Out of memory: Kill
>> process 69268 (qemu-i386) score 944 or sacrifice child
>> Jan 11 02:00:47 yoctomatic kernel: [59600.573756] Killed process 69268
>> (qemu-i386) total-vm:15519392kB, anon-rss:7674264kB, file-rss:32kB
>
>The above seems to indicate you host system ran out of memory or your
>local
>resource space was hit.
>
>Some of the generators can take gigabytes of memory and when a parallel
>build is
>attempted smaller systems just are not enough.  (Yes, 16 GB of actual ram
>is
>starting to be considered "small" for some of these kinds of builds.)
>
>I'd recommend checking you local environment settings (ulimit), verifying
>that
>you have plenty of swamp.. and if you are still having problems limit the
>number
>of parallel jobs.  (Parallel tasks should still be fine.)
>
>(BTW most of my builders have 16-24 cores, 32-64 GB of ram, and 256+ GB of
>swap...  I've not run into these myself, but I'm not building java on a
>regular
>basis either.)

First off, that’s a heck of a build machine setup. I think our IT guy just
fainted.

Second, I have tried building with just 1 parallel job with the same
results. I’m adding a 32GB swap disk to my VM. I’ll see if that works.

Thanks,


Colin


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: meta-java: Problems creating image inside VM? openjdk-6 build gets killed by host OOM killer.
  2015-01-12 22:54   ` Colin Smiley
@ 2015-01-13  0:08     ` Colin Smiley
  0 siblings, 0 replies; 4+ messages in thread
From: Colin Smiley @ 2015-01-13  0:08 UTC (permalink / raw)
  To: Colin Smiley, Mark Hatle, yocto


Well, adding more SWAP to the VM didn’t work. Qemu-i386 used it all!

Jan 12 17:57:09 yoctomatic kernel: [ 5474.131213] Out of memory: Kill
process 123621 (qemu-i386) score 983 or sacrifice child
Jan 12 17:57:09 yoctomatic kernel: [ 5474.131698] Killed process 123621
(qemu-i386) total-vm:49056108kB, anon-rss:7479716kB, file-rss:4kB

I added 32GB of swap to my existing VM, for a total of 41840632 kb.


You’ll see, above, that qemu-i386 used it all, plus the physical. Failure
happens in the same place, as well.


Colin


On 1/12/15, 4:54 PM, "Colin Smiley" <csmiley@icontrol.com> wrote:

>
>Mark, thanks for the reply. Comments in-line.
>
>On 1/12/15, 1:11 PM, "Mark Hatle" <mark.hatle@windriver.com> wrote:
>
>>On 1/11/15 3:39 PM, Colin Smiley wrote:
>>> 
>>> I need help.
>>> 
>>
>>... commenting on the one piece I'm aware of ...
>>
>>> 8) Run `bitbake java-6-test-image`. This runs until compilation
>>>failure,
>>> due to a date bug introduced in meta-java on 12/31/14, with:
>>> 
>>> 
>>>/home/csmiley/yacto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b
>>>2
>>>4-
>>> 1.11.9-r22.1/build/bootstrap/jdk1.6.0/bin/java  -client -Xmx896m
>>>-Xms128m
>>> -XX:PermSize=32m -XX:MaxPermSize=160m -jar
>>> 
>>>/home/csmiley/yacto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b
>>>2
>>>4-
>>> 1.11.9-r22.1/build/openjdk.build-ecj/btjars/generatecurrencydata.jar -o
>>> 
>>>/home/csmiley/yacto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b
>>>2
>>>4-
>>> 1.11.9-r22.1/build/openjdk.build-ecj/lib/currency.data.temp \
>>> | 	< ../../../src/share/classes/java/util/CurrencyData.properties
>>> | Error: time is more than 10 years from present: 1104530400000
>>> | java.lang.RuntimeException: time is more than 10 years from present:
>>> 1104530400000
>>> | 	at 
>>> 
>>>build.tools.generatecurrencydata.GenerateCurrencyData.makeSpecialCaseEnt
>>>r
>>>y(
>>> GenerateCurrencyData.java:285)
>>> | 	at 
>>> 
>>>build.tools.generatecurrencydata.GenerateCurrencyData.buildMainAndSpecia
>>>l
>>>Ca
>>> seTables(GenerateCurrencyData.java:225)
>>> | 	at 
>>> 
>>>build.tools.generatecurrencydata.GenerateCurrencyData.main(GenerateCurre
>>>n
>>>cy
>>> Data.java:154)
>>> 
>>> 9) Fix above problem by editing all instances of
>>> build/tmp/work/work/Š/CurrencyData.properties to get rid of Turkish
>>> Currency Issue.
>>
>>That is right answer (well kind of).  Really a patch needs to be
>>submitted for
>>this little bit of insanity.
>
>According to an OpenJDK board/mailing list I saw in my googling-about,
>they’re looking towards back-porting some of the currency changes from
>OpenJDK 7. 
>
>My inclination is to supply a patch into the recipe that will patch
>CurrencyData post source checkout, but pre-build. I am new to how yocto
>works, however, so I’m not sure if that’s the right way to do it.
>
>
>
>>
>>> 10) Restart by running `bitbake java-6-test-image`. This now fails when
>>> doing the generation on Sizes.32 with:
>>> | i586-poky-linux-gcc  -m32 -march=i586
>>> --sysroot=/home/csmiley/yocto/poky/build/tmp/sysroots/qemux86  -O2
>>>-pipe
>>> -g -feliminate-unused-debug-types   -fno-strict-aliasing -fPIC -W -Wall
>>> -Wno-unused -Wno-parentheses -m32 -D_LITTLE_ENDIAN -g   -DARCH='"i586"'
>>> -Di586 -DLINUX -DRELEASE='"1.6.0_24"' -D_LARGEFILE64_SOURCE
>>>-D_GNU_SOURCE
>>> -D_REENTRANT -I.
>>> 
>>>-I/home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/
>>>6
>>>b2
>>> 
>>>4-1.11.9-r22.1/icedtea6-1.11.9/build/openjdk.build-ecj/tmp/sun/sun.awt.X
>>>1
>>>1/
>>> xawt/CClassHeaders -I../../../src/solaris/javavm/export
>>> -I../../../src/share/javavm/export -I../../../src/share/javavm/include
>>> -I../../../src/solaris/javavm/include
>>>-I../../../src/share/native/common
>>> -I../../../src/solaris/native/common
>>> -I../../../src/share/native/sun/awt/X11
>>> -I../../../src/solaris/native/sun/awt/X11
>>> -I/home/csmiley/yocto/poky/build/tmp/sysroots/qemux86/usr/include
>>>-DXAWT
>>> -DXAWT_HACK 
>>> 
>>>-I/home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/
>>>6
>>>b2
>>> 
>>>4-1.11.9-r22.1/icedtea6-1.11.9/build/openjdk.build-ecj/tmp/sun/sun.awt.X
>>>1
>>>1/
>>> xawt/../../sun.awt/awt/CClassHeaders
>>>-I../../../src/solaris/native/sun/awt
>>> -I../../../src/solaris/native/sun/xawt
>>> -I../../../src/solaris/native/sun/jdga
>>> -I../../../src/share/native/sun/awt/debug
>>> -I../../../src/share/native/sun/awt/image/cvutils
>>> -I../../../src/share/native/sun/java2d
>>> -I../../../src/share/native/sun/java2d/loops
>>> -I../../../src/share/native/sun/awt/image/cvutils
>>> -I../../../src/share/native/sun/awt/image
>>> -I../../../src/share/native/sun/font
>>> -I../../../src/solaris/native/sun/java2d
>>> -I../../../src/share/native/sun/java2d/pipe
>>> -I../../../src/share/native/sun/java2d/opengl
>>> -I../../../src/solaris/native/sun/java2d/opengl
>>> -I../../../src/solaris/native/sun/java2d/x11
>>> -I../../../src/share/native/sun/dc/path
>>> -I../../../src/share/native/sun/dc/doe
>>> -I../../../src/share/native/sun/awt/alphacomposite
>>> -I../../../src/share/native/sun/awt/medialib
>>> -I../../../src/solaris/native/sun/awt/medialib
>>> -I../../../src/solaris/native/sun/font
>>>-I../../../src/share/native/sun/awt
>>> -I../../../src/solaris/native/sun/awt -o
>>> 
>>>/home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b
>>>2
>>>4-
>>> 
>>>1.11.9-r22.1/icedtea6-1.11.9/build/generated.build/sun/awt/X11/generator
>>>/
>>>si
>>> zer.32 
>>> 
>>>/home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b
>>>2
>>>4-
>>> 
>>>1.11.9-r22.1/icedtea6-1.11.9/build/generated.build/sun/awt/X11/generator
>>>/
>>>si
>>> zer.32.c
>>> | GENERATING 
>>> 
>>>/home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6b
>>>2
>>>4-
>>> 
>>>1.11.9-r22.1/icedtea6-1.11.9/build/generated.build/sun/awt/X11/generator
>>>/
>>>si
>>> zes.32
>>> | Killed
>>> | make[5]: *** 
>>> 
>>>[/home/csmiley/yocto/poky/build/tmp/work/i586-poky-linux/openjdk-6-jre/6
>>>b
>>>24
>>> 
>>>-1.11.9-r22.1/icedtea6-1.11.9/build/generated.build/sun/awt/X11/generato
>>>r
>>>/s
>>> izes.32] Error 137
>>> 
>>> 
>>> 
>>> System console has the message:
>>> Jan 11 02:00:47 yoctomatic kernel: [59600.572556] Out of memory: Kill
>>> process 69268 (qemu-i386) score 944 or sacrifice child
>>> Jan 11 02:00:47 yoctomatic kernel: [59600.573756] Killed process 69268
>>> (qemu-i386) total-vm:15519392kB, anon-rss:7674264kB, file-rss:32kB
>>
>>The above seems to indicate you host system ran out of memory or your
>>local
>>resource space was hit.
>>
>>Some of the generators can take gigabytes of memory and when a parallel
>>build is
>>attempted smaller systems just are not enough.  (Yes, 16 GB of actual ram
>>is
>>starting to be considered "small" for some of these kinds of builds.)
>>
>>I'd recommend checking you local environment settings (ulimit), verifying
>>that
>>you have plenty of swamp.. and if you are still having problems limit the
>>number
>>of parallel jobs.  (Parallel tasks should still be fine.)
>>
>>(BTW most of my builders have 16-24 cores, 32-64 GB of ram, and 256+ GB
>>of
>>swap...  I've not run into these myself, but I'm not building java on a
>>regular
>>basis either.)
>
>First off, that’s a heck of a build machine setup. I think our IT guy just
>fainted.
>
>Second, I have tried building with just 1 parallel job with the same
>results. I’m adding a 32GB swap disk to my VM. I’ll see if that works.
>
>Thanks,
>
>
>Colin
>
>-- 
>_______________________________________________
>yocto mailing list
>yocto@yoctoproject.org
>https://lists.yoctoproject.org/listinfo/yocto


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2015-01-13  0:09 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-01-11 21:39 meta-java: Problems creating image inside VM? openjdk-6 build gets killed by host OOM killer Colin Smiley
2015-01-12 19:11 ` Mark Hatle
2015-01-12 22:54   ` Colin Smiley
2015-01-13  0:08     ` Colin Smiley

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.