Bug 804136 - FTBFS: build aborts on PPC (32bit), The stack size specified is too small, Specify at least 1600k
FTBFS: build aborts on PPC (32bit), The stack size specified is too small, Sp...
Product: Fedora
Classification: Fedora
Component: java-1.7.0-openjdk (Show other bugs)
powerpc Linux
urgent Severity high
: ---
: ---
Assigned To: Deepak Bhole
Fedora Extras Quality Assurance
Depends On:
  Show dependency treegraph
Reported: 2012-03-16 11:39 EDT by Karsten Hopp
Modified: 2013-04-16 08:02 EDT (History)
5 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2013-04-16 08:02:53 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Karsten Hopp 2012-03-16 11:39:19 EDT
Description of problem:
A rebuild of java-1.7.0-openjdk- on PPC aborts early with the message that the stack size is too small.

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1. ppc-koji build --scratch f17 java-1.7.0-openjdk-
Actual results:

/bin/echo -e "Main-Class: build.tools.stripproperties.StripProperties" > /builddir/build/BUILD/java-1.7.0-openjdk/openjdk/build/linux-ppc64/corba/btclasses/stripproperties_manifest.mf
/usr/lib/jvm/java-openjdk/bin/javac  -J-XX:ThreadStackSize=1536 -J-XX:-PrintVMOptions -J-XX:+UnlockDiagnosticVMOptions -J-XX:-LogVMOutput -J-Xmx512m -J-Xms512m -J-XX:PermSize=32m -J-XX:MaxPermSize=160m -encoding ascii -source 6 -target 6 -d /builddir/build/BUILD/java-1.7.0-openjdk/openjdk/build/linux-ppc64/corba/btclasses \
    -sourcepath ../../tools/src ../../tools/src/build/tools/stripproperties/StripProperties.java
The stack size specified is too small, Specify at least 1600k
Could not create the Java virtual machine.
make[4]: *** [/builddir/build/BUILD/java-1.7.0-openjdk/openjdk/build/linux-ppc64/corba/btjars/stripproperties.jar] Error 1

Expected results:

Additional info:
I've marked this as urgent as java-17.0-openjdk seems to be required to build systemtap-17, with in turn is required by the latest xorg-x11-server. So this is blocking a lot of packages on PPC.
If you need a PPC machine to debug this, I can give you access.
Comment 1 Deepak Bhole 2012-03-16 11:54:44 EDT
Adding Chris Phillips to cc:
Comment 2 Frank Ch. Eigler 2012-03-16 12:02:14 EDT
Systemtap's spec file can be parametrized to disable the with_docs part, which will skip building some documentation, and thus skip depending on fop and the rest of the java stack.
Comment 3 Karsten Hopp 2012-03-19 10:35:59 EDT
I've added the workaround in systemtap so that I can continue building packages.
But there are other packages with a direct build requirement on java-1.7 and I'd expect that this list will grow over time:
Comment 4 Chris Phillips @ TO 2012-03-19 11:38:43 EDT
Yes, seems something has gotten greedier... need the following (is 1600 enough ?):

--- old/src/os_cpu/linux_zero/vm/globals_linux_zero.hpp 2012-03-19 11:37:02.000000000 -0400
+++ new/src/os_cpu/linux_zero/vm/globals_linux_zero.hpp 2012-03-19 11:37:02.000000000 -0400
@@ -32,7 +32,7 @@
 define_pd_global(bool,  DontYieldALot,           false);
-define_pd_global(intx,  ThreadStackSize,         1536);
+define_pd_global(intx,  ThreadStackSize,         1600);
 #ifdef _LP64
 define_pd_global(intx,  VMThreadStackSize,       1024);

Do we want to make this arch dependent ?
Comment 5 Deepak Bhole 2012-03-19 16:33:33 EDT
Hi Karsten,

Can you please try the above and let us know if it is OK? Thanks.
Comment 6 Karsten Hopp 2012-03-20 13:19:02 EDT
It now fails on PPC, PPC64 got aborted before it got to the point where it failed before:

/usr/lib/jvm/java-openjdk/bin/javac  -J-XX:ThreadStackSize=768 -J-XX:-PrintVMOptions -J-XX:+UnlockDiagnosticVMOptions -J-XX:-LogVMOutput -J-client -J-Xmx512m -J-Xms512m -J-XX:PermSize=32m -J-XX:MaxPermSize=160m -encoding ascii -source 6 -target 6 -d /builddir/build/BUILD/java-1.7.0-openjdk/openjdk/build/linux-ppc/corba/btclasses \
    -sourcepath ../../tools/src ../../tools/src/build/tools/stripproperties/StripProperties.java
The stack size specified is too small, Specify at least 1024k
Comment 7 Karsten Hopp 2012-03-21 12:38:34 EDT
I had to increase the ThreadStackSize to 1600 in openjdk/jdk/make/common/shared/Defs-java.gmk and  openjdk/jdk/make/common/shared/Defs-java.gmk to be able to build the package. I also had the suggested patch, but I'm not sure if that is still required with the other changes.

@@ -673,6 +678,13 @@ cp -a openjdk openjdk-boot
+%ifarch ppc ppc64 x86_64
+perl -pi -e "s/ThreadStackSize=768/ThreadStackSize=1600/"  openjdk/jdk/make/common/shared/Defs-java.gmk \
+                                                           openjdk/corba/make/common/shared/Defs-java.gmk
+perl -pi -e "s/ThreadStackSize=1536/ThreadStackSize=1600/"  openjdk/jdk/make/common/shared/Defs-java.gmk \
+                                                           openjdk/corba/make/common/shared/Defs-java.gmk
Comment 8 Chris Phillips @ TO 2012-03-21 13:55:24 EDT
Hi Thanks!
Hmm yup, think we better do it in both as the compiler is the greedy one here and that will probably hold true for users too, not just our build. Do we really need 1600 for both 32 and 64 and is that enough (not clear to me if its working OK on ppc64)? I will try to make this arch dependent.
Comment 9 Fedora End Of Life 2013-04-03 14:06:36 EDT
This bug appears to have been reported against 'rawhide' during the Fedora 19 development cycle.
Changing version to '19'.

(As we did not run this process for some time, it could affect also pre-Fedora 19 development
cycle bugs. We are very sorry. It will help us with cleanup during Fedora 19 End Of Life. Thank you.)

More information and reason for this action is here:
Comment 10 Karsten Hopp 2013-04-16 08:02:53 EDT
we have java-1.7.0-openjdk- in F18-ppc. I'll close this.

Note You need to log in before you can comment on or make changes to this bug.