diff --git a/.gitignore b/.gitignore index 63edfc2..e1af081 100644 --- a/.gitignore +++ b/.gitignore @@ -29,3 +29,4 @@ /jdk8u-jdk8u40-b01.tar.xz /jdk8u-jdk8u40-b02.tar.xz /jdk8u-jdk8u20-b26.tar.xz +/aarch64-hotspot-jdk8u40-b02.tar.xz diff --git a/java-1.8.0-openjdk.spec b/java-1.8.0-openjdk.spec index fb88e49..d82723c 100644 --- a/java-1.8.0-openjdk.spec +++ b/java-1.8.0-openjdk.spec @@ -1,14 +1,12 @@ # If debug is 1, OpenJDK is built with all debug info present. %global debug 0 -%global aarch64_hg_tag 992 - %global aarch64 aarch64 arm64 armv8 # sometimes we need to distinguish big and little endian PPC64 %global ppc64le ppc64le %global ppc64be ppc64 ppc64p7 %global multilib_arches %{power64} sparc64 x86_64 -%global jit_arches %{ix86} x86_64 sparcv9 sparc64 %{aarch64} %{ppc64le} +%global jit_arches %{ix86} x86_64 sparcv9 sparc64 %{aarch64} %{ppc64} # With diabled nss is NSS deactivated, so in NSS_LIBDIR can be wrong path # the initialisation must be here. LAter the pkg-connfig have bugy behaviour @@ -98,8 +96,8 @@ %global origin openjdk %global updatever 40 %global buildver b02 -%global aarch64_updatever 0 -%global aarch64_buildver b128 +%global aarch64_updatever 40 +%global aarch64_buildver b02 # priority must be 6 digits in total %global priority 18000%{updatever} %global javaver 1.8.0 @@ -137,7 +135,7 @@ Name: java-%{javaver}-%{origin} Version: %{javaver}.%{updatever} -Release: 3.%{buildver}%{?dist} +Release: 5.%{buildver}%{?dist} # java-1.5.0-ibm from jpackage.org set Epoch to 1 for unknown reasons, # and this change was brought into RHEL-4. java-1.5.0-ibm packages # also included the epoch in their virtual provides. This created a @@ -158,7 +156,7 @@ URL: http://openjdk.java.net/ # ./generate_source_tarball.sh jdk8u jdk8u jdk8u%{updatever}-%{buildver} # ./generate_source_tarball.sh aarch64-port jdk8 %{aarch64_hg_tag} Source0: jdk8u-jdk8u%{updatever}-%{buildver}.tar.xz -Source1: aarch64-hotspot-jdk8-%{aarch64_buildver}-aarch64-%{aarch64_hg_tag}.tar.xz +Source1: aarch64-hotspot-jdk8u%{aarch64_updatever}-%{aarch64_buildver}.tar.xz # Custom README for -src subpackage Source2: README.src @@ -209,6 +207,7 @@ Patch11: hotspot-build-j-directive.patch # # OpenJDK specific patches # +Patch666: stackoverflow-ppc32_64-20140828.patch # JVM heap size changes for s390 (thanks to aph) @@ -457,12 +456,16 @@ sh %{SOURCE12} %patch9999 %endif +%ifnarch %{aarch64} +%patch666 +%endif + %patch201 %patch202 %patch203 %patch1 -%patch2 +#%patch2 %patch3 %patch4 %patch5 @@ -539,15 +542,16 @@ pushd %{buildoutputdir} bash ../../configure \ %ifnarch %{jit_arches} --with-jvm-variants=zero \ +%endif +%ifarch %{ppc64le} + --with-jvm-interpreter=cpp \ %endif --disable-zip-debug-info \ --with-milestone="fcs" \ -%ifnarch %{aarch64} --with-update-version=%{updatever} \ --with-build-number=%{buildver} \ -%else - --with-build-number=%{aarch64_buildver} \ - --with-user-release-suffix="aarch64-%{aarch64_hg_tag}" \ +%ifarch %{aarch64} + --with-user-release-suffix="aarch64-%{aarch64_updatever}-%{aarch64_buildver}" \ %endif --with-boot-jdk=/usr/lib/jvm/java-openjdk \ --with-debug-level=%{debugbuild} \ @@ -1333,6 +1337,14 @@ exit 0 %{_jvmdir}/%{jredir}/lib/accessibility.properties %changelog +* Thu Sep 04 2014 Omair Majid - 1:1.8.0.40-5.b26 +- Update aarch64 hotspot to jdk7u40-b02 to match the rest of the JDK +- commented out patch2 (obsolated by 666) +- all ppc64 added to jitarches + +* Thu Sep 04 2014 Omair Majid - 1:1.8.0.20-4.b26 +- Use the cpp interpreter on ppc64le. + * Wed Sep 03 2014 Jiri Vanek - 1:1.8.0.20-3.b26 - fixed RH1136544, orriginal issue, state of pc64le jit remians mistery diff --git a/sources b/sources index c32111d..36415f0 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ 78d96904ad6d9a7cee76849b0e49b6f0 jdk8u-jdk8u40-b02.tar.xz 94ca5a45c3cb3b85c4577d0891166007 systemtap-tapset.tar.gz -8c0436da8098f15c7bda2fa4f927e525 aarch64-hotspot-jdk8-b128-aarch64-992.tar.xz +7dcced61a647aec777d6567d6d7070da aarch64-hotspot-jdk8u40-b02.tar.xz diff --git a/stackoverflow-ppc32_64-20140828.patch b/stackoverflow-ppc32_64-20140828.patch new file mode 100644 index 0000000..cdd2265 --- /dev/null +++ b/stackoverflow-ppc32_64-20140828.patch @@ -0,0 +1,37 @@ +diff -r f0d8ef4d9f93 src/os/linux/vm/os_linux.cpp +--- jdk8/hotspot/src/os/linux/vm/os_linux.cpp Wed Aug 13 15:49:58 2014 +0100 ++++ jdk8/hotspot/src/os/linux/vm/os_linux.cpp Thu Aug 28 09:51:18 2014 +0000 +@@ -4843,6 +4843,7 @@ + + pthread_mutex_init(&dl_mutex, NULL); + ++NOT_ZERO ( + // If the pagesize of the VM is greater than 8K determine the appropriate + // number of initial guard pages. The user can change this with the + // command line arguments, if needed. +@@ -4851,6 +4852,7 @@ + StackRedPages = 1; + StackShadowPages = round_to((StackShadowPages*Linux::vm_default_page_size()), vm_page_size()) / vm_page_size(); + } ++ ) + } + + // To install functions for atexit system call +@@ -4903,10 +4905,16 @@ + // size. Add a page for compiler2 recursion in main thread. + // Add in 2*BytesPerWord times page size to account for VM stack during + // class initialization depending on 32 or 64 bit VM. ++NOT_ZERO ( + os::Linux::min_stack_allowed = MAX2(os::Linux::min_stack_allowed, + (size_t)(StackYellowPages+StackRedPages+StackShadowPages) * Linux::page_size() + + (2*BytesPerWord COMPILER2_PRESENT(+1)) * Linux::vm_default_page_size()); +- ++ ) ++ZERO_ONLY ( ++ os::Linux::min_stack_allowed = MAX2(os::Linux::min_stack_allowed, ++ (size_t)(StackYellowPages+StackRedPages+StackShadowPages+ ++ 2*BytesPerWord COMPILER2_PRESENT(+1)) * Linux::page_size()); ++ ) + size_t threadStackSizeInBytes = ThreadStackSize * K; + if (threadStackSizeInBytes != 0 && + threadStackSizeInBytes < os::Linux::min_stack_allowed) {