SIGBUS in Access<1572864UL>::store_at<int> on Solaris/SPARC
Volker Simonis
volker.simonis at gmail.com
Thu Feb 22 17:35:40 UTC 2018
Thanks for the confirmation and for opening the bug!
Regards,
Volker
On Thu, Feb 22, 2018 at 6:29 PM, <jesper.wilhelmsson at oracle.com> wrote:
> There were multiple SPARC failures in the HS nightly related to this. I
> filed JDK-8198564 for this.
> /Jesper
>
> > On 22 Feb 2018, at 18:19, Stefan Karlsson <stefan.karlsson at oracle.com>
> wrote:
> >
> > This looks suspicious:
> >
> > +inline void typeArrayOopDesc::short_at_put(int which, jshort contents)
> {
> > + ptrdiff_t offset = element_offset<jshort>(T_BOOLEAN, which);
> > + HeapAccess<IN_HEAP_ARRAY>::store_at(as_oop(), offset, contents);
> > +}
> >
> >
> > T_BOOLEAN together with jshort ...
> >
> > StefanK
> >
> >
> > On 2018-02-22 18:12, Volker Simonis wrote:
> >> Hi,
> >>
> >> since the push of "8197999: Accessors in typeArrayOopDesc should use new
> >> Access API" we see crashes on Solaris/SPARC (see below). The
> disassembly at
> >> the crash instruction looks as follows:
> >>
> >> ldx [ %fp + 0x7df ], %o4
> >> st %i2, [ %o4 + %i1 ]
> >>
> >> O4=0x00000007b80e0468
> >> I1=0x0000000000000012
> >>
> >> which results in an unaligned access:
> >>
> >> siginfo: si_signo: 10 (SIGBUS), si_code: 1 (BUS_ADRALN), si_addr:
> >> 0x00000007b80e047a
> >>
> >> We are compiling with SS12u4 with updates from October 2017 (i.e. Sun
> C++
> >> 5.13 SunOS_sparc Patch 151845-28 2017/09/19) and running on Solaris
> 11.3.
> >> Which compilers are you using for compiling jdk-hs on Sun/SPARC?
> >>
> >> Do you have seen this as well or do you have any idea what might have
> >> caused this?
> >>
> >> Thank you and best regards,
> >> Volker
> >>
> >> #
> >> # A fatal error has been detected by the Java Runtime Environment:
> >> #
> >> # SIGBUS (0xa) at pc=0xfffffff67ffdb4d8, pid=321, tid=58934
> >> #
> >> # JRE version: OpenJDK Runtime Environment (11.0.1) (fastdebug build
> >> 11.0.0.1-internal+0-adhoc..jdk-hs)
> >> # Java VM: OpenJDK 64-Bit Server VM (fastdebug
> >> 11.0.0.1-internal+0-adhoc..jdk-hs, mixed mode, tiered, compressed
> oops, g1
> >> gc, solaris-sparc)
> >> # Problematic frame:
> >> # V [libjvm.so+0xcdb4d8] void
> >> Access<1572864UL>::store_at<int>(oop,long,__type_1)+0xd8
> >> #
> >> # Core dump will be written. Default location:
> >> /priv/jvmtests/output_sapjvm11_o_jdk-hs_dbgU_sun_64/
> jck_lang_vm_work/core
> >> or core.321
> >> #
> >> # If you would like to submit a bug report, please visit:
> >> # http://bugreport.java.com/bugreport/crash.jsp
> >> #
> >>
> >> --------------- S U M M A R Y ------------
> >>
> >> Command Line: -Djava.awt.headless=true -Xms128m -Xmx288m
> >> -XX:MaxJavaStackTraceDepth=1024 -Xverify:all -XX:+FailOverToOldVerifier
> >> -Xverify:all -agentlib:jckjvmti=same -Djdk.xml.maxXMLNameLimit=4000
> >> -Djava.net.preferIPv4Stack=true
> >> -Djava.security.auth.policy=/sapmnt/hs0131/a/sapjvm_dev/
> jck/jck11/JCK-runtime-11/lib/jck.auth.policy
> >> -Djava.security.auth.login.config=/sapmnt/hs0131/a/
> sapjvm_dev/jck/jck11/JCK-runtime-11/lib/jck.auth.login.config
> >> -Djava.security.policy=/sapmnt/hs0131/a/sapjvm_dev/
> jck/jck11/JCK-runtime-11/lib/jck.policy
> >> -Djava.io.tmpdir=/priv/jvmtests/output_sapjvm11_o_
> jdk-hs_dbgU_sun_64/jck_lang_vm_work/tempdir
> >> -Djavatest.security.allowPropertiesAccess=true
> >> -Djava.util.prefs.userRoot=/priv/jvmtests/output_sapjvm11_
> o_jdk-hs_dbgU_sun_64/jck_lang_vm_work/tempdir
> >> -Djava.rmi.activation.port=6284 com.sun.javatest.agent.AgentMain
> -active
> >> -activeHost localhost -activePort 6584
> >>
> >> Host: us04z2, Sparcv9 64 bit 2998 MHz, 128 cores, 100G, Oracle Solaris
> 11.3
> >> SPARC
> >> Time: Thu Feb 22 09:24:06 2018 CET elapsed time: 2872 seconds (0d 0h 47m
> >> 52s)
> >>
> >> --------------- T H R E A D ---------------
> >>
> >> Current thread (0x0000000108bca000): JavaThread "Thread-41287"
> >> [_thread_in_vm, id=58934, stack(0xffffffff3f900000,0xffffffff3fa00000)]
> >>
> >> Stack: [0xffffffff3f900000,0xffffffff3fa00000], sp=0xffffffff3f9fd340,
> >> free space=1012k
> >> Native frames: (J=compiled Java code, A=aot compiled Java code,
> >> j=interpreted, Vv=VM code, C=native code)
> >> V [libjvm.so+0xcdb4d8] void
> >> Access<1572864UL>::store_at<int>(oop,long,__type_1)+0xd8
> >> V [libjvm.so+0x1bd2900] void
> >> Reflection::array_set(jvalue*,arrayOop,int,BasicType,Thread*)+0x300
> >> V [libjvm.so+0x11cf464] JVM_SetArrayElement+0x6e4
> >> C [libjava.so+0x147e8] Java_java_lang_reflect_Array_set+0x18
> >> j
> >> java.lang.reflect.Array.set(Ljava/lang/Object;ILjava/lang/
> Object;)V+-1473468376
> >> java.base at 11.0.0.1-internal
> >> j java.lang.reflect.Array.set(Ljava/lang/Object;ILjava/lang/
> Object;)V+0
> >> java.base at 11.0.0.1-internal
> >> j
> >> javasoft.sqe.tests.vm.concepts.execution.execution080.execution08001.
> execution08001.run([Ljava/lang/String;Ljava/io/PrintStream;)I+617
> >> v ~StubRoutines::call_stub
> >> V [libjvm.so+0x108989c] void JavaCalls::call_helper(JavaValue*,const
> >> methodHandle&,JavaCallArguments*,Thread*)+0x5bc
> >> V [libjvm.so+0x1be0410] oop invoke(InstanceKlass*,const
> >> methodHandle&,Handle,bool,objArrayHandle,BasicType,
> objArrayHandle,bool,Thread*)+0x2c60
> >> V [libjvm.so+0x1be1084] oop
> >> Reflection::invoke_method(oop,Handle,objArrayHandle,Thread*)+0x7b4
> >> V [libjvm.so+0x11d2868] JVM_InvokeMethod+0x5d8
> >> C [libjava.so+0x16458]
> >> Java_jdk_internal_reflect_NativeMethodAccessorImpl_invoke0+0x18
> >> J 1506
> >> jdk.internal.reflect.NativeMethodAccessorImpl.
> invoke0(Ljava/lang/reflect/Method;Ljava/lang/Object;[
> Ljava/lang/Object;)Ljava/lang/Object;
> >> java.base at 11.0.0.1-internal (0 bytes) @ 0xffffffff6f8ad338
> >> [0xffffffff6f8ad040+0x00000000000002f8]
> >> J 6474 c2
> >> jdk.internal.reflect.NativeMethodAccessorImpl.
> invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
> >> java.base at 11.0.0.1-internal (104 bytes) @ 0xffffffff6fd959c4
> >> [0xffffffff6fd95960+0x0000000000000064]
> >> J 5773 c2
> >> jdk.internal.reflect.DelegatingMethodAccessorImpl.
> invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
> >> java.base at 11.0.0.1-internal (10 bytes) @ 0xffffffff6f83e670
> >> [0xffffffff6f83e620+0x0000000000000050]
> >> J 4866 c1
> >> com.sun.jck.lib.ExecJCKTestSameJVMCmd$SimpleTest.run([Ljava/lang/
> String;Ljava/io/PrintWriter;Ljava/io/PrintWriter;)Lcom/
> sun/javatest/Status;
> >> (405 bytes) @ 0xffffffff696dfee4 [0xffffffff696df0a0+
> 0x0000000000000e44]
> >> J 5654 c1
> >> com.sun.jck.lib.ExecJCKTestSameJVMCmd.execute(
> Ljava/lang/ClassLoader;Ljava/lang/String;[Ljava/lang/
> String;Ljava/io/PrintWriter;Ljava/io/PrintWriter;I)Lcom/
> sun/javatest/Status;
> >> (397 bytes) @ 0xffffffff68d4dd40 [0xffffffff68d4aea0+
> 0x0000000000002ea0]
> >> J 6242 c2
> >> com.sun.jck.lib.ExecJCKTestSameJVMCmd.run([Ljava/lang/String;Ljava/io/
> PrintWriter;Ljava/io/PrintWriter;)Lcom/sun/javatest/Status;
> >> (1022 bytes) @ 0xffffffff6fef30b0 [0xffffffff6fef0000+
> 0x00000000000030b0]
> >> J 1689 c1
> >> com.sun.jck.lib.ExecInSeparateThreadCmd$StatusCallable.call()Ljava/
> lang/Object;
> >> (5 bytes) @ 0xffffffff68d98114 [0xffffffff68d97f00+0x0000000000000214]
> >> J 6097 c1 java.util.concurrent.FutureTask.run()V
> java.base at 11.0.0.1-internal
> >> (123 bytes) @ 0xffffffff68e5f900 [0xffffffff68e5ee40+
> 0x0000000000000ac0]
> >> J 5653 c2 java.lang.Thread.run()V java.base at 11.0.0.1-internal (17
> bytes) @
> >> 0xffffffff6f851b78 [0xffffffff6f851b20+0x0000000000000058]
> >> v ~StubRoutines::call_stub
> >> V [libjvm.so+0x108989c] void JavaCalls::call_helper(JavaValue*,const
> >> methodHandle&,JavaCallArguments*,Thread*)+0x5bc
> >> V [libjvm.so+0x1088220] void
> >> JavaCalls::call_virtual(JavaValue*,Klass*,Symbol*,
> Symbol*,JavaCallArguments*,Thread*)+0x1e0
> >> V [libjvm.so+0x1088328] void
> >> JavaCalls::call_virtual(JavaValue*,Handle,Klass*,
> Symbol*,Symbol*,Thread*)+0xb8
> >> V [libjvm.so+0x11c5140] void thread_entry(JavaThread*,Thread*)+0x1e0
> >> V [libjvm.so+0x1de56e4] void JavaThread::thread_main_inner()+0x2e4
> >> V [libjvm.so+0x1de53d0] void JavaThread::run()+0x350
> >> V [libjvm.so+0x1aa4ff4] thread_native_entry+0x2e4
> >>
> >> Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
> >> j java.lang.reflect.Array.set(Ljava/lang/Object;ILjava/lang/
> Object;)V+0
> >> java.base at 11.0.0.1-internal
> >> j
> >> javasoft.sqe.tests.vm.concepts.execution.execution080.execution08001.
> execution08001.run([Ljava/lang/String;Ljava/io/PrintStream;)I+617
> >> v ~StubRoutines::call_stub
> >> J 1506
> >> jdk.internal.reflect.NativeMethodAccessorImpl.
> invoke0(Ljava/lang/reflect/Method;Ljava/lang/Object;[
> Ljava/lang/Object;)Ljava/lang/Object;
> >> java.base at 11.0.0.1-internal (0 bytes) @ 0xffffffff6f8ad0ec
> >> [0xffffffff6f8ad040+0x00000000000000ac]
> >> J 6474 c2
> >> jdk.internal.reflect.NativeMethodAccessorImpl.
> invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
> >> java.base at 11.0.0.1-internal (104 bytes) @ 0xffffffff6fd959c4
> >> [0xffffffff6fd95960+0x0000000000000064]
> >> J 5773 c2
> >> jdk.internal.reflect.DelegatingMethodAccessorImpl.
> invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
> >> java.base at 11.0.0.1-internal (10 bytes) @ 0xffffffff6f83e670
> >> [0xffffffff6f83e620+0x0000000000000050]
> >> J 4866 c1
> >> com.sun.jck.lib.ExecJCKTestSameJVMCmd$SimpleTest.run([Ljava/lang/
> String;Ljava/io/PrintWriter;Ljava/io/PrintWriter;)Lcom/
> sun/javatest/Status;
> >> (405 bytes) @ 0xffffffff696dfee4 [0xffffffff696df0a0+
> 0x0000000000000e44]
> >> J 5654 c1
> >> com.sun.jck.lib.ExecJCKTestSameJVMCmd.execute(
> Ljava/lang/ClassLoader;Ljava/lang/String;[Ljava/lang/
> String;Ljava/io/PrintWriter;Ljava/io/PrintWriter;I)Lcom/
> sun/javatest/Status;
> >> (397 bytes) @ 0xffffffff68d4dd40 [0xffffffff68d4aea0+
> 0x0000000000002ea0]
> >> J 6242 c2
> >> com.sun.jck.lib.ExecJCKTestSameJVMCmd.run([Ljava/lang/String;Ljava/io/
> PrintWriter;Ljava/io/PrintWriter;)Lcom/sun/javatest/Status;
> >> (1022 bytes) @ 0xffffffff6fef30b0 [0xffffffff6fef0000+
> 0x00000000000030b0]
> >> J 1689 c1
> >> com.sun.jck.lib.ExecInSeparateThreadCmd$StatusCallable.call()Ljava/
> lang/Object;
> >> (5 bytes) @ 0xffffffff68d98114 [0xffffffff68d97f00+0x0000000000000214]
> >> J 6097 c1 java.util.concurrent.FutureTask.run()V
> java.base at 11.0.0.1-internal
> >> (123 bytes) @ 0xffffffff68e5f900 [0xffffffff68e5ee40+
> 0x0000000000000ac0]
> >> J 5653 c2 java.lang.Thread.run()V java.base at 11.0.0.1-internal (17
> bytes) @
> >> 0xffffffff6f851b78 [0xffffffff6f851b20+0x0000000000000058]
> >> v ~StubRoutines::call_stub
> >>
> >> siginfo: si_signo: 10 (SIGBUS), si_code: 1 (BUS_ADRALN), si_addr:
> >> 0x00000007b80e047a
> >>
> >> Register to memory mapping:
> >>
> >> G1=0x000000000197000c is an unknown value
> >> G2=0xfffffffffffffd48 is an unknown value
> >> G3=0x00000000c0100400 is an unknown value
> >> G4=0x0 is NULL
> >> G5=0x00000007b80e0468 is pointing into object: 0x00000007b80635b0
> >>
> >> [error occurred during error reporting (printing register info), id 0xa]
> >>
> >> Registers:
> >> G1=0x000000000197000c G2=0xfffffffffffffd48 G3=0x00000000c0100400
> >> G4=0x0000000000000000
> >> G5=0x00000007b80e0468 G6=0x0000000000000000 G7=0xffffffff5441a240
> >> Y=0x0000000000000000
> >> O0=0xffffffff3f9fd408 O1=0x0000000000091b61 O2=0x0000000000091800
> >> O3=0xfffffff68194b410
> >> O4=0x00000007b80e0468 O5=0x0000000000000010 O6=0xffffffff3f9fcb41
> >> O7=0x00000007b80e0468
> >> L0=0x00000007b80e0468 L1=0x00000007b80e0468 L2=0xfffffff68194b410
> >> L3=0x0000000000000010
> >> L4=0x0000000000000000 L5=0x00000007b80e0468 L6=0xfffffff68194b410
> >> L7=0x0000000000092434
> >> I0=0xffffffff3f9fd558 I1=0x0000000000000012 I2=0x0000000000000000
> >> I3=0xfffffff6819dd844
> >> I4=0x0000000000000010 I5=0x0000000000092400 I6=0xffffffff3f9fcc11
> >> I7=0xfffffff680ed28f8
> >> PC=0xfffffff67ffdb4d8 nPC=0xfffffff67ffdb4dc
> >>
> >>
> >> Top of Stack: (sp=0xffffffff3f9fd340)
> >> 0xffffffff3f9fd340: 00000007b80e0468 00000007b80e0468
> >> 0xffffffff3f9fd350: fffffff68194b410 0000000000000010
> >> 0xffffffff3f9fd360: 0000000000000000 00000007b80e0468
> >> 0xffffffff3f9fd370: fffffff68194b410 0000000000092434
> >> 0xffffffff3f9fd380: ffffffff3f9fd558 0000000000000012
> >> 0xffffffff3f9fd390: 0000000000000000 fffffff6819dd844
> >> 0xffffffff3f9fd3a0: 0000000000000010 0000000000092400
> >> 0xffffffff3f9fd3b0: ffffffff3f9fcc11 fffffff680ed28f8
> >> 0xffffffff3f9fd3c0: ffffffff3f9fcc61 fffffff680af1514
> >> 0xffffffff3f9fd3d0: fffffff6819c5d68 0000000100107880
> >> 0xffffffff3f9fd3e0: 00000003b80e00d0 fffffff6819c5d68
> >> 0xffffffff3f9fd3f0: 00000007b80e0468 00000007b80e0468
> >> 0xffffffff3f9fd400: 00000007b80e0468 00000007b80e0468
> >> 0xffffffff3f9fd410: fffffff68194b410 fffffff6819dd844
> >> 0xffffffff3f9fd420: 00000000000002dc 0000000000000000
> >> 0xffffffff3f9fd430: ffffffff3f9fd558 00000007b80e0468
> >>
> >> Instructions: (pc=0xfffffff67ffdb4d8)
> >> 0xfffffff67ffdb4b8: 40 36 e0 42 90 07 a7 df 10 80 00 06 d8 5f a7 df
> >> 0xfffffff67ffdb4c8: e4 77 a7 e7 e6 5f a7 e7 e6 77 a7 df d8 5f a7 df
> >> 0xfffffff67ffdb4d8: f4 23 00 19 d6 0e e0 00 80 a2 e0 00 02 40 00 16
> >> 0xfffffff67ffdb4e8: 01 00 00 00 40 36 e0 89 90 07 a7 df da 0e e0 00
> >
> >
>
>
More information about the hotspot-dev
mailing list