JDK-8240702 : jvmti/ClassFileLoadHook/classfloadhk006 failed due to "VerifyError: Operand stack underflow"
  • Type: Bug
  • Component: hotspot
  • Sub-Component: jvmti
  • Affected Version: 15
  • Priority: P4
  • Status: Closed
  • Resolution: Duplicate
  • OS: os_x
  • CPU: x86_64
  • Submitted: 2020-03-07
  • Updated: 2020-03-10
  • Resolved: 2020-03-10
Related Reports
Duplicate :  
Description
The following test failed in the JDK15 CI:

vmTestbase/nsk/jvmti/ClassFileLoadHook/classfloadhk006/TestDescription.java

Here's a snippet from the log file:

----------System.out:(48/4374)----------
Command line: [/mesos/work_dir/jib-master/install/jdk-15+14-517/macosx-x64-debug.jdk/jdk-15/fastdebug/bin/javac -d /mesos/work_dir/slaves/7cfa21b9-afde-4338-a459-d3e0a13ec793-S1176/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/5550e061-19f6-4dc9-8903-6360937388e1/runs/7e1892ff-6157-423f-8d91-e76ce6c2472d/testoutput/test-support/jtreg_open_test_hotspot_jtreg_vmTestbase_nsk_jvmti/scratch/1/bin/newclass -cp /mesos/work_dir/slaves/7cfa21b9-afde-4338-a459-d3e0a13ec793-S1176/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/5550e061-19f6-4dc9-8903-6360937388e1/runs/7e1892ff-6157-423f-8d91-e76ce6c2472d/testoutput/test-support/jtreg_open_test_hotspot_jtreg_vmTestbase_nsk_jvmti/classes/1/vmTestbase/nsk/jvmti/ClassFileLoadHook/classfloadhk006/TestDescription.d:/mesos/work_dir/slaves/7cfa21b9-afde-4338-a459-d3e0a13ec793-S1176/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/5550e061-19f6-4dc9-8903-6360937388e1/runs/7e1892ff-6157-423f-8d91-e76ce6c2472d/testoutput/test-support/jtreg_open_test_hotspot_jtreg_vmTestbase_nsk_jvmti/classes/1/vmTestbase:/mesos/work_dir/slaves/7cfa21b9-afde-4338-a459-d3e0a13ec793-S1176/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/5550e061-19f6-4dc9-8903-6360937388e1/runs/7e1892ff-6157-423f-8d91-e76ce6c2472d/testoutput/test-support/jtreg_open_test_hotspot_jtreg_vmTestbase_nsk_jvmti/classes/1/test/lib /mesos/work_dir/jib-master/install/jdk-15+14-517/src.full/open/test/hotspot/jtreg/vmTestbase/nsk/jvmti/ClassFileLoadHook/classfloadhk006/newclass/classfloadhk006r.java]
[2020-03-07T07:10:01.258639Z] Gathering output for process 8582
Exception in thread "main" java.lang.VerifyError: Operand stack underflow
Exception Details:
  Location:
    com/sun/tools/javac/comp/Check.validateTypeAnnotation(Lcom/sun/tools/javac/tree/JCTree$JCAnnotation;Z)V @23: dmul
  Reason:
    Attempt to pop empty stack.
  Current Frame:
    bci: @23
    flags: { }
    locals: { 'com/sun/tools/javac/comp/Check', 'com/sun/tools/javac/tree/JCTree$JCAnnotation', integer }
    stack: { }
  Bytecode:
    0000000: 2bb4 08c5 b806 f957 2a2b b608 7f2b b208
    0000010: edb6 08f0 9900 2b6b b406 bab4 02e2 b601
    0000020: cf9a 001e 2a2b 1cb6 08f1 9a00 152a b400
    0000030: 762b b606 bd2b b408 c5b8 08f5 b601 bdb1
    0000040:                                        
  Stackmap Table:
    same_frame(@63)

	at jdk.compiler/com.sun.tools.javac.comp.Modules.<init>(Modules.java:189)
	at jdk.compiler/com.sun.tools.javac.comp.Modules.instance(Modules.java:179)
	at jdk.compiler/com.sun.tools.javac.code.Symtab.<init>(Symtab.java:511)
	at jdk.compiler/com.sun.tools.javac.code.Symtab.instance(Symtab.java:91)
	at jdk.compiler/com.sun.tools.javac.comp.Attr.<init>(Attr.java:136)
	at jdk.compiler/com.sun.tools.javac.comp.Attr.instance(Attr.java:127)
	at jdk.compiler/com.sun.tools.javac.comp.Annotate.<init>(Annotate.java:109)
	at jdk.compiler/com.sun.tools.javac.comp.Annotate.instance(Annotate.java:84)
	at jdk.compiler/com.sun.tools.javac.jvm.ClassReader.<init>(ClassReader.java:253)
	at jdk.compiler/com.sun.tools.javac.jvm.ClassReader.instance(ClassReader.java:246)
	at jdk.compiler/com.sun.tools.javac.code.ClassFinder.<init>(ClassFinder.java:185)
	at jdk.compiler/com.sun.tools.javac.code.ClassFinder.instance(ClassFinder.java:178)
	at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.<init>(JavaCompiler.java:392)
	at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.instance(JavaCompiler.java:115)
	at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment.<init>(JavacProcessingEnvironment.java:215)
	at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment.instance(JavacProcessingEnvironment.java:200)
	at jdk.compiler/com.sun.tools.javac.api.BasicJavacTask.initPlugins(BasicJavacTask.java:216)
	at jdk.compiler/com.sun.tools.javac.main.Main.compile(Main.java:291)
	at jdk.compiler/com.sun.tools.javac.main.Main.compile(Main.java:176)
	at jdk.compiler/com.sun.tools.javac.Main.compile(Main.java:57)
	at jdk.compiler/com.sun.tools.javac.Main.main(Main.java:43)

[2020-03-07T07:10:03.211528Z] Waiting for completion for process 8582
[2020-03-07T07:10:03.212104Z] Waiting for completion finished for process 8582
[2020-03-07T07:10:03.212260Z] Waiting for completion for process 8582
[2020-03-07T07:10:03.212354Z] Waiting for completion finished for process 8582
----------System.err:(71/4330)----------

This failure appears to be in javac, but I don't know if this
test is compiling some special .java file for the test's
purposes or not. Starting this failure in hotspot/jvmti
for initial evaluation.