diff mbox

RFR: JDK8: Merge up to jdk8u20-b16

Message ID 1402052393.23149.55.camel@localhost.localdomain
State New
Headers show

Commit Message

Edward Nevill June 6, 2014, 10:59 a.m. UTC
On Thu, 2014-06-05 at 15:43 +0100, Edward Nevill wrote:

> I appreciate that there is an increased no. of failures for hotspot over x86, however I would like to push this merge to get it off my desk and go back and look at the failures.
> 

Just to follow up on this.

Of the 19 server hotspot failures

1) 7 fail with the message "Type profiling not implemented on this platform", which is correct
2) 6 also fail on x86
3) 2 fail with illegal options to jmap. These two tests pass options to jmap which are no longer supported in JDK8, -heap and -F. The reason this appears to work on x86 is that the test suite does not use the correct path to the jdk under test and ends up picking up the default jdk (usually jdk7) which does support these options.
- 1 failed with a configuration issue (the test host didn't know its own hostname).

This leaves 3 failures which I am looking into.

FAILED: compiler/uncommontrap/TestSpecTrapClassUnloading.java
FAILED: compiler/whitebox/IsMethodCompilableTest.java
FAILED: gc/metaspace/TestPerfCountersAndMemoryPools.java

The following patch patches the exclude file to exclude the tests under 1,2 & 3 above.

Regards,
Ed.

--- CUT HERE ---
exporting patch:
# HG changeset patch
# User Edward Nevill edward.nevill@linaro.org
# Date 1402052257 -3600
#      Fri Jun 06 11:57:37 2014 +0100
# Node ID 84542d811915975cefaa1515036d4028f59bee7c
# Parent  060414387ec933317098a71e1b4b27c9e800eb9c
Revised aarch64 jtreg excludes for jdk8u20-b16

Comments

Andrew Haley June 6, 2014, 11:04 a.m. UTC | #1
On 06/06/2014 11:59 AM, Edward Nevill wrote:
> On Thu, 2014-06-05 at 15:43 +0100, Edward Nevill wrote:
> 
>> I appreciate that there is an increased no. of failures for hotspot over x86, however I would like to push this merge to get it off my desk and go back and look at the failures.
> 
> Just to follow up on this.
> 
> Of the 19 server hotspot failures
> 
> 1) 7 fail with the message "Type profiling not implemented on this platform", which is correct
> 2) 6 also fail on x86
> 3) 2 fail with illegal options to jmap. These two tests pass options to jmap which are no longer supported in JDK8, -heap and -F. The reason this appears to work on x86 is that the test suite does not use the correct path to the jdk under test and ends up picking up the default jdk (usually jdk7) which does support these options.
> - 1 failed with a configuration issue (the test host didn't know its own hostname).
> 
> This leaves 3 failures which I am looking into.
> 
> FAILED: compiler/uncommontrap/TestSpecTrapClassUnloading.java
> FAILED: compiler/whitebox/IsMethodCompilableTest.java
> FAILED: gc/metaspace/TestPerfCountersAndMemoryPools.java
> 
> The following patch patches the exclude file to exclude the tests under 1,2 & 3 above.

I'm a little bit nervous about allowing this one through right now because
we're building OS packages.  (And I'm sure that's not just Red Hat, but other
distros too.)  We perhaps should have a development branch.

Andrew.
Edward Nevill June 10, 2014, 10:28 a.m. UTC | #2
On Fri, 2014-06-06 at 12:04 +0100, Andrew Haley wrote:
> On 06/06/2014 11:59 AM, Edward Nevill wrote:
> > On Thu, 2014-06-05 at 15:43 +0100, Edward Nevill wrote:
> > 
> >> I appreciate that there is an increased no. of failures for hotspot over x86, however I would like to push this merge to get it off my desk and go back and look at the failures.
> > 
> > Just to follow up on this.
> > 
> > Of the 19 server hotspot failures
> > 
> > 1) 7 fail with the message "Type profiling not implemented on this platform", which is correct
> > 2) 6 also fail on x86
> > 3) 2 fail with illegal options to jmap. These two tests pass options to jmap which are no longer supported in JDK8, -heap and -F. The reason this appears to work on x86 is that the test suite does not use the correct path to the jdk under test and ends up picking up the default jdk (usually jdk7) which does support these options.
> > - 1 failed with a configuration issue (the test host didn't know its own hostname).
> > 
> > This leaves 3 failures which I am looking into.
> > 
> > FAILED: compiler/uncommontrap/TestSpecTrapClassUnloading.java

This is another case of Type Profiling.

The fatal error is not generated with this test because this test uses -XX:-TieredCompilation which bypasses the fatal error in C1.

The error occurs now for 2 reasons.

1. Up to u5_b13 UseTypeSpeculation was an experimental option and was set to false. In u20_b16 this has become a product option and defaults to true.

2. In arguments.cpp there was the following code.

#ifndef X86
  // Only on x86 for now
  FLAG_SET_DEFAULT(TypeProfileLevel, 0);
#endif

This has been deleted in u20_b16 (because support for TypeProfileLevel has been added to sparc).

This could be replaced for the moment with

#ifdef AARCH64
  FLAG_SET_DEFAULT(TypeProfileLevel, 0);
#endif

The alternative is to exclude all tests which set TypeProfileLevel.

I think UseTypeSpeculation can be left enabled. The implementation seems to be exclusively in machine independant parts of C2.

> > FAILED: compiler/whitebox/IsMethodCompilableTest.java
> > FAILED: gc/metaspace/TestPerfCountersAndMemoryPools.java

These two tests also fail with the current jdk8 tip (u5_b13) and also fail with the previous tip (b132), so the merge to u20_b16 is not a regression in this respect.

> I'm a little bit nervous about allowing this one through right now because
> we're building OS packages.  (And I'm sure that's not just Red Hat, but other
> distros too.)  We perhaps should have a development branch.

Any better?

Ed.
Andrew Haley June 10, 2014, 2:41 p.m. UTC | #3
On 06/10/2014 11:28 AM, Edward Nevill wrote:
> Any better?

Yes, please check it in.

Andrew.
diff mbox

Patch

diff -r 060414387ec9 -r 84542d811915 test/exclude_aarch64.txt
--- a/test/exclude_aarch64.txt	Thu Jun 05 13:06:04 2014 +0100
+++ b/test/exclude_aarch64.txt	Fri Jun 06 11:57:37 2014 +0100
@@ -1,18 +1,28 @@ 
-# Added: Wed Feb 19 2014
-# ----------------------
-# These tests all use -server on the java command line which causes
-# them to fail with the client compiler. The tests work OK on the
-# server compiler so exclude them here.
-compiler/codegen/LoadWithMask.java generic-all
-compiler/codegen/LoadWithMask2.java generic-all
-compiler/uncommontrap/UncommonTrapStackBang.java generic-all
-
-# ClassSpaceSize (aka PermGen) is not supported by Java 8
-gc/metaspace/CompressedClassSpaceSizeInJmapHeap.java	generic-all
-
-# These tests are failing on x86 - so exclude them for the moment
-gc/metaspace/TestPerfCountersAndMemoryPools.java generic-all
-runtime/SharedArchiveFile/CdsSameObjectAlignment.java generic-all
-runtime/SharedArchiveFile/CdsDifferentObjectAlignment.java generic-all
-compiler/whitebox/IsMethodCompilableTest.java generic-all
-sun/java2d/OpenGL/DrawBufImgOp.java generic-all
+# The following all fail with the message
+# "Type profiling not implemented on this platform"
+compiler/types/TestSpeculationFailedHigherEqual.jtr generic-all
+compiler/types/correctness/CorrectnessTest.jtr generic-all
+compiler/types/correctness/OffTest.jtr generic-all
+compiler/types/TestMeetTopArrayExactConstantArray.jtr generic-all
+compiler/types/TypeSpeculation.jtr generic-all
+compiler/profiling/unloadingconflict/TestProfileConflictClassUnloading.jtr generic-all
+compiler/profiling/TestUnexpectedProfilingMismatch.jtr generic-all
+#---------------------------------------------------------------------
+# These tests also fail on x86
+gc/arguments/TestMinInitialErgonomics.java generic-all
+gc/g1/TestGCLogMessages.java generic-all
+runtime/classFileParserBug/TestEmptyBootstrapMethodsAttr.java generic-all
+runtime/finalStatic/FinalStatic.java generic-all
+runtime/lambda-features/InvokespecialInterface.java generic-all
+runtime/lambda-features/TestConcreteClassWithAbstractMethod.java generic-all
+#---------------------------------------------------------------------
+# This test is bogus. It issues a "jmap -heap" command. However the -heap
+# option is not supported on the JDK8 vsn of jmap. The reason it seems
+# to work on x86 is that it issues the jmap command without any path
+# which means that it is testing the default installed jmap (usually jdk7)
+# instead of testing the jmap in the JDK8 it is supposed to be testing.
+gc/metaspace/CompressedClassSpaceSizeInJmapHeap.java generic-all
+#---------------------------------------------------------------------
+# This test is bogus. It issues a jmap with the -F options which is not
+# supported in JDK8.
+serviceability/sa/jmap-hashcode/Test8028623.java generic-all
--- CUT HERE ---