Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8316392

compiler/interpreter/TestVerifyStackAfterDeopt.java failed with SIGBUS in PcDescContainer::find_pc_desc_internal

    XMLWordPrintable

Details

    • b24
    • aarch64
    • os_x
    • Verified

    Backports

      Description

        The following test failed in the JDK22 CI:

        compiler/interpreter/TestVerifyStackAfterDeopt.java

        Here's a snippet from the log file:

        #section:main
        ----------messages:(6/811)----------
        command: main -XX:+IgnoreUnrecognizedVMOptions -XX:TieredStopAtLevel=1 -XX:AllocatePrefetchLines=1 -XX:AllocateInstancePrefetchLines=1 -XX:AllocatePrefetchStepSize=16 -XX:AllocatePrefetchDistance=1 -XX:MinTLABSize=1k -XX:TLABSize=1k -XX:+DeoptimizeALot -XX:+VerifyStack compiler.interpreter.TestVerifyStackAfterDeopt
        reason: User specified action: run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:TieredStopAtLevel=1 -XX:AllocatePrefetchLines=1 -XX:AllocateInstancePrefetchLines=1 -XX:AllocatePrefetchStepSize=16 -XX:AllocatePrefetchDistance=1 -XX:MinTLABSize=1k -XX:TLABSize=1k -XX:+DeoptimizeALot -XX:+VerifyStack compiler.interpreter.TestVerifyStackAfterDeopt
        started: Sat Sep 16 11:46:03 GMT 2023
        Mode: othervm [/othervm specified]
        finished: Sat Sep 16 11:46:10 GMT 2023
        elapsed time (seconds): 6.778
        ----------configuration:(0/0)----------
        ----------System.out:(19/1143)----------
        #
        # A fatal error has been detected by the Java Runtime Environment:
        #
        # SIGBUS (0xa) at pc=0x00000001077fcf6c, pid=83896, tid=6915
        #
        # JRE version: Java(TM) SE Runtime Environment (22.0+16) (fastdebug build 22-ea+16-1142)
        # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 22-ea+16-1142, compiled mode, emulated-client, sharing, tiered, compressed class ptrs, g1 gc, bsd-aarch64)
        # Problematic frame:
        # V [libjvm.dylib+0xff4f6c] PcDescContainer::find_pc_desc_internal(unsigned char*, bool, PcDescSearch const&)+0x76c
        #
        # Core dump will be written. Default location: core.83896
        #
        # An error report file with more information is saved as:
        # /System/Volumes/Data/mesos/work_dir/slaves/cd627e65-f015-4fb1-a1d2-b6c9b8127f98-S176544/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/bd0a4977-ec35-4387-8f72-a036635a283d/runs/93184247-9afb-4c48-848f-f631c880deda/testoutput/test-support/jtreg_open_test_hotspot_jtreg_tier1_compiler_2/scratch/3/hs_err_pid83896.log
        [0.216s][warning][os] Loading hsdis library failed
        #
        # If you would like to submit a bug report, please visit:
        # https://bugreport.java.com/bugreport/crash.jsp
        #
        ----------System.err:(1/90)----------
        Java HotSpot(TM) 64-Bit Server VM warning: AllocatePrefetchDistance must be multiple of 8
        ----------rerun:(52/7087)*----------

        Here's the crashing thread's stack:

        --------------- T H R E A D ---------------

        Current thread (0x000000011d80c010): JavaThread "main" [_thread_in_Java, id=6915, stack(0x000000016b6b8000,0x000000016b8bb000) (2060K)]

        Stack: [0x000000016b6b8000,0x000000016b8bb000], sp=0x000000016b8b7b80, free space=2046k
        Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
        V [libjvm.dylib+0xff4f6c] PcDescContainer::find_pc_desc_internal(unsigned char*, bool, PcDescSearch const&)+0x76c
        V [libjvm.dylib+0x639dac] CompiledMethod::scope_desc_at(unsigned char*)+0x70
        V [libjvm.dylib+0x7db870] frame::describe(FrameValues&, int, RegisterMap const*)+0x84c
        V [libjvm.dylib+0xa46b4c] JavaThread::print_frame_layout(int, bool)+0x264
        V [libjvm.dylib+0x6e8ac0] Deoptimization::unpack_frames(JavaThread*, int)+0x1f8
        v ~DeoptimizationBlob 0x0000000110a81120
        j java.lang.invoke.MethodTypeForm.<init>(Ljava/lang/invoke/MethodType;)V+235 java.base@22-ea
        J 219 c1 java.lang.invoke.MethodType.makeImpl(Ljava/lang/Class;[Ljava/lang/Class;Z)Ljava/lang/invoke/MethodType; java.base@22-ea (109 bytes) @ 0x0000000110bbf448 [0x0000000110bbf000+0x0000000000000448]
        J 273 c1 java.lang.invoke.MethodType.methodType(Ljava/lang/Class;[Ljava/lang/Class;Z)Ljava/lang/invoke/MethodType; java.base@22-ea (69 bytes) @ 0x0000000110c01a98 [0x0000000110c01940+0x0000000000000158]
        J 210 c1 java.lang.invoke.MethodTypeForm.canonicalize(Ljava/lang/invoke/MethodType;I)Ljava/lang/invoke/MethodType; java.base@22-ea (59 bytes) @ 0x0000000110bb9304 [0x0000000110bb9200+0x0000000000000104]
        J 219 c1 java.lang.invoke.MethodType.makeImpl(Ljava/lang/Class;[Ljava/lang/Class;Z)Ljava/lang/invoke/MethodType; java.base@22-ea (109 bytes) @ 0x0000000110bbf3d8 [0x0000000110bbf000+0x00000000000003d8]
        J 272 c1 java.lang.invoke.MethodType.insertParameterTypes(I[Ljava/lang/Class;)Ljava/lang/invoke/MethodType; java.base@22-ea (121 bytes) @ 0x0000000110c00918 [0x0000000110c00540+0x00000000000003d8]
        J 271 c1 java.lang.invoke.MethodType.invokerType()Ljava/lang/invoke/MethodType; java.base@22-ea (9 bytes) @ 0x0000000110c000f8 [0x0000000110c00040+0x00000000000000b8]
        j java.lang.invoke.DirectMethodHandle.makePreparedFieldLambdaForm(BZI)Ljava/lang/invoke/LambdaForm;+434 java.base@22-ea
        J 234 c1 java.lang.invoke.DirectMethodHandle.preparedFieldLambdaForm(BZLjava/lang/Class;)Ljava/lang/invoke/LambdaForm; java.base@22-ea (48 bytes) @ 0x0000000110bd238c [0x0000000110bd2280+0x000000000000010c]
        J 230 c1 java.lang.invoke.DirectMethodHandle.preparedFieldLambdaForm(Ljava/lang/invoke/MemberName;)Ljava/lang/invoke/LambdaForm; java.base@22-ea (180 bytes) @ 0x0000000110bcea94 [0x0000000110bce940+0x0000000000000154]
        J 226 c1 java.lang.invoke.DirectMethodHandle.make(BLjava/lang/Class;Ljava/lang/invoke/MemberName;Ljava/lang/Class;)Ljava/lang/invoke/DirectMethodHandle; java.base@22-ea (275 bytes) @ 0x0000000110bc9ae8 [0x0000000110bc9840+0x00000000000002a8]
        J 225 c1 java.lang.invoke.DirectMethodHandle.make(Ljava/lang/Class;Ljava/lang/invoke/MemberName;)Ljava/lang/invoke/DirectMethodHandle; java.base@22-ea (21 bytes) @ 0x0000000110bc925c [0x0000000110bc91c0+0x000000000000009c]
        J 157 c1 java.lang.invoke.MethodHandles$Lookup.getDirectFieldCommon(BLjava/lang/Class;Ljava/lang/invoke/MemberName;Z)Ljava/lang/invoke/MethodHandle; java.base@22-ea (67 bytes) @ 0x0000000110b92bc4 [0x0000000110b92ac0+0x0000000000000104]
        J 153 c1 java.lang.invoke.MethodHandles$Lookup.unreflectField(Ljava/lang/reflect/Field;Z)Ljava/lang/invoke/MethodHandle; java.base@22-ea (126 bytes) @ 0x0000000110b90be4 [0x0000000110b909c0+0x0000000000000224]
        J 152 c1 java.lang.invoke.MethodHandles$Lookup.unreflectGetter(Ljava/lang/reflect/Field;)Ljava/lang/invoke/MethodHandle; java.base@22-ea (7 bytes) @ 0x0000000110b905f4 [0x0000000110b90540+0x00000000000000b4]
        j java.lang.invoke.MethodHandleImpl$1.unreflectField(Ljava/lang/reflect/Field;Z)Ljava/lang/invoke/MethodHandle;+18 java.base@22-ea
        j jdk.internal.reflect.MethodHandleAccessorFactory.newFieldAccessor(Ljava/lang/reflect/Field;Z)Ljdk/internal/reflect/FieldAccessorImpl;+63 java.base@22-ea
        J 104 c1 jdk.internal.reflect.ReflectionFactory.newFieldAccessor(Ljava/lang/reflect/Field;Z)Ljdk/internal/reflect/FieldAccessor; java.base@22-ea (80 bytes) @ 0x0000000110b76fcc [0x0000000110b76e40+0x000000000000018c]
        J 103 c1 java.lang.reflect.Field.acquireFieldAccessor()Ljdk/internal/reflect/FieldAccessor; java.base@22-ea (46 bytes) @ 0x0000000110b76668 [0x0000000110b76580+0x00000000000000e8]
        J 88 c1 java.lang.reflect.Field.getInt(Ljava/lang/Object;)I java.base@22-ea (39 bytes) @ 0x0000000110b6cd7c [0x0000000110b6cbc0+0x00000000000001bc]
        j java.lang.invoke.MethodHandleNatives.verifyConstants()Z+48 java.base@22-ea
        j java.lang.invoke.MethodHandleNatives.<clinit>()V+85 java.base@22-ea
        v ~StubRoutines::call_stub 0x00000001109a816c
        V [libjvm.dylib+0xa0af28] JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, JavaThread*)+0x65c
        V [libjvm.dylib+0x9c0080] InstanceKlass::call_class_initializer(JavaThread*)+0x3e8
        V [libjvm.dylib+0x9bd294] InstanceKlass::initialize_impl(JavaThread*)+0x918
        V [libjvm.dylib+0x9bc904] InstanceKlass::initialize(JavaThread*)+0x30
        V [libjvm.dylib+0x13164f8] Threads::initialize_jsr292_core_classes(JavaThread*)+0x52c
        V [libjvm.dylib+0x1316e1c] Threads::create_vm(JavaVMInitArgs*, bool*)+0x8d8
        V [libjvm.dylib+0xb2b380] JNI_CreateJavaVM+0x70
        C [libjli.dylib+0xa650] JavaMain+0x104
        C [libjli.dylib+0xd4c4] ThreadJavaMain+0xc
        C [libsystem_pthread.dylib+0x726c] _pthread_start+0x94
        Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
        v ~DeoptimizationBlob 0x0000000110a810f4
        j java.lang.invoke.MethodTypeForm.<init>(Ljava/lang/invoke/MethodType;)V+235 java.base@22-ea
        J 219 c1 java.lang.invoke.MethodType.makeImpl(Ljava/lang/Class;[Ljava/lang/Class;Z)Ljava/lang/invoke/MethodType; java.base@22-ea (109 bytes) @ 0x0000000110bbf448 [0x0000000110bbf000+0x0000000000000448]
        J 273 c1 java.lang.invoke.MethodType.methodType(Ljava/lang/Class;[Ljava/lang/Class;Z)Ljava/lang/invoke/MethodType; java.base@22-ea (69 bytes) @ 0x0000000110c01a98 [0x0000000110c01940+0x0000000000000158]
        J 210 c1 java.lang.invoke.MethodTypeForm.canonicalize(Ljava/lang/invoke/MethodType;I)Ljava/lang/invoke/MethodType; java.base@22-ea (59 bytes) @ 0x0000000110bb9304 [0x0000000110bb9200+0x0000000000000104]
        J 219 c1 java.lang.invoke.MethodType.makeImpl(Ljava/lang/Class;[Ljava/lang/Class;Z)Ljava/lang/invoke/MethodType; java.base@22-ea (109 bytes) @ 0x0000000110bbf3d8 [0x0000000110bbf000+0x00000000000003d8]
        J 272 c1 java.lang.invoke.MethodType.insertParameterTypes(I[Ljava/lang/Class;)Ljava/lang/invoke/MethodType; java.base@22-ea (121 bytes) @ 0x0000000110c00918 [0x0000000110c00540+0x00000000000003d8]
        J 271 c1 java.lang.invoke.MethodType.invokerType()Ljava/lang/invoke/MethodType; java.base@22-ea (9 bytes) @ 0x0000000110c000f8 [0x0000000110c00040+0x00000000000000b8]
        j java.lang.invoke.DirectMethodHandle.makePreparedFieldLambdaForm(BZI)Ljava/lang/invoke/LambdaForm;+434 java.base@22-ea
        J 234 c1 java.lang.invoke.DirectMethodHandle.preparedFieldLambdaForm(BZLjava/lang/Class;)Ljava/lang/invoke/LambdaForm; java.base@22-ea (48 bytes) @ 0x0000000110bd238c [0x0000000110bd2280+0x000000000000010c]
        J 230 c1 java.lang.invoke.DirectMethodHandle.preparedFieldLambdaForm(Ljava/lang/invoke/MemberName;)Ljava/lang/invoke/LambdaForm; java.base@22-ea (180 bytes) @ 0x0000000110bcea94 [0x0000000110bce940+0x0000000000000154]
        J 226 c1 java.lang.invoke.DirectMethodHandle.make(BLjava/lang/Class;Ljava/lang/invoke/MemberName;Ljava/lang/Class;)Ljava/lang/invoke/DirectMethodHandle; java.base@22-ea (275 bytes) @ 0x0000000110bc9ae8 [0x0000000110bc9840+0x00000000000002a8]
        J 225 c1 java.lang.invoke.DirectMethodHandle.make(Ljava/lang/Class;Ljava/lang/invoke/MemberName;)Ljava/lang/invoke/DirectMethodHandle; java.base@22-ea (21 bytes) @ 0x0000000110bc925c [0x0000000110bc91c0+0x000000000000009c]
        J 157 c1 java.lang.invoke.MethodHandles$Lookup.getDirectFieldCommon(BLjava/lang/Class;Ljava/lang/invoke/MemberName;Z)Ljava/lang/invoke/MethodHandle; java.base@22-ea (67 bytes) @ 0x0000000110b92bc4 [0x0000000110b92ac0+0x0000000000000104]
        J 153 c1 java.lang.invoke.MethodHandles$Lookup.unreflectField(Ljava/lang/reflect/Field;Z)Ljava/lang/invoke/MethodHandle; java.base@22-ea (126 bytes) @ 0x0000000110b90be4 [0x0000000110b909c0+0x0000000000000224]
        J 152 c1 java.lang.invoke.MethodHandles$Lookup.unreflectGetter(Ljava/lang/reflect/Field;)Ljava/lang/invoke/MethodHandle; java.base@22-ea (7 bytes) @ 0x0000000110b905f4 [0x0000000110b90540+0x00000000000000b4]
        j java.lang.invoke.MethodHandleImpl$1.unreflectField(Ljava/lang/reflect/Field;Z)Ljava/lang/invoke/MethodHandle;+18 java.base@22-ea
        j jdk.internal.reflect.MethodHandleAccessorFactory.newFieldAccessor(Ljava/lang/reflect/Field;Z)Ljdk/internal/reflect/FieldAccessorImpl;+63 java.base@22-ea
        J 104 c1 jdk.internal.reflect.ReflectionFactory.newFieldAccessor(Ljava/lang/reflect/Field;Z)Ljdk/internal/reflect/FieldAccessor; java.base@22-ea (80 bytes) @ 0x0000000110b76fcc [0x0000000110b76e40+0x000000000000018c]
        J 103 c1 java.lang.reflect.Field.acquireFieldAccessor()Ljdk/internal/reflect/FieldAccessor; java.base@22-ea (46 bytes) @ 0x0000000110b76668 [0x0000000110b76580+0x00000000000000e8]
        J 88 c1 java.lang.reflect.Field.getInt(Ljava/lang/Object;)I java.base@22-ea (39 bytes) @ 0x0000000110b6cd7c [0x0000000110b6cbc0+0x00000000000001bc]
        j java.lang.invoke.MethodHandleNatives.verifyConstants()Z+48 java.base@22-ea
        j java.lang.invoke.MethodHandleNatives.<clinit>()V+85 java.base@22-ea
        v ~StubRoutines::call_stub 0x00000001109a816c

        siginfo: si_signo: 10 (SIGBUS), si_code: 1 (BUS_ADRALN), si_addr: 0x0000000110bbedb8

        I'm starting this bug off in hotspot/compiler for initial triage since
        it is a compiler test.

        Attachments

          Issue Links

            Activity

              People

                tholenstein Tobias Holenstein
                dcubed Daniel Daugherty
                Votes:
                0 Vote for this issue
                Watchers:
                9 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved: