Loading... (original) (raw)

We've discovered that bootcycle builds may run out of resources due to bad jobs config.

In make/Main.gmk around line 324 where the bootcycle-images target is defined we see:

+$(MAKE) (MAKEARGS)−f(MAKE_ARGS) -f (MAKEARGS)f(TOPDIR)/make/Init.gmk PARALLEL_TARGETS=$(BOOTCYCLE_TARGET) \
JOBS= SPEC=$(dir $(SPEC))bootcycle-spec.gmk main

So it's using 'JOBS=' which corresponds to 'make -j' invokation without an argument unconditionally. That is, make is free to use any number of parallel jobs for the bootcycle-images target even though configure might have had option "--with-num-cores=".

For background info see this mail thread:

http://mail.openjdk.java.net/pipermail/build-dev/2017-April/018929.html