Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mac crash on osx1011-x86-2 in array copy test #9782

Open
pshipton opened this issue Jun 3, 2020 · 124 comments
Open

Mac crash on osx1011-x86-2 in array copy test #9782

pshipton opened this issue Jun 3, 2020 · 124 comments
Labels
comp:jit os:macos segfault Issues that describe segfaults / JVM crashes test failure
Milestone

Comments

@pshipton
Copy link
Member

pshipton commented Jun 3, 2020

https://ci.eclipse.org/openj9/job/Test_openjdk11_j9_sanity.functional_x86-64_mac_uma_Nightly_testList_0/5
TestArrayCopy_3
osx1011-x86-2

TestArrayCopy_3 Start Time: Wed Jun  3 02:20:17 2020 Epoch Time (ms): 1591165217431
variation: Mode619
JVM_OPTIONS:  -Xcompressedrefs -Xgcpolicy:optavgpause -Xjit 
[IncludeExcludeTestAnnotationTransformer] [INFO] exclude file is /Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_uma_Nightly_testList_0/openjdk-tests/TKG/../TestConfig/resources/excludes/latest_exclude_11.txt
...
... TestNG 6.14.2 by Cédric Beust ([email protected])
...

Unhandled exception
Type=Segmentation error vmState=0x00000000
J9Generic_Signal_Number=00000018 Signal_Number=0000000b Error_Value=00000000 Signal_Code=00000001
Handler1=000000000B69E5B0 Handler2=000000000AC98480 InaccessibleAddress=00000000000003A8
RDI=00000000B007F918 RSI=000000000D5FC218 RAX=00000000000003A8 RBX=00000000300B9014
RCX=0000000030787720 RDX=0000000000000001 R8=000000000D5FC218 R9=00000000C00DB2F2
R10=00000000B007F920 R11=00000000B007F910 R12=0000000000000000 R13=000000000D534E60
R14=00007F943B009698 R15=000000000D534B00
RIP=000000000B62FC67 GS=0000 FS=0000 RSP=00000000B007F670
RFlags=0000000000010646 CS=002B RBP=00000000B007F8F0 ERR=000003A800000004
TRAPNO=000000040000000E CPU=03A8000000040000 FAULTVADDR=00000000000003A8
XMM0 0000000000000003 (f: 3.000000, d: 1.482197e-323)
XMM1 00000000b007f2d8 (f: 2953310976.000000, d: 1.459129e-314)
XMM2 000e1781000e1781 (f: 923521.000000, d: 1.959708e-308)
XMM3 747365742f67726f (f: 795308672.000000, d: 8.887822e+252)
XMM4 4570696b532f676e (f: 1395615616.000000, d: 3.174503e+26)
XMM5 00000000df000000 (f: 3741319168.000000, d: 1.848457e-314)
XMM6 3fdd83e7258a2f3e (f: 629813056.000000, d: 4.611757e-01)
XMM7 4023687a9f1af2b1 (f: 2669343488.000000, d: 9.704061e+00)
XMM8 0000000000000003 (f: 3.000000, d: 1.482197e-323)
XMM9 63008d6a2f9976d9 (f: 798586560.000000, d: 7.808518e+168)
XMM10 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM11 ca62c1d6ca62c1d6 (f: 3395469824.000000, d: -2.193092e+50)
XMM12 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM13 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM14 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM15 0000000000000000 (f: 0.000000, d: 0.000000e+00)
Module=/Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_uma_Nightly_testList_0/openjdkbinary/j2sdk-image/lib/compressedrefs/libj9vm29.dylib
Module_base_address=000000000B600000 Symbol=_ZN32VM_BytecodeInterpreterCompressed3runEP10J9VMThread
Symbol_address=000000000B6102C0
Target=2_90_20200602_6 (Mac OS X 10.11.6)
CPU=amd64 (4 logical CPUs) (0x200000000 RAM)
----------- Stack Backtrace -----------
---------------------------------------
@pshipton pshipton added comp:vm test failure segfault Issues that describe segfaults / JVM crashes labels Jun 3, 2020
@pshipton
Copy link
Member Author

pshipton commented Jun 3, 2020

@DanHeidinga fyi

@DanHeidinga
Copy link
Member

@gacholio can you take a look at this?

@gacholio
Copy link
Contributor

gacholio commented Jun 4, 2020

Crash is here:

    frame #15: 0x000000000b62fc68 libj9vm29.dylib`VM_BytecodeInterpreterCompressed::run(J9VMThread*) [inlined] VM_BytecodeInterpreterCompressed::invokevirtualLogic(this=0x00000000b007f908, fromBytecode=true) at BytecodeInterpreter.hpp:6795:18 [opt]
    frame #16: 0x000000000b62fc0c libj9vm29.dylib`VM_BytecodeInterpreterCompressed::run(J9VMThread*) [inlined] VM_BytecodeInterpreterCompressed::invokevirtual(unsigned long*&, unsigned char*&) at BytecodeInterpreter.hpp:6807 [opt]
    frame #17: 0x000000000b62fc0c libj9vm29.dylib`VM_BytecodeInterpreterCompressed::run(this=0x00000000b007f908, vmThread=<unavailable>) at BytecodeInterpreter.hpp:10263 [opt]

Assuming we just recently entered the interpreter, the reason is:

	0x118: UDATA returnValue = 0x0000000000000011 (17)

#define J9_BCLOOP_RETURN_FROM_JIT 0x11

So it seems likely a bad object was returned from a JIT call.

@gacholio
Copy link
Contributor

gacholio commented Jun 4, 2020

The stack is not useful (vmThread roots have not been updated). Looking through the registers, R9 maps to a bytecode PC:

!findmethodfrompc 0x00000000C00DB2F2
 Searching for PC=0x00000000C00DB2F2 in VM=0x00007F943C021620...
!j9method 0x000000000D534DC0 java/lang/Object.toString()Ljava/lang/String;
Bytecode PC offset = 0x000000000000000E
> !bytecodes 0x000000000D534DC0
  Name: toString
  Signature: ()Ljava/lang/String;
  Access Flags (50001): public 
  Max Stack: 2
  Argument Count: 1
  Temp Count: 0

    0 newdup 3 java/lang/StringBuilder
    3 dup 
    4 invokespecial 4 java/lang/StringBuilder.<init>()V
    7 aload0 
    8 invokespecial 5 java/lang/Object.getClass()Ljava/lang/Class;
   11 invokevirtual 6 java/lang/Class.getName()Ljava/lang/String;
   14 invokevirtual 7 java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
   17 bipush 64
   19 invokevirtual 8 java/lang/StringBuilder.append(C)Ljava/lang/StringBuilder;
   22 aload0 
   23 invokevirtual 9 java/lang/Object.hashCode()I
   26 invokestatic 10 java/lang/Integer.toHexString(I)Ljava/lang/String;
   29 invokevirtual 7 java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
   32 invokevirtual 11 java/lang/StringBuilder.toString()Ljava/lang/String;
   35 return1 

  Debug Info:
    Line Number Table (1):
      Line:   164 PC:     0

    Variables (1):
      Slot: 0
      Visibility Start: 0
      Visibility End: 36
      Visibility Length: 36
      Name: this
      Signature: Ljava/lang/Object;
      Generic Signature: None

@gacholio
Copy link
Contributor

gacholio commented Jun 4, 2020

My best guess at the stack (from the registers and hand-examining the memory) is:

> !stackslots 0xd51d700,0x0D5FC218,0x0D5FC240,0x00000000C00DB2F2,0x000000000D534DC0
<d51d700> *** BEGIN STACK WALK, flags = 00400001 walkThread = 0x000000000D51D700 ***
<d51d700> 	ITERATE_O_SLOTS
<d51d700> 	RECORD_BYTECODE_PC_OFFSET
<d51d700> Initial values: walkSP = 0x000000000D5FC218, PC = 0x00000000C00DB2F2, literals = 0x000000000D534DC0, A0 = 0x000000000D5FC240, j2iFrame = 0x0000000000000000, ELS = 0x00000000B007FAD8, decomp = 0x0000000000000000
<d51d700> Bytecode frame: bp = 0x000000000D5FC238, sp = 0x000000000D5FC218, pc = 0x00000000C00DB2F2, cp = 0x000000000D534E60, arg0EA = 0x000000000D5FC240, flags = 0x0000000000000000
<d51d700> 	Method: java/lang/Object.toString()Ljava/lang/String; !j9method 0x000000000D534DC0
<d51d700> 	Bytecode index = 14
<d51d700> 	Using local mapper
<d51d700> 	Locals starting at 0x000000000D5FC240 for 0x0000000000000001 slots
<d51d700> 		O-Slot: a0[0x000000000D5FC240] = 0x0000000030685868
<d51d700> 	Pending stack starting at 0x000000000D5FC220 for UDATA(0x0000000000000002) slots
<d51d700> 		O-Slot: p0[0x000000000D5FC220] = 0x0000000030787720
<d51d700> 		O-Slot: p1[0x000000000D5FC218] = 0x00000000300B9050
<d51d700> Bytecode frame: bp = 0x000000000D5FC258, sp = 0x000000000D5FC248, pc = 0x000000002624FDD3, cp = 0x000000000D87DB90, arg0EA = 0x000000000D5FC2B8, flags = 0x0000000000000000
<d51d700> 	Method: org/testng/internal/TestResult.init(Lorg/testng/IClass;Ljava/lang/Object;Lorg/testng/ITestNGMethod;Ljava/lang/Throwable;JJLorg/testng/ITestContext;)V !j9method 0x000000000D87E2E8
<d51d700> 	Bytecode index = 143
<d51d700> 	Using local mapper
<d51d700> 	Locals starting at 0x000000000D5FC2B8 for 0x000000000000000C slots
<d51d700> 		O-Slot: a0[0x000000000D5FC2B8] = 0x0000000030787690
<d51d700> 		I-Slot: a1[0x000000000D5FC2B0] = 0x00000000301833D8
<d51d700> 		I-Slot: a2[0x000000000D5FC2A8] = 0x0000000030685868
<d51d700> 		I-Slot: a3[0x000000000D5FC2A0] = 0x00000000306CD228
<d51d700> 		I-Slot: a4[0x000000000D5FC298] = 0x0000000030787580
<d51d700> 		I-Slot: a5[0x000000000D5FC290] = 0x000000000D87E2C8
<d51d700> 		I-Slot: a6[0x000000000D5FC288] = 0x0000017278D7A005
<d51d700> 		I-Slot: a7[0x000000000D5FC280] = 0x00000000307876F8
<d51d700> 		I-Slot: a8[0x000000000D5FC278] = 0x0000017278D7F65D
<d51d700> 		I-Slot: a9[0x000000000D5FC270] = 0x000000003016EED0
<d51d700> 		I-Slot: t10[0x000000000D5FC268] = 0x00000000307876F8
<d51d700> 		I-Slot: t11[0x000000000D5FC260] = 0x00000000307876F8
<d51d700> Bytecode frame: bp = 0x000000000D5FC2D0, sp = 0x000000000D5FC2C0, pc = 0x000000002624FD0E, cp = 0x000000000D87DB90, arg0EA = 0x000000000D5FC320, flags = 0x0000000000000000
<d51d700> 	Method: org/testng/internal/TestResult.<init>(Lorg/testng/IClass;Ljava/lang/Object;Lorg/testng/ITestNGMethod;Ljava/lang/Throwable;JJLorg/testng/ITestContext;)V !j9method 0x000000000D87E2C8
<d51d700> 	Bytecode index = 70
<d51d700> 	Using local mapper
<d51d700> 	Locals starting at 0x000000000D5FC320 for 0x000000000000000A slots
<d51d700> 		I-Slot: a0[0x000000000D5FC320] = 0x0000000030787690
<d51d700> 		I-Slot: a1[0x000000000D5FC318] = 0x00000000301833D8
<d51d700> 		I-Slot: a2[0x000000000D5FC310] = 0x0000000030685868
<d51d700> 		I-Slot: a3[0x000000000D5FC308] = 0x00000000306CD228
<d51d700> 		I-Slot: a4[0x000000000D5FC300] = 0x0000000030787580
<d51d700> 		I-Slot: a5[0x000000000D5FC2F8] = 0x00000000301833D8
<d51d700> 		I-Slot: a6[0x000000000D5FC2F0] = 0x0000017278D7A005
<d51d700> 		I-Slot: a7[0x000000000D5FC2E8] = 0x000000000D84E010
<d51d700> 		I-Slot: a8[0x000000000D5FC2E0] = 0x0000017278D7F65D
<d51d700> 		I-Slot: a9[0x000000000D5FC2D8] = 0x000000003016EED0
<d51d700> Bytecode frame: bp = 0x000000000D5FC340, sp = 0x000000000D5FC328, pc = 0x000000002621648C, cp = 0x000000000D84C370, arg0EA = 0x000000000D5FC458, flags = 0x0000000000000000
<d51d700> 	Method: org/testng/internal/Invoker.invokeTestMethods(Lorg/testng/ITestNGMethod;Lorg/testng/xml/XmlSuite;Ljava/util/Map;Lorg/testng/internal/ConfigurationGroupMethods;Ljava/lang/Object;Lorg/testng/ITestContext;)Ljava/util/List; !j9method 0x000000000D84E010
<d51d700> 	Bytecode index = 1,124
<d51d700> 	Using local mapper
<d51d700> 	Locals starting at 0x000000000D5FC458 for 0x0000000000000023 slots
<d51d700> 		O-Slot: a0[0x000000000D5FC458] = 0x0000000030173178
<d51d700> 		O-Slot: a1[0x000000000D5FC450] = 0x00000000306CD228
<d51d700> 		O-Slot: a2[0x000000000D5FC448] = 0x0000000030135AA0
<d51d700> 		I-Slot: a3[0x000000000D5FC440] = 0x0000000030800CE0
<d51d700> 		O-Slot: a4[0x000000000D5FC438] = 0x000000003076B280
<d51d700> 		O-Slot: a5[0x000000000D5FC430] = 0x0000000030685868
<d51d700> 		O-Slot: a6[0x000000000D5FC428] = 0x000000003016EED0
<d51d700> 		I-Slot: t7[0x000000000D5FC420] = 0x0000000000000000
<d51d700> 		O-Slot: t8[0x000000000D5FC418] = 0x00000000306D2648
<d51d700> 		I-Slot: t9[0x000000000D5FC410] = 0x000000000D87CFC8
<d51d700> 		I-Slot: t10[0x000000000D5FC408] = 0x0000000000000000
<d51d700> 		I-Slot: t11[0x000000000D5FC400] = 0x0000000000000000
<d51d700> 		I-Slot: t12[0x000000000D5FC3F8] = 0x0000000000000000
<d51d700> 		O-Slot: t13[0x000000000D5FC3F0] = 0x00000000306D26A0
<d51d700> 		O-Slot: t14[0x000000000D5FC3E8] = 0x00000000301833D8
<d51d700> 		O-Slot: t15[0x000000000D5FC3E0] = 0x00000000306D2728
<d51d700> 		O-Slot: t16[0x000000000D5FC3D8] = 0x00000000306D2740
<d51d700> 		O-Slot: t17[0x000000000D5FC3D0] = 0x00000000306D2780
<d51d700> 		O-Slot: t18[0x000000000D5FC3C8] = 0x00000000306D27A8
<d51d700> 		I-Slot: t19[0x000000000D5FC3C0] = 0x000000000D8715F8
<d51d700> 		I-Slot: t20[0x000000000D5FC3B8] = 0x0000017278D7A005
<d51d700> 		I-Slot: t21[0x000000000D5FC3B0] = 0x00000000306D27B8
<d51d700> 		I-Slot: t22[0x000000000D5FC3A8] = 0x00000000306D27E0
<d51d700> 		I-Slot: t23[0x000000000D5FC3A0] = 0x00000000306D2A20
<d51d700> 		I-Slot: t24[0x000000000D5FC398] = 0x00000000306D29F8
<d51d700> 		I-Slot: t25[0x000000000D5FC390] = 0x0000000000000000
<d51d700> 		I-Slot: t26[0x000000000D5FC388] = 0x0000000030787580
<d51d700> 		I-Slot: t27[0x000000000D5FC380] = 0x00000000306D2EF0
<d51d700> 		I-Slot: t28[0x000000000D5FC378] = 0x00000000306D2F00
<d51d700> 		I-Slot: t29[0x000000000D5FC370] = 0x00000000FFFFFFFF
<d51d700> 		I-Slot: t30[0x000000000D5FC368] = 0x00000000307CCC08
<d51d700> 		I-Slot: t31[0x000000000D5FC360] = 0x00000000307CCC08
<d51d700> 		I-Slot: t32[0x000000000D5FC358] = 0x0000000030787580
<d51d700> 		I-Slot: t33[0x000000000D5FC350] = 0x0000000000000000
<d51d700> 		I-Slot: t34[0x000000000D5FC348] = 0x000000000D8864B8
<d51d700> 	Pending stack starting at 0x000000000D5FC328 for UDATA(0x0000000000000001) slots
<d51d700> 		O-Slot: p0[0x000000000D5FC328] = 0x0000000030787690
<d51d700> Bytecode frame: bp = 0x000000000D5FC470, sp = 0x000000000D5FC460, pc = 0x000000002624DB71, cp = 0x000000000D87C5A0, arg0EA = 0x000000000D5FC498, flags = 0x0000000000000000
<d51d700> 	Method: org/testng/internal/TestMethodWorker.invokeTestMethods(Lorg/testng/ITestNGMethod;Ljava/lang/Object;Lorg/testng/ITestContext;)V !j9method 0x000000000D87CFA8
<d51d700> 	Bytecode index = 21
<d51d700> 	Using local mapper
<d51d700> 	Locals starting at 0x000000000D5FC498 for 0x0000000000000005 slots
<d51d700> 		O-Slot: a0[0x000000000D5FC498] = 0x00000000308083F8
<d51d700> 		I-Slot: a1[0x000000000D5FC490] = 0x00000000306CD228
<d51d700> 		I-Slot: a2[0x000000000D5FC488] = 0x0000000030685868
<d51d700> 		I-Slot: a3[0x000000000D5FC480] = 0x000000003016EED0
<d51d700> 		I-Slot: t4[0x000000000D5FC478] = 0x000000002624DAB8
<d51d700> Bytecode frame: bp = 0x000000000D5FC4B0, sp = 0x000000000D5FC4A0, pc = 0x000000002624DABF, cp = 0x000000000D87C5A0, arg0EA = 0x000000000D5FC4E0, flags = 0x0000000000000000
<d51d700> 	Method: org/testng/internal/TestMethodWorker.run()V !j9method 0x000000000D87CF88
<d51d700> 	Bytecode index = 63
<d51d700> 	Using local mapper
<d51d700> 	Locals starting at 0x000000000D5FC4E0 for 0x0000000000000006 slots
<d51d700> 		O-Slot: a0[0x000000000D5FC4E0] = 0x00000000308083F8
<d51d700> 		O-Slot: t1[0x000000000D5FC4D8] = 0x00000000306D25D0
<d51d700> 		O-Slot: t2[0x000000000D5FC4D0] = 0x0000000030800BC8
<d51d700> 		I-Slot: t3[0x000000000D5FC4C8] = 0x00000000306CD228
<d51d700> 		O-Slot: t4[0x000000000D5FC4C0] = 0x00000000301833D8
<d51d700> 		I-Slot: t5[0x000000000D5FC4B8] = 0x000000000D845DD8
<d51d700> Bytecode frame: bp = 0x000000000D5FC4F8, sp = 0x000000000D5FC4E8, pc = 0x00000000262087F2, cp = 0x000000000D844320, arg0EA = 0x000000000D5FC540, flags = 0x0000000000000000
<d51d700> 	Method: org/testng/TestRunner.privateRun(Lorg/testng/xml/XmlTest;)V !j9method 0x000000000D845DD8
<d51d700> 	Bytecode index = 302
<d51d700> 	Using local mapper
<d51d700> 	Locals starting at 0x000000000D5FC540 for 0x0000000000000009 slots
<d51d700> 		O-Slot: a0[0x000000000D5FC540] = 0x000000003016EED0
<d51d700> 		I-Slot: a1[0x000000000D5FC538] = 0x00000000300B2098
<d51d700> 		I-Slot: t2[0x000000000D5FC530] = 0x0000000000000000
<d51d700> 		I-Slot: t3[0x000000000D5FC528] = 0x0000000000000001
<d51d700> 		O-Slot: t4[0x000000000D5FC520] = 0x00000000307DDD08
<d51d700> 		O-Slot: t5[0x000000000D5FC518] = 0x00000000307E7D60
<d51d700> 		I-Slot: t6[0x000000000D5FC510] = 0x00000000308008E0
<d51d700> 		O-Slot: t7[0x000000000D5FC508] = 0x0000000030808568
<d51d700> 		I-Slot: t8[0x000000000D5FC500] = 0x00000000308083F8
<d51d700> Bytecode frame: bp = 0x000000000D5FC558, sp = 0x000000000D5FC548, pc = 0x0000000026208561, cp = 0x000000000D844320, arg0EA = 0x000000000D5FC570, flags = 0x0000000000000000
<d51d700> 	Method: org/testng/TestRunner.run()V !j9method 0x000000000D845D78
<d51d700> 	Bytecode index = 25
<d51d700> 	Using local mapper
<d51d700> 	Locals starting at 0x000000000D5FC570 for 0x0000000000000003 slots
<d51d700> 		O-Slot: a0[0x000000000D5FC570] = 0x000000003016EED0
<d51d700> 		I-Slot: t1[0x000000000D5FC568] = 0x00000000300B2098
<d51d700> 		I-Slot: t2[0x000000000D5FC560] = 0x00000000261FBF81
<d51d700> Bytecode frame: bp = 0x000000000D5FC588, sp = 0x000000000D5FC578, pc = 0x00000000261FBF81, cp = 0x000000000D83F2B0, arg0EA = 0x000000000D5FC5A0, flags = 0x0000000000000000
<d51d700> 	Method: org/testng/SuiteRunner.runTest(Lorg/testng/TestRunner;)V !j9method 0x000000000D840410
<d51d700> 	Bytecode index = 1
<d51d700> 	Using local mapper
<d51d700> 	Locals starting at 0x000000000D5FC5A0 for 0x0000000000000003 slots
<d51d700> 		O-Slot: a0[0x000000000D5FC5A0] = 0x000000003016C4E0
<d51d700> 		O-Slot: a1[0x000000000D5FC598] = 0x000000003016EED0
<d51d700> 		I-Slot: t2[0x000000000D5FC590] = 0x000000000D5FC5D2
<d51d700> Bytecode frame: bp = 0x000000000D5FC5B8, sp = 0x000000000D5FC5A8, pc = 0x00000000261FBF3F, cp = 0x000000000D83F2B0, arg0EA = 0x000000000D5FC5D0, flags = 0x0000000000000000
<d51d700> 	Method: org/testng/SuiteRunner.runSequentially()V !j9method 0x000000000D8403F0
<d51d700> 	Bytecode index = 31
<d51d700> 	Using local mapper
<d51d700> 	Locals starting at 0x000000000D5FC5D0 for 0x0000000000000003 slots
<d51d700> 		O-Slot: a0[0x000000000D5FC5D0] = 0x000000003016C4E0
<d51d700> 		O-Slot: t1[0x000000000D5FC5C8] = 0x00000000307BF120
<d51d700> 		I-Slot: t2[0x000000000D5FC5C0] = 0x000000003016EED0
<d51d700> Bytecode frame: bp = 0x000000000D5FC5E8, sp = 0x000000000D5FC5D8, pc = 0x00000000261FBD98, cp = 0x000000000D83F2B0, arg0EA = 0x000000000D5FC638, flags = 0x0000000000000000
<d51d700> 	Method: org/testng/SuiteRunner.privateRun()V !j9method 0x000000000D840370
<d51d700> 	Bytecode index = 288
<d51d700> 	Using local mapper
<d51d700> 	Locals starting at 0x000000000D5FC638 for 0x000000000000000A slots
<d51d700> 		O-Slot: a0[0x000000000D5FC638] = 0x000000003016C4E0
<d51d700> 		I-Slot: t1[0x000000000D5FC630] = 0x00000000307BEFB0
<d51d700> 		O-Slot: t2[0x000000000D5FC628] = 0x00000000307BEFE8
<d51d700> 		O-Slot: t3[0x000000000D5FC620] = 0x0000000030173178
<d51d700> 		I-Slot: t4[0x000000000D5FC618] = 0x0000000000000000
<d51d700> 		I-Slot: t5[0x000000000D5FC610] = 0x000000003016EED0
<d51d700> 		I-Slot: t6[0x000000000D5FC608] = 0x0000000030764698
<d51d700> 		I-Slot: t7[0x000000000D5FC600] = 0x0000000000000000
<d51d700> 		I-Slot: t8[0x000000000D5FC5F8] = 0x0000000000000000
<d51d700> 		I-Slot: t9[0x000000000D5FC5F0] = 0x00000000261FB9AA
<d51d700> Bytecode frame: bp = 0x000000000D5FC650, sp = 0x000000000D5FC640, pc = 0x00000000261FBC16, cp = 0x000000000D83F2B0, arg0EA = 0x000000000D5FC660, flags = 0x0000000000000000
<d51d700> 	Method: org/testng/SuiteRunner.run()V !j9method 0x000000000D840350
<d51d700> 	Bytecode index = 6
<d51d700> 	Using local mapper
<d51d700> 	Locals starting at 0x000000000D5FC660 for 0x0000000000000002 slots
<d51d700> 		O-Slot: a0[0x000000000D5FC660] = 0x000000003016C4E0
<d51d700> 		I-Slot: t1[0x000000000D5FC658] = 0x000000000D5FC6AA
<d51d700> Bytecode frame: bp = 0x000000000D5FC678, sp = 0x000000000D5FC668, pc = 0x00000000262426EF, cp = 0x000000000D876E90, arg0EA = 0x000000000D5FC6A8, flags = 0x0000000000000000
<d51d700> 	Method: org/testng/SuiteRunnerWorker.runSuite(Lorg/testng/internal/SuiteRunnerMap;Lorg/testng/xml/XmlSuite;)V !j9method 0x000000000D877610
<d51d700> 	Bytecode index = 87
<d51d700> 	Using local mapper
<d51d700> 	Locals starting at 0x000000000D5FC6A8 for 0x0000000000000006 slots
<d51d700> 		I-Slot: a0[0x000000000D5FC6A8] = 0x00000000307BE528
<d51d700> 		O-Slot: a1[0x000000000D5FC6A0] = 0x000000003016B708
<d51d700> 		O-Slot: a2[0x000000000D5FC698] = 0x000000003013E098
<d51d700> 		I-Slot: t3[0x000000000D5FC690] = 0x000000003016C4E0
<d51d700> 		I-Slot: t4[0x000000000D5FC688] = 0x0000000026242804
<d51d700> 		I-Slot: t5[0x000000000D5FC680] = 0x000000000D877630
<d51d700> Bytecode frame: bp = 0x000000000D5FC6C0, sp = 0x000000000D5FC6B0, pc = 0x0000000026242804, cp = 0x000000000D876E90, arg0EA = 0x000000000D5FC6C8, flags = 0x0000000000000000
<d51d700> 	Method: org/testng/SuiteRunnerWorker.run()V !j9method 0x000000000D877630
<d51d700> 	Bytecode index = 12
<d51d700> 	Using local mapper
<d51d700> 	Locals starting at 0x000000000D5FC6C8 for 0x0000000000000001 slots
<d51d700> 		I-Slot: a0[0x000000000D5FC6C8] = 0x00000000307BE528
<d51d700> Bytecode frame: bp = 0x000000000D5FC6E0, sp = 0x000000000D5FC6D0, pc = 0x0000000025248316, cp = 0x000000000D6A4220, arg0EA = 0x000000000D5FC718, flags = 0x0000000000000000
<d51d700> 	Method: org/testng/TestNG.runSuitesSequentially(Lorg/testng/xml/XmlSuite;Lorg/testng/internal/SuiteRunnerMap;ILjava/lang/String;)V !j9method 0x000000000D6A6FD8
<d51d700> 	Bytecode index = 66
<d51d700> 	Using local mapper
<d51d700> 	Locals starting at 0x000000000D5FC718 for 0x0000000000000007 slots
<d51d700> 		I-Slot: a0[0x000000000D5FC718] = 0x00000000300A7160
<d51d700> 		I-Slot: a1[0x000000000D5FC710] = 0x000000003013E098
<d51d700> 		I-Slot: a2[0x000000000D5FC708] = 0x000000003016B708
<d51d700> 		I-Slot: a3[0x000000000D5FC700] = 0x0000000000000002
<d51d700> 		I-Slot: a4[0x000000000D5FC6F8] = 0x00000000300A5738
<d51d700> 		I-Slot: t5[0x000000000D5FC6F0] = 0x00000000307BE528
<d51d700> 		I-Slot: t6[0x000000000D5FC6E8] = 0x00000000252480D4
<d51d700> Bytecode frame: bp = 0x000000000D5FC730, sp = 0x000000000D5FC720, pc = 0x00000000252480D4, cp = 0x000000000D6A4220, arg0EA = 0x000000000D5FC760, flags = 0x0000000000000000
<d51d700> 	Method: org/testng/TestNG.runSuitesLocally()Ljava/util/List; !j9method 0x000000000D6A6F78
<d51d700> 	Bytecode index = 156
<d51d700> 	Using local mapper
<d51d700> 	Locals starting at 0x000000000D5FC760 for 0x0000000000000006 slots
<d51d700> 		O-Slot: a0[0x000000000D5FC760] = 0x00000000300A7160
<d51d700> 		O-Slot: t1[0x000000000D5FC758] = 0x000000003016B708
<d51d700> 		O-Slot: t2[0x000000000D5FC750] = 0x00000000307B5EF0
<d51d700> 		I-Slot: t3[0x000000000D5FC748] = 0x000000003013E098
<d51d700> 		I-Slot: t4[0x000000000D5FC740] = 0x0000000000000000
<d51d700> 		I-Slot: t5[0x000000000D5FC738] = 0x000000000D6A6EB8
<d51d700> Bytecode frame: bp = 0x000000000D5FC778, sp = 0x000000000D5FC768, pc = 0x0000000025247D51, cp = 0x000000000D6A4220, arg0EA = 0x000000000D5FC780, flags = 0x0000000000000000
<d51d700> 	Method: org/testng/TestNG.runSuites()Ljava/util/List; !j9method 0x000000000D6A6E98
<d51d700> 	Bytecode index = 1
<d51d700> 	Using local mapper
<d51d700> 	Locals starting at 0x000000000D5FC780 for 0x0000000000000001 slots
<d51d700> 		I-Slot: a0[0x000000000D5FC780] = 0x000000003014A918
<d51d700> Bytecode frame: bp = 0x000000000D5FC798, sp = 0x000000000D5FC788, pc = 0x0000000025247CBD, cp = 0x000000000D6A4220, arg0EA = 0x000000000D5FC7A8, flags = 0x0000000000000000
<d51d700> 	Method: org/testng/TestNG.run()V !j9method 0x000000000D6A6E78
<d51d700> 	Bytecode index = 25
<d51d700> 	Using local mapper
<d51d700> 	Locals starting at 0x000000000D5FC7A8 for 0x0000000000000002 slots
<d51d700> 		O-Slot: a0[0x000000000D5FC7A8] = 0x00000000300A7160
<d51d700> 		I-Slot: t1[0x000000000D5FC7A0] = 0x000000000D5FC7E2
<d51d700> Bytecode frame: bp = 0x000000000D5FC7C0, sp = 0x000000000D5FC7B0, pc = 0x0000000025248767, cp = 0x000000000D6A4220, arg0EA = 0x000000000D5FC7E0, flags = 0x0000000000000000
<d51d700> 	Method: org/testng/TestNG.privateMain([Ljava/lang/String;Lorg/testng/ITestListener;)Lorg/testng/TestNG; !j9method 0x000000000D6A7098
<d51d700> 	Bytecode index = 59
<d51d700> 	Using local mapper
<d51d700> 	Locals starting at 0x000000000D5FC7E0 for 0x0000000000000004 slots
<d51d700> 		I-Slot: a0[0x000000000D5FC7E0] = 0x000000003012AB80
<d51d700> 		I-Slot: a1[0x000000000D5FC7D8] = 0x0000000000000000
<d51d700> 		O-Slot: t2[0x000000000D5FC7D0] = 0x00000000300A7160
<d51d700> 		I-Slot: t3[0x000000000D5FC7C8] = 0x000000003020F7E8
<d51d700> Bytecode frame: bp = 0x000000000D5FC7F8, sp = 0x000000000D5FC7E8, pc = 0x00000000252486F6, cp = 0x000000000D6A4220, arg0EA = 0x000000000D5FC808, flags = 0x0000000000000000
<d51d700> 	Method: org/testng/TestNG.main([Ljava/lang/String;)V !j9method 0x000000000D6A7078
<d51d700> 	Bytecode index = 2
<d51d700> 	Using local mapper
<d51d700> 	Locals starting at 0x000000000D5FC808 for 0x0000000000000002 slots
<d51d700> 		I-Slot: a0[0x000000000D5FC808] = 0x000000003012AB80
<d51d700> 		I-Slot: t1[0x000000000D5FC800] = 0x000000000D5FC828
<d51d700> JNI call-in frame: bp = 0x000000000D5FC830, sp = 0x000000000D5FC810, pc = 0x000000000B7E0480, cp = 0x0000000000000000, arg0EA = 0x000000000D5FC830, flags = 0x0000000000020000
<d51d700> 	New ELS = 0x0000000000000000
<d51d700> JNI native method frame: bp = 0x000000000D5FC8D8, sp = 0x000000000D5FC838, pc = 0x0000000000000007, cp = 0x0000000000000000, arg0EA = 0x000000000D5FC8D8, flags = 0x0000000000000010
<d51d700> 	Object pushes starting at 0x000000000D5FC838 for 16 slots
<d51d700> 		Push[0x000000000D5FC838] = 0x0000000030000000
<d51d700> 		Push[0x000000000D5FC840] = 0x000000003009E9C0
<d51d700> 		Push[0x000000000D5FC848] = 0x0000000000000000
<d51d700> 		Push[0x000000000D5FC850] = 0x0000000000000000
<d51d700> 		Push[0x000000000D5FC858] = 0x00000000300A3368
<d51d700> 		Push[0x000000000D5FC860] = 0x0000000030001818
<d51d700> 		Push[0x000000000D5FC868] = 0x000000003009E968
<d51d700> 		Push[0x000000000D5FC870] = 0x000000003009E968
<d51d700> 		Push[0x000000000D5FC878] = 0x00000000300771E0
<d51d700> 		Push[0x000000000D5FC880] = 0x0000000000000000
<d51d700> 		Push[0x000000000D5FC888] = 0x000000003007BB00
<d51d700> 		Push[0x000000000D5FC890] = 0x0000000030008DE8
<d51d700> 		Push[0x000000000D5FC898] = 0x0000000030008D38
<d51d700> 		Push[0x000000000D5FC8A0] = 0x00000000300010E0
<d51d700> 		Push[0x000000000D5FC8A8] = 0x0000000030003F20
<d51d700> 		Push[0x000000000D5FC8B0] = 0x0000000030000000
<d51d700> <end of stack>
<d51d700> *** END STACK WALK (rc = NONE) ***

@gacholio
Copy link
Contributor

gacholio commented Jun 4, 2020

> !j9object 0x0000000030685868 <--- this
!J9Object 0x0000000030685868 {
	struct J9Class* clazz = !j9class 0xD818100 // j9vm/test/arrayCopy/ArrayCopyTest
	Object flags = 0x00000008;
	I lockword = 0x00000000 (offset = 0) (java/lang/Object) <hidden>
}
> !j9object 0x00000000300B9050 <--- this.getName()
J9VMJavaLangString at 0x00000000300B9050 {
struct J9Class* clazz = !j9class 0xD541400 // java/lang/String
Object flags = 0x00000000;
[B value = !fj9object 0x300b2198 (offset = 0) (java/lang/String)
B coder = 0x00000001 (offset = 4) (java/lang/String)
I hashCode = 0x1E58820C (offset = 8) (java/lang/String)
"j9vm.test.arrayCopy.ArrayCopyTest"
}
> !j9object 0x0000000030787720 <--- StringBuilder
Unable to read object clazz at 0x0000000030787720 (clazz = (null))

So the String argument is fine, but the StringBuilder appears to be trash.

@gacholio
Copy link
Contributor

gacholio commented Jun 4, 2020

I suspect jitted AbstractStringBuilder.init(I)V returned the bad object:

> !j9method 0x000000000D5AC0F8
J9Method at 0xd5ac0f8 {
  Fields for J9Method:
	0x0: U8* bytecodes = !j9x 0x00000000C0198AF4
	0x8: struct J9ConstantPool* constantPool = !j9constantpool 0x000000000D5AD7A0 (flags = 0x0)
	0x10: void* methodRunAddress = !j9x 0x0000000000000006
	0x18: void* extra = !j9x 0x0000000000000783
}
Signature: java/lang/StringBuilder.<init>()V !bytecodes 0x000000000D5AC0F8
ROM Method: !j9rommethod 0x00000000C0198AE0
Next Method: !j9method 0x000000000D5AC118
> !bytecodes 0x000000000D5AC0F8
  Name: <init>
  Signature: ()V
  Access Flags (21040001): public 
  Max Stack: 2
  Argument Count: 1
  Temp Count: 0

    0 aload0 
    1 bipush 16
    3 invokespecial 1 java/lang/AbstractStringBuilder.<init>(I)V
    6 returnFromConstructor 

> !j9method 0x000000000D5AA760
J9Method at 0xd5aa760 {
  Fields for J9Method:
	0x0: U8* bytecodes = !j9x 0x00000000C019AA88
	0x8: struct J9ConstantPool* constantPool = !j9constantpool 0x000000000D5AB140 (flags = 0x0)
	0x10: void* methodRunAddress = !j9x 0x0000000000000018
	0x18: void* extra = !j9x 0x00000000B00ADC80
}
Signature: java/lang/AbstractStringBuilder.<init>(I)V !bytecodes 0x000000000D5AA760
ROM Method: !j9rommethod 0x00000000C019AA74
Next Method: !j9method 0x000000000D5AA780

@gacholio gacholio added comp:jit and removed comp:vm labels Jun 4, 2020
@gacholio
Copy link
Contributor

gacholio commented Jun 4, 2020

@andrewcraik

@andrewcraik
Copy link
Contributor

@gacholio / @DanHeidinga do you have any failure rate information for this or any history of when it might have started. I agree we should look at it, but I'm not sure if 0.21 is an appropriate target.

@cathyzhyi could you help find someone to look at this? Note the 0.21 tag.

@DanHeidinga
Copy link
Member

any history of when it might have started.

It appears to be a new failure we haven't seen before. The first instance I can find is the one in the opening description.

but I'm not sure if 0.21 is an appropriate target.

I added the 0.21 tag to ensure there would be a conversation about whether this is stop-ship or not given it appears to be a newly introduced (exposed?) issue

@andrewcraik
Copy link
Contributor

@liqunl could you have a sniff?

@liqunl
Copy link
Contributor

liqunl commented Jun 6, 2020

I looked at the disassembly of java/lang/AbstractStringBuilder.<init>(I)V, haven't found anything suspicious.
I have also tried to reproduce the failure on my laptop, but haven't seen one in 50 runs. I'll try if I can reproduce it with grinders.

@liqunl
Copy link
Contributor

liqunl commented Jun 9, 2020

I've tried another 50 runs on my laptop, no reproduce. I'm trying to run grinders on internal jenkins, but I can't find a Mac uma build. @pshipton What is a Mac uma build? How is it different from Mac build?

@pshipton
Copy link
Member Author

pshipton commented Jun 9, 2020

A Mac uma build is using the old (uma) makefile system, any build before May 28th used this. Since ibmruntimes/openj9-openjdk-jdk11#308 was merged, the jdk11 Mac builds use the cmake build system, which is supposed to generate the same binaries. We continue to run a nightly build using the old uma makefile system in case any problems occur, we can compare between the two builds. Likely the problem isn't particular to the uma build, it's just intermittent and happened in that build. We'll be switching the xlinux cmake jdk11 build to cmake next, ideally before the end of next week.

@liqunl
Copy link
Contributor

liqunl commented Jun 10, 2020

I tried 100 jobs on internal grinder, still can't reproduce the issue. So far the crash is not reproducible in 200 jobs.

@liqunl
Copy link
Contributor

liqunl commented Jun 11, 2020

The StringBuilder object seems to be corrupted by array zero initialization instruction in the jitted code. The zero initialization is accomplished by rep stosb and it seems to be doing backward store in this case.

The bad StringBuilder object has everything right except the header. The header is zero. However, the header can’t be zero when passed to the jitted code, as the jitted code read a flag on the object's j9class to check if the object is finalizable.

I double checked the jitted code to see if it’s possible that we can write to the StringBuilder object.
Notice that the jitted code will create a byte array and assign it to StringBuilder.value. Both the StringBuilder and the byte array are in TLH and they’re next to each other with a few padding bytes in between. The byte array is supposed to be zero initialized and remain so before we crash. But not all elements are zero.

> !j9x 0x0000000030787720,32,4,1  
0x30787720 :  00000000 [ .... ]. <— StringBuilder object
0x30787724 :  00000000 [ .... ] 
0x30787728 :  30787738 [ 8wx0 ]  <— value field, byte array of 32 elements
0x3078772C :  00000001 [ .... ]  <— coder field
0x30787730 :  00000000 [ .... ]  <- count field
0x30787734 :  00000000 [ .... ]  <— padding bytes
0x30787738 :  0d53d900 [ ..S. ]  <-- byte array header
0x3078773C :  00000020 [  ... ]  <-- byte array size
0x30787740 :  00000000 [ .... ] 
0x30787744 :  30184100 [ .A.0 ]. <—- non zero elements
0x30787748 :  00000000 [ .... ]                                                                                                                                      
0x3078774C :  30184128 [ (A.0 ]  <—- non zero elements

> !j9object 0x30787738
!J9IndexableObject 0x0000000030787738 {
    struct J9Class* clazz = !j9arrayclass 0xD53D900   // [B
    Object flags = 0x00000000;
    U_32 size = 0x00000020;

So it seems to me that we didn’t initialize the byte array. We didn’t skip zero init the byte array either. The following instruction is used to zero the array. rdi initially points to the first element of the array, the counter rcx is 0x20.

rep stosb byte ptr [rdi], al

I suspect that we did a backward memset. We didn’t clear the direction flag DF before rep stosb, so if the flag is set by previously executed instructions, we may end up doing a backward memset.

The memory content seems to be in line with this theory.
rdi is the address of the first element, which is 0x30787740, if we do backward memset for 0x20 bytes, we’ll zero the memory all the way up to 0x30787720, which is the header of StringBuilder object. The byte array header and fields of StringBuilder object are good because that is set after the zeroing.

@andrewcraik @JamesKingdon Do you think this is the right cause of the crash. If so, I think the solution is to clear the DF flag before zeroing.

@gacholio
Copy link
Contributor

I was under the impression that DF is supposed to remain clear at all times (in C at least). It would be a simple matter to clear it on transition to JIT code (and maybe you would need to do it on return from JNI calls).

@JamesKingdon
Copy link
Contributor

JamesKingdon commented Jun 12, 2020

@liqunl Great find! It certainly sounds possible. Given GAC's comments I need to check how DF can be set, but I'm leaning towards a conservative fix of making sure it has the correct value before executing the rep sto. @andrewcraik ?

Looks like it can only be changed directly using CLD/STD. I feel a little uneasy about relying on it being in the correct state before the rep sto though.

@andrewcraik
Copy link
Contributor

Looking at the Agner Fog instruction tables https://www.agner.org/optimize/instruction_tables.pdf it seems that CLD/STD are not cheap - latency 4 on skylake/skylakeX and latency 3 on ryzen. I think we need to be a bit careful about spraying CLD etc everywhere.

Now there is some curious looking code in https://github.com/eclipse/openj9/blob/71bf16037a88e1116afdcc7516db040aa5365ab1/runtime/compiler/x/codegen/J9TreeEvaluator.cpp#L1622
Note if it is !node->isForwardArrayCopy() we handle the direction flag and yet seemingly underneath we don't?

We can consider the CLD/STD always solution as a temporary fix but we need to perf evaluate that and also try to figure out how the flag got messed up since protecting around natives and stuff as suggested by @gacholio is probably the better long term solution.

@JamesKingdon
Copy link
Contributor

oh, you mean potentially we set STD for a backward array copy and then never clear it? I'm still very nervous about the idea of relying on it having the right value over long periods of time.

@gacholio
Copy link
Contributor

The rationale is that backwards copy is vastly less likely than forwards, so keeping the DF clear when not doing backwards copy will be a noticeable performance win.

@gacholio
Copy link
Contributor

From what I can see, backwards copy always emits STD/REP/CLD, so it's still a mystery why it would ever be set (assuming I'm right about the C linkage keeping it clear).

@JamesKingdon
Copy link
Contributor

JamesKingdon commented Jun 12, 2020

DF can also be set via popf which makes it a little harder to narrow down possible changes. Potentially DF might have been set as an accidental side effect of some other flag manipulation. A very cursory grep of the codebase shows some hits for popf* but I haven't explored further to see what's being done.

@gacholio
Copy link
Contributor

Assuming pushf/pop are matched, that shouldn't be an issue. If there are places using popf on other stacked values, that could certainly cause this (this seems exceedingly unlikely).

@0xdaryl
Copy link
Contributor

0xdaryl commented Jul 9, 2021

A second core reveals a similar failure. In both cases the source and destination address are valid and aligned heap addresses (and hence read/writable). One curiosity in both cases is that the destination address is 4 bytes ahead of the source address. That shouldn't cause a problem though.

@JamesKingdon
Copy link
Contributor

Is that allowed for movsd? It's doing 8 byte transfers isn't it?

@0xdaryl
Copy link
Contributor

0xdaryl commented Jul 9, 2021

No, movsd is moving 4 bytes. This code isn't specific to macOS, so not sure why we're tripping over this instruction with valid source and dest addresses only on macOS.

@pshipton
Copy link
Member Author

pshipton commented Jul 9, 2021

and only on one particular machine, osx1011-x86-2.

@JasonFengJ9
Copy link
Member

JasonFengJ9 commented Jul 12, 2021

A similar failure at https://openj9-jenkins.osuosl.org/job/Test_openjdk8_j9_sanity.functional_x86-64_mac_OMR/42/tapResults/ (osx1013-x86-3)

===============================================
Running test J9vmTest_0 ...
===============================================
J9vmTest_0 Start Time: Mon Jul 12 06:35:16 2021 Epoch Time (ms): 1626086116063
variation: Mode110
JVM_OPTIONS:  -Xjit -Xgcpolicy:gencon -Xnocompressedrefs 

+++ j9vm.test.arraycopy.MultiThreadedBackwardArrayCopyTest: +++
command: /Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_OMR_testList_0/openjdkbinary/j2sdk-image/bin/java  -Xjit -Xgcpolicy:gencon -Xnocompressedrefs  -Xdump -Xms64m -Xmx64m   -Xbootclasspath:/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_OMR_testList_0/openjdkbinary/j2sdk-image/jre/lib/default/jclSC180/vm.jar:/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_OMR_testList_0/openjdkbinary/j2sdk-image/jre/lib/se-service.jar:/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_OMR_testList_0/openjdkbinary/j2sdk-image/jre/lib/rt.jar:/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_OMR_testList_0/openjdkbinary/j2sdk-image/jre/lib/resources.jar:/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_OMR_testList_0/openjdkbinary/j2sdk-image/jre/lib/jsse.jar:/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_OMR_testList_0/openjdkbinary/j2sdk-image/jre/lib/charsets.jar:/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_OMR_testList_0/openjdkbinary/j2sdk-image/jre/lib/jce.jar -classpath /Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_OMR_testList_0/aqa-tests/TKG/../../jvmtest/functional/VM_Test/VM_Test.jar:/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_OMR_testList_0/aqa-tests/TKG/../TKG/lib/asm-all.jar  j9vm.test.arraycopy.MultiThreadedBackwardArrayCopyTest 

EFlags 10602, EFlags & 0x400 = 400, DF flag is set
Unhandled exception
Type=Segmentation error vmState=0x00000000
J9Generic_Signal_Number=00000018 Signal_Number=0000000b Error_Value=00000000 Signal_Code=00000000
Handler1=000000000E036F60 Handler2=000000000D755610
RDI=0000000013C8C088 RSI=0000000013C8C080 RAX=0000000013C8BFF0 RBX=0000000013D08210
RCX=000000000000000F RDX=0000000000000020 R8=0000000000000642 R9=0000000013D47000
R10=0000000000000022 R11=0000000013D37BD8 R12=0000000013D47000 R13=0000000013D08210
R14=0000000000024B1F R15=0000000000000000
RIP=00000000146AF610 GS=0000 FS=0000 RSP=00007FB05C1CA0C0
RFlags=0000000000010602 CS=002B RBP=00007FB05C1CA500 ERR=1142700000000000
TRAPNO=000000000000000D CPU=7000000000000000 FAULTVADDR=0000000111427000
XMM0 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM1 00007fb05c1ca160 (f: 1545380224.000000, d: 6.936456e-310)
XMM2 00000000df000000 (f: 3741319168.000000, d: 1.848457e-314)
XMM3 000000000000000a (f: 10.000000, d: 4.940656e-323)
XMM4 0000000013d47000 (f: 332689408.000000, d: 1.643704e-315)
XMM5 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM6 3fe0e44985d1cc8c (f: 2245119232.000000, d: 5.278671e-01)
XMM7 402e7f9c1e980fa9 (f: 513281952.000000, d: 1.524924e+01)
XMM8 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM9 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM10 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM11 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM12 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM13 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM14 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM15 0000000000000000 (f: 0.000000, d: 0.000000e+00)

Compiled_method=j9vm/test/arraycopy/MultiThreadedBackwardArrayCopyTest.rotateSource()V
Target=2_90_20210712_47 (Mac OS X 10.11.6)
CPU=amd64 (4 logical CPUs) (0x200000000 RAM)
----------- Stack Backtrace -----------
---------------------------------------
JVMDUMP039I Processing dump event "gpf", detail "" at 2021/07/12 06:36:01 - please wait.
JVMDUMP032I JVM requested System dump using '/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_OMR_testList_0/aqa-tests/TKG/output_16260836744362/J9vmTest_0/core.20210712.063601.19360.0001.dmp' in response to an event
EFlags 10602, EFlags & 0x400 = 400, DF flag is set
Unhandled exception
Type=Segmentation error vmState=0x00000000
J9Generic_Signal_Number=00000018 Signal_Number=0000000b Error_Value=00000000 Signal_Code=00000000
Handler1=000000000E036F60 Handler2=000000000D755610
RDI=0000000013C8C088 RSI=0000000013C8C080 RAX=0000000013C8BFF0 RBX=0000000013D08210
RCX=000000000000000F RDX=0000000000000020 R8=0000000000000642 R9=0000000013D44000
R10=0000000000000022 R11=0000000013D37BD8 R12=0000000013D44000 R13=0000000013D08210
R14=000000000009BCB9 R15=0000000000000000
RIP=00000000146AF610 GS=0000 FS=0000 RSP=00007FB05C1BC8C0
RFlags=0000000000010602 CS=002B RBP=00007FB05C170B00 ERR=1142700000000000
TRAPNO=000000000000000D CPU=7000000000000000 FAULTVADDR=0000000111427000
XMM0 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM1 00007fb05c1bc960 (f: 1545324928.000000, d: 6.936456e-310)
XMM2 00000000df000000 (f: 3741319168.000000, d: 1.848457e-314)
XMM3 000000000000000a (f: 10.000000, d: 4.940656e-323)
XMM4 0000000013d44000 (f: 332677120.000000, d: 1.643643e-315)
XMM5 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM6 3fe0e44985d1cc8c (f: 2245119232.000000, d: 5.278671e-01)
XMM7 402e7f9c1e980fa9 (f: 513281952.000000, d: 1.524924e+01)
XMM8 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM9 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM10 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM11 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM12 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM13 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM14 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM15 0000000000000000 (f: 0.000000, d: 0.000000e+00)

Compiled_method=j9vm/test/arraycopy/MultiThreadedBackwardArrayCopyTest.rotateSource()V
Target=2_90_20210712_47 (Mac OS X 10.11.6)
CPU=amd64 (4 logical CPUs) (0x200000000 RAM)
----------- Stack Backtrace -----------
---------------------------------------
JVMDUMP039I Processing dump event "gpf", detail "" at 2021/07/12 06:36:01 - please wait.
JVMDUMP010I System dump written to /Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_OMR_testList_0/aqa-tests/TKG/output_16260836744362/J9vmTest_0/core.20210712.063601.19360.0001.dmp
JVMDUMP032I JVM requested Java dump using '/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_OMR_testList_0/aqa-tests/TKG/output_16260836744362/J9vmTest_0/javacore.20210712.063601.19360.0003.txt' in response to an event
JVMDUMP010I Java dump written to /Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_OMR_testList_0/aqa-tests/TKG/output_16260836744362/J9vmTest_0/javacore.20210712.063601.19360.0003.txt
JVMDUMP032I JVM requested Snap dump using '/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_OMR_testList_0/aqa-tests/TKG/output_16260836744362/J9vmTest_0/Snap.20210712.063601.19360.0004.trc' in response to an event
JVMDUMP010I Snap dump written to /Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_OMR_testList_0/aqa-tests/TKG/output_16260836744362/J9vmTest_0/Snap.20210712.063601.19360.0004.trc
JVMDUMP032I JVM requested JIT dump using '/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_OMR_testList_0/aqa-tests/TKG/output_16260836744362/J9vmTest_0/jitdump.20210712.063601.19360.0005.dmp' in response to an event
JVMDUMP051I JIT dump occurred in 'Thread-6' thread 0x00007FB05C1CA500
JVMDUMP053I JIT dump is recompiling j9vm/test/arraycopy/MultiThreadedBackwardArrayCopyTest.rotateSource()V
JVMDUMP053I JIT dump is recompiling j9vm/test/arraycopy/MultiThreadedBackwardArrayCopyTest.rotateSource()V
JVMDUMP010I JIT dump written to /Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_OMR_testList_0/aqa-tests/TKG/output_16260836744362/J9vmTest_0/jitdump.20210712.063601.19360.0005.dmp
JVMDUMP013I Processed dump event "gpf", detail "".
no-zero exit value: 255
*** Test FAILED *** (j9vm.test.arraycopy.MultiThreadedBackwardArrayCopyTest)

Also seen at https://openj9-jenkins.osuosl.org/job/Test_openjdk11_j9_sanity.functional_x86-64_mac_Nightly/45/tapResults/

===============================================
Running test J9vmTest_5 ...
===============================================
J9vmTest_5 Start Time: Sat Jul 10 03:40:04 2021 Epoch Time (ms): 1625902804048
variation: Mode610
JVM_OPTIONS:  -Xcompressedrefs -Xjit -Xgcpolicy:gencon 

+++ j9vm.test.arraycopy.MultiThreadedBackwardArrayCopyTest: +++
command: /Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_Nightly_testList_0/openjdkbinary/j2sdk-image/bin/java  -Xcompressedrefs -Xjit -Xgcpolicy:gencon  -Xdump -Xms64m -Xmx64m    -classpath /Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_Nightly_testList_0/aqa-tests/TKG/../../jvmtest/functional/VM_Test/VM_Test.jar:/Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_Nightly_testList_0/aqa-tests/TKG/../TKG/lib/asm-all.jar  j9vm.test.arraycopy.MultiThreadedBackwardArrayCopyTest 

EFlags 10602, EFlags & 0x400 = 400, DF flag is set
Unhandled exception
Type=Segmentation error vmState=0x00000000
J9Generic_Signal_Number=00000018 Signal_Number=0000000b Error_Value=00000000 Signal_Code=00000000
Handler1=00000000024372F0 Handler2=0000000001A34420
RDI=00000000FF8B7B40 RSI=00000000FF8B7B3C RAX=00000000FF8B7AF0 RBX=00000000FF95D460
RCX=000000000000000F RDX=0000000000000020 R8=0000000000000022 R9=0000000000000000
R10=000000000005C4DB R11=00000000FF942590 R12=00000000FF95CB30 R13=00000000FF942590
R14=00000000FF8B7AF0 R15=00000000FF976FC0
RIP=000000001996B74D GS=0000 FS=0000 RSP=00000000048AE810
RFlags=0000000000010602 CS=002B RBP=00000000048AEA00 ERR=2488D00000000000
TRAPNO=000000000000000D CPU=D000000000000000 FAULTVADDR=00007FE02488D000
XMM0 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM1 00000000048ae880 (f: 76212352.000000, d: 3.765390e-316)
XMM2 00000000df000000 (f: 3741319168.000000, d: 1.848457e-314)
XMM3 000000000000001a (f: 26.000000, d: 1.284571e-322)
XMM4 00000000ff976fc0 (f: 4288114688.000000, d: 2.118610e-314)
XMM5 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM6 3fdf6123fa7028ac (f: 4201654528.000000, d: 4.903040e-01)
XMM7 402e7f9c1e980fa9 (f: 513281952.000000, d: 1.524924e+01)
XMM8 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM9 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM10 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM11 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM12 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM13 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM14 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM15 0000000000000000 (f: 0.000000, d: 0.000000e+00)

Compiled_method=j9vm/test/arraycopy/MultiThreadedBackwardArrayCopyTest.rotateSource()V
Target=2_90_20210709_48 (Mac OS X 10.11.6)
CPU=amd64 (4 logical CPUs) (0x200000000 RAM)
----------- Stack Backtrace -----------
---------------------------------------
JVMDUMP039I Processing dump event "gpf", detail "" at 2021/07/10 03:40:56 - please wait.
JVMDUMP032I JVM requested System dump using '/Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_Nightly_testList_0/aqa-tests/TKG/output_16258962728824/J9vmTest_5/core.20210710.034056.80315.0001.dmp' in response to an event
JVMDUMP010I System dump written to /Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_Nightly_testList_0/aqa-tests/TKG/output_16258962728824/J9vmTest_5/core.20210710.034056.80315.0001.dmp
JVMDUMP032I JVM requested Java dump using '/Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_Nightly_testList_0/aqa-tests/TKG/output_16258962728824/J9vmTest_5/javacore.20210710.034056.80315.0002.txt' in response to an event
JVMDUMP010I Java dump written to /Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_Nightly_testList_0/aqa-tests/TKG/output_16258962728824/J9vmTest_5/javacore.20210710.034056.80315.0002.txt
JVMDUMP032I JVM requested Snap dump using '/Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_Nightly_testList_0/aqa-tests/TKG/output_16258962728824/J9vmTest_5/Snap.20210710.034056.80315.0003.trc' in response to an event
JVMDUMP010I Snap dump written to /Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_Nightly_testList_0/aqa-tests/TKG/output_16258962728824/J9vmTest_5/Snap.20210710.034056.80315.0003.trc
JVMDUMP032I JVM requested JIT dump using '/Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_Nightly_testList_0/aqa-tests/TKG/output_16258962728824/J9vmTest_5/jitdump.20210710.034056.80315.0004.dmp' in response to an event
JVMDUMP051I JIT dump occurred in 'Thread-6' thread 0x00000000048AEA00
JVMDUMP053I JIT dump is recompiling j9vm/test/arraycopy/MultiThreadedBackwardArrayCopyTest.rotateSource()V
JVMDUMP053I JIT dump is recompiling j9vm/test/arraycopy/MultiThreadedBackwardArrayCopyTest.rotateSource()V
JVMDUMP010I JIT dump written to /Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_Nightly_testList_0/aqa-tests/TKG/output_16258962728824/J9vmTest_5/jitdump.20210710.034056.80315.0004.dmp
JVMDUMP013I Processed dump event "gpf", detail "".
no-zero exit value: 255
*** Test FAILED *** (j9vm.test.arraycopy.MultiThreadedBackwardArrayCopyTest)

J9vmTest_5_FAILED

@fjeremic
Copy link
Contributor

Another failure seen here:
https://openj9-jenkins.osuosl.org/job/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/61/consoleText

[2021-07-13T15:20:11.856Z] ...
[2021-07-13T15:20:11.856Z] ... TestNG 6.14.2 by Cédric Beust ([email protected])
[2021-07-13T15:20:11.856Z] ...
[2021-07-13T15:20:11.856Z] 
[2021-07-13T15:21:47.633Z] EFlags 10606, EFlags & 0x400 = 400, DF flag is set
[2021-07-13T15:21:47.633Z] Unhandled exception
[2021-07-13T15:21:47.633Z] Type=Segmentation error vmState=0x00000000
[2021-07-13T15:21:47.633Z] J9Generic_Signal_Number=00000018 Signal_Number=0000000b Error_Value=00000000 Signal_Code=00000000
[2021-07-13T15:21:47.633Z] Handler1=000000000EC36F90 Handler2=000000000EF0D420
[2021-07-13T15:21:47.633Z] RDI=00000000805D1FC4 RSI=00000000805D1FC0 RAX=0000000000000001 RBX=00000000003FFFE4
[2021-07-13T15:21:47.633Z] RCX=000000000000000C RDX=000000001100F400 R8=00000000801D1FB0 R9=00000000801D1FB0
[2021-07-13T15:21:47.633Z] R10=00000000003FFFE8 R11=00000000801D1FB0 R12=0000000000000074 R13=00000000000FFFF5
[2021-07-13T15:21:47.633Z] R14=000000000000001D R15=00000000801D1FB0
[2021-07-13T15:21:47.633Z] RIP=00000000205E37F0 GS=0000 FS=0000 RSP=000000001109D1D0
[2021-07-13T15:21:47.633Z] RFlags=0000000000010606 CS=002B RBP=0000000010FDEF00 ERR=11C2F00000000000
[2021-07-13T15:21:47.633Z] TRAPNO=000000000000000D CPU=F000000000000000 FAULTVADDR=0000000111C2F000
[2021-07-13T15:21:47.633Z] XMM0 00000000305d6c40 (f: 811428928.000000, d: 4.008992e-315)
[2021-07-13T15:21:47.633Z] XMM1 000000001109d198 (f: 285856160.000000, d: 1.412317e-315)
[2021-07-13T15:21:47.633Z] XMM2 c3e0000000000000 (f: 0.000000, d: -9.223372e+18)
[2021-07-13T15:21:47.633Z] XMM3 0000017aa075b5c2 (f: 2692068864.000000, d: 8.034445e-312)
[2021-07-13T15:21:47.633Z] XMM4 000000001109d2ba (f: 285856448.000000, d: 1.412318e-315)
[2021-07-13T15:21:47.633Z] XMM5 0000000000000000 (f: 0.000000, d: 0.000000e+00)
[2021-07-13T15:21:47.633Z] XMM6 3fd5767717455a6c (f: 390421088.000000, d: 3.353555e-01)
[2021-07-13T15:21:47.633Z] XMM7 4023687a9f1af2b1 (f: 2669343488.000000, d: 9.704061e+00)
[2021-07-13T15:21:47.633Z] XMM8 0000000000000000 (f: 0.000000, d: 0.000000e+00)
[2021-07-13T15:21:47.633Z] XMM9 0000000000000000 (f: 0.000000, d: 0.000000e+00)
[2021-07-13T15:21:47.633Z] XMM10 0000000000000000 (f: 0.000000, d: 0.000000e+00)
[2021-07-13T15:21:47.633Z] XMM11 ca62c1d6ca62c1d6 (f: 3395469824.000000, d: -2.193092e+50)
[2021-07-13T15:21:47.633Z] XMM12 0000000000000000 (f: 0.000000, d: 0.000000e+00)
[2021-07-13T15:21:47.633Z] XMM13 0000000000000000 (f: 0.000000, d: 0.000000e+00)
[2021-07-13T15:21:47.633Z] XMM14 0000000000000000 (f: 0.000000, d: 0.000000e+00)
[2021-07-13T15:21:47.633Z] XMM15 0000000000000000 (f: 0.000000, d: 0.000000e+00)
[2021-07-13T15:21:47.633Z] 
[2021-07-13T15:21:47.633Z] Compiled_method=j9vm/test/arrayCopy/ArrayCopyTest.testXtraLargeReferenceArrayCopyBackward(I)V
[2021-07-13T15:21:47.633Z] Target=2_90_20210713_89 (Mac OS X 10.11.6)
[2021-07-13T15:21:47.633Z] CPU=amd64 (4 logical CPUs) (0x200000000 RAM)
[2021-07-13T15:21:47.633Z] ----------- Stack Backtrace -----------
[2021-07-13T15:21:47.633Z] ---------------------------------------
[2021-07-13T15:21:47.633Z] JVMDUMP039I Processing dump event "gpf", detail "" at 2021/07/13 11:21:46 - please wait.
[2021-07-13T15:21:47.633Z] JVMDUMP032I JVM requested System dump using '/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/aqa-tests/TKG/output_16261874125502/TestArrayCopy_openj9_none_SCC_3/core.20210713.112146.13301.0001.dmp' in response to an event
[2021-07-13T15:21:52.841Z] JVMDUMP010I System dump written to /Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/aqa-tests/TKG/output_16261874125502/TestArrayCopy_openj9_none_SCC_3/core.20210713.112146.13301.0001.dmp
[2021-07-13T15:21:52.841Z] JVMDUMP032I JVM requested Java dump using '/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/aqa-tests/TKG/output_16261874125502/TestArrayCopy_openj9_none_SCC_3/javacore.20210713.112146.13301.0002.txt' in response to an event
[2021-07-13T15:21:52.841Z] JVMDUMP010I Java dump written to /Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/aqa-tests/TKG/output_16261874125502/TestArrayCopy_openj9_none_SCC_3/javacore.20210713.112146.13301.0002.txt
[2021-07-13T15:21:52.841Z] JVMDUMP032I JVM requested Snap dump using '/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/aqa-tests/TKG/output_16261874125502/TestArrayCopy_openj9_none_SCC_3/Snap.20210713.112146.13301.0003.trc' in response to an event
[2021-07-13T15:21:52.841Z] JVMDUMP010I Snap dump written to /Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/aqa-tests/TKG/output_16261874125502/TestArrayCopy_openj9_none_SCC_3/Snap.20210713.112146.13301.0003.trc
[2021-07-13T15:21:52.841Z] JVMDUMP032I JVM requested JIT dump using '/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/aqa-tests/TKG/output_16261874125502/TestArrayCopy_openj9_none_SCC_3/jitdump.20210713.112146.13301.0004.dmp' in response to an event
[2021-07-13T15:21:52.841Z] JVMDUMP051I JIT dump occurred in 'main' thread 0x0000000010FDEF00
[2021-07-13T15:21:52.841Z] JVMDUMP053I JIT dump is recompiling j9vm/test/arrayCopy/ArrayCopyTest.testXtraLargeReferenceArrayCopyBackward(I)V
[2021-07-13T15:21:52.841Z] JVMDUMP053I JIT dump is recompiling j9vm/test/arrayCopy/ArrayCopyTest.testXtraLargeReferenceArrayCopyBackward(I)V
[2021-07-13T15:21:52.841Z] JVMDUMP010I JIT dump written to /Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/aqa-tests/TKG/output_16261874125502/TestArrayCopy_openj9_none_SCC_3/jitdump.20210713.112146.13301.0004.dmp
[2021-07-13T15:21:52.841Z] JVMDUMP013I Processed dump event "gpf", detail "".
[2021-07-13T15:21:52.841Z] 
[2021-07-13T15:21:52.841Z] TestArrayCopy_openj9_none_SCC_3_FAILED

@JasonFengJ9
Copy link
Member

JasonFengJ9 commented Jul 19, 2021

A similar TestArrayCopy_1_FAILED is observed at JDK11 0.27 release build https://openj9-jenkins.osuosl.org/job/Test_openjdk11_j9_sanity.functional_x86-64_mac_Release/5/tapResults/

===============================================
Running test TestArrayCopy_1 ...
===============================================
TestArrayCopy_1 Start Time: Sat Jul 17 20:08:33 2021 Epoch Time (ms): 1626566913703
variation: Mode101
JVM_OPTIONS:  -Xjit -Xgcpolicy:optthruput -Xnocompressedrefs 
[IncludeExcludeTestAnnotationTransformer] [INFO] EXCLUDE_FILE environment variable: /Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_Release_testList_0/aqa-tests/TKG/../TestConfig/resources/excludes/latest_exclude_11.txt
[IncludeExcludeTestAnnotationTransformer] [INFO] Processing exclude file: /Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_Release_testList_0/aqa-tests/TKG/../TestConfig/resources/excludes/latest_exclude_11.txt
...
... TestNG 6.14.2 by Cédric Beust ([email protected])
...

EFlags 10606, EFlags & 0x400 = 400, DF flag is set
Unhandled exception
Type=Segmentation error vmState=0x00000000
J9Generic_Signal_Number=00000018 Signal_Number=0000000b Error_Value=00000000 Signal_Code=00000000
Handler1=000000000D436DA0 Handler2=000000000D70D420
RDI=00000000104F0368 RSI=00000000104F0364 RAX=0000000000000000 RBX=0000000000000050
RCX=0000000000000006 RDX=0000017AB6F1E072 R8=000000000000005C R9=0000000000000017
R10=000000000000000E R11=000000000000002A R12=000000000000000E R13=0000000000000008
R14=0000000012345678 R15=0000000000000038
RIP=000000009A9F4715 GS=0000 FS=0000 RSP=00007FB2198E51D0
RFlags=0000000000010606 CS=002B RBP=00007FB218855300 ERR=8D64E1B000000000
TRAPNO=000000000000000D CPU=E1B0000000000000 FAULTVADDR=000000018D64E1B0
XMM0 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM1 0000000000000001 (f: 1.000000, d: 4.940656e-324)
XMM2 0000000000000223 (f: 547.000000, d: 2.702539e-321)
XMM3 0000017ab6f1b192 (f: 3069293056.000000, d: 8.036308e-312)
XMM4 00007fb2198e529a (f: 428757664.000000, d: 6.936825e-310)
XMM5 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM6 3fe29d37fec2b08b (f: 4274172160.000000, d: 5.816917e-01)
XMM7 402bb9d3beb8c86b (f: 3199780864.000000, d: 1.386294e+01)
XMM8 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM9 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM10 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM11 ca62c1d6ca62c1d6 (f: 3395469824.000000, d: -2.193092e+50)
XMM12 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM13 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM14 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM15 0000000000000000 (f: 0.000000, d: 0.000000e+00)

Compiled_method=j9vm/test/arrayCopy/ArrayCopyTest.testArrayOfIntsCopy(I)V
Target=2_90_20210717_6 (Mac OS X 10.11.6)
CPU=amd64 (4 logical CPUs) (0x200000000 RAM)
----------- Stack Backtrace -----------
---------------------------------------
JVMDUMP039I Processing dump event "gpf", detail "" at 2021/07/17 20:08:58 - please wait.
JVMDUMP032I JVM requested System dump using '/Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_Release_testList_0/aqa-tests/TKG/output_16265624761976/TestArrayCopy_1/core.20210717.200858.77572.0001.dmp' in response to an event
JVMDUMP010I System dump written to /Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_Release_testList_0/aqa-tests/TKG/output_16265624761976/TestArrayCopy_1/core.20210717.200858.77572.0001.dmp
JVMDUMP032I JVM requested Java dump using '/Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_Release_testList_0/aqa-tests/TKG/output_16265624761976/TestArrayCopy_1/javacore.20210717.200858.77572.0002.txt' in response to an event
JVMDUMP010I Java dump written to /Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_Release_testList_0/aqa-tests/TKG/output_16265624761976/TestArrayCopy_1/javacore.20210717.200858.77572.0002.txt
JVMDUMP032I JVM requested Snap dump using '/Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_Release_testList_0/aqa-tests/TKG/output_16265624761976/TestArrayCopy_1/Snap.20210717.200858.77572.0003.trc' in response to an event
JVMDUMP010I Snap dump written to /Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_Release_testList_0/aqa-tests/TKG/output_16265624761976/TestArrayCopy_1/Snap.20210717.200858.77572.0003.trc
JVMDUMP032I JVM requested JIT dump using '/Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_Release_testList_0/aqa-tests/TKG/output_16265624761976/TestArrayCopy_1/jitdump.20210717.200858.77572.0004.dmp' in response to an event
JVMDUMP051I JIT dump occurred in 'main' thread 0x00007FB218855300
JVMDUMP010I JIT dump written to /Users/jenkins/workspace/Test_openjdk11_j9_sanity.functional_x86-64_mac_Release_testList_0/aqa-tests/TKG/output_16265624761976/TestArrayCopy_1/jitdump.20210717.200858.77572.0004.dmp
JVMDUMP013I Processed dump event "gpf", detail "".

TestArrayCopy_1_FAILED

This was at osx1011-x86-1. Edit (Peter Shipton): I'm sure it failed on osx1011-x86-2 just like the others, only the top level job that starts the parallel children test jobs ran on osx1011-x86-1.

Edit: also occurred at JDK8 nightly build https://openj9-jenkins.osuosl.org/job/Test_openjdk8_j9_sanity.functional_x86-64_mac_Nightly/52/tapResults/

@VermaSh
Copy link
Contributor

VermaSh commented Aug 11, 2021

Another failure on osx1014-x86-1:

===============================================
Running test J9vmTest_5 ...
===============================================
J9vmTest_5 Start Time: Tue Aug 10 18:21:55 2021 Epoch Time (ms): 1628634115869
variation: Mode610
JVM_OPTIONS:  -Xcompressedrefs -Xjit -Xgcpolicy:gencon 
Parsing exclude list...
  add excludes for [all]
  add excludes for [osx_x86-64]
DONE in 0 ms.

Current Date: Tue Aug 10 2021
7 tests are excluded as follows:
  [j9vm.test.multivm.MultiVMFibTest] expiry: none :: Requires opt_multiVm which is not supported for realtime platforms
  [j9vm.test.classunloading.testcases] expiry: none :: These tests run separately and are not as part of j9vm test suite
  [j9vm.test.thread.InterruptNotifyWaitTest] expiry: none :: CMVC 158969: test runs too slow after switching to the SDK launcher
  [j9vm.test.thread.SchedulingTest] expiry: none :: Only applies to Linux SRT
  [j9vm.test.xlpcodecache] expiry: none :: This test is unstable on AIXPPC, and S390 Z/OS: OpenJ9 Issue 8437, and 8798 respectively.      Xlp is not supported on OSX.   
  [j9vm.test.xlp] expiry: none :: This test is unstable on S390 Z/OS: OpenJ9 Issue 8798. Xlp is not supported on OSX. 
  [j9vm.test.classloader.LazyClassLoaderInitTest] expiry: none :: Test is run from playlist other than sanity.

test suite: read tests from "/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/aqa-tests/TKG/../../jvmtest/functional/VM_Test/VM_Test.jar"

...

+++ j9vm.test.arraycopy.MultiThreadedBackwardArrayCopyTest: +++
command: /Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/openjdkbinary/j2sdk-image/bin/java  -Xcompressedrefs -Xjit -Xgcpolicy:gencon  -Xdump -Xms64m -Xmx64m   -Xbootclasspath:/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/openjdkbinary/j2sdk-image/jre/lib/default/jclSC180/vm.jar:/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/openjdkbinary/j2sdk-image/jre/lib/se-service.jar:/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/openjdkbinary/j2sdk-image/jre/lib/rt.jar:/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/openjdkbinary/j2sdk-image/jre/lib/resources.jar:/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/openjdkbinary/j2sdk-image/jre/lib/jsse.jar:/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/openjdkbinary/j2sdk-image/jre/lib/charsets.jar:/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/openjdkbinary/j2sdk-image/jre/lib/jce.jar -classpath /Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/aqa-tests/TKG/../../jvmtest/functional/VM_Test/VM_Test.jar:/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/aqa-tests/TKG/../TKG/lib/asm-all.jar  j9vm.test.arraycopy.MultiThreadedBackwardArrayCopyTest 

EFlags 10602, EFlags & 0x400 = 400, DF flag is set
Unhandled exception
Type=Segmentation error vmState=0x00000000
J9Generic_Signal_Number=00000018 Signal_Number=0000000b Error_Value=00000000 Signal_Code=00000000
Handler1=0000000008C36F70 Handler2=0000000008F0D420
RDI=00000000FF8740C0 RSI=00000000FF8740BC RAX=00000000FF874070 RBX=00000000FF8E01D0
RCX=000000000000000F RDX=0000000000000020 R8=0000000000000640 R9=00000000FF919010
R10=0000000000000022 R11=00000000FF9162F8 R12=00000000FF919010 R13=00000000FF8E01D0
R14=00000000000B4B09 R15=0000000000000000
RIP=0000000017B3F98D GS=0000 FS=0000 RSP=000000000B1BFB10
RFlags=0000000000010602 CS=002B RBP=000000000B1A6C00 ERR=002A000000000000
TRAPNO=000000000000000D CPU=0000000000000000 FAULTVADDR=00007000002A0000
XMM0 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM1 000000000b1bfbb0 (f: 186383280.000000, d: 9.208558e-316)
XMM2 00000000df000000 (f: 3741319168.000000, d: 1.848457e-314)
XMM3 0000000000000010 (f: 16.000000, d: 7.905050e-323)
XMM4 00000000ff919010 (f: 4287729664.000000, d: 2.118420e-314)
XMM5 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM6 3fe1675cababa60e (f: 2880153088.000000, d: 5.438674e-01)
XMM7 402e7f9c1e980fa9 (f: 513281952.000000, d: 1.524924e+01)
XMM8 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM9 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM10 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM11 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM12 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM13 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM14 0000000000000000 (f: 0.000000, d: 0.000000e+00)
XMM15 0000000000000000 (f: 0.000000, d: 0.000000e+00)

Compiled_method=j9vm/test/arraycopy/MultiThreadedBackwardArrayCopyTest.rotateSource()V
Target=2_90_20210810_97 (Mac OS X 10.11.6)
CPU=amd64 (4 logical CPUs) (0x200000000 RAM)
----------- Stack Backtrace -----------
---------------------------------------
JVMDUMP039I Processing dump event "gpf", detail "" at 2021/08/10 18:22:40 - please wait.
JVMDUMP032I JVM requested System dump using '/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/aqa-tests/TKG/output_16286307849654/J9vmTest_5/core.20210810.182240.50328.0001.dmp' in response to an event
JVMDUMP010I System dump written to /Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/aqa-tests/TKG/output_16286307849654/J9vmTest_5/core.20210810.182240.50328.0001.dmp
JVMDUMP032I JVM requested Java dump using '/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/aqa-tests/TKG/output_16286307849654/J9vmTest_5/javacore.20210810.182240.50328.0002.txt' in response to an event
JVMDUMP010I Java dump written to /Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/aqa-tests/TKG/output_16286307849654/J9vmTest_5/javacore.20210810.182240.50328.0002.txt
JVMDUMP032I JVM requested Snap dump using '/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/aqa-tests/TKG/output_16286307849654/J9vmTest_5/Snap.20210810.182240.50328.0003.trc' in response to an event
JVMDUMP010I Snap dump written to /Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/aqa-tests/TKG/output_16286307849654/J9vmTest_5/Snap.20210810.182240.50328.0003.trc
JVMDUMP032I JVM requested JIT dump using '/Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/aqa-tests/TKG/output_16286307849654/J9vmTest_5/jitdump.20210810.182240.50328.0004.dmp' in response to an event
JVMDUMP051I JIT dump occurred in 'Thread-4' thread 0x000000000B1A6C00
JVMDUMP053I JIT dump is recompiling j9vm/test/arraycopy/MultiThreadedBackwardArrayCopyTest.rotateSource()V
JVMDUMP053I JIT dump is recompiling j9vm/test/arraycopy/MultiThreadedBackwardArrayCopyTest.rotateSource()V
JVMDUMP010I JIT dump written to /Users/jenkins/workspace/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/aqa-tests/TKG/output_16286307849654/J9vmTest_5/jitdump.20210810.182240.50328.0004.dmp
JVMDUMP013I Processed dump event "gpf", detail "".
no-zero exit value: 255
*** Test FAILED *** (j9vm.test.arraycopy.MultiThreadedBackwardArrayCopyTest)

https://openj9-jenkins.osuosl.org/job/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal/66/

@pshipton
Copy link
Member Author

@VermaSh it's actually on osx1011-x86-2 just like all the others. The top level job you link to ran on osx1014-x86-1 but it just starts a couple of children. The actual failed job is https://openj9-jenkins.osuosl.org/job/Test_openjdk8_j9_sanity.functional_x86-64_mac_Personal_testList_0/64/

@0xdaryl
Copy link
Contributor

0xdaryl commented Dec 14, 2021

Curiously, this problem hasn't been seen for some time (or at least it hasn't been reported in this issue). It used to show up quite regularly in PR testing. Moving out nonetheless.

@pshipton
Copy link
Member Author

@0xdaryl it's because I disabled the machine so tests don't run on it any more, so we don't have to see the failures and deal with failed acceptance builds due to this. We got 2 new Mac's, although only of them is working properly so far.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
comp:jit os:macos segfault Issues that describe segfaults / JVM crashes test failure
Projects
None yet
Development

No branches or pull requests