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

Lanai: Crash in MTLClip when Metal API Validation enabled

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: P2
    • Resolution: Fixed
    • Affects Version/s: internal
    • Fix Version/s: None
    • Component/s: client-libs
    • Subcomponent:
      2d

      Description

      Running J2Ddemo with METAL_DEVICE_WRAPPER_TYPE=1 triggers assertion in the validation code.

      -[MTLDebugRenderCommandEncoder validateFramebufferWithRenderPipelineState:]:1288: failed assertion `Framebuffer With Render Pipeline State Validation
      For stencil attachment, the render pipeline's pixelFormat (MTLPixelFormatInvalid) does not match the framebuffer's pixelFormat (MTLPixelFormatStencil8).
      '

      Here is the stack of the failure:
      __pthread_kill 0x00007fff20310462
      pthread_kill 0x00007fff2033e610
      abort 0x00007fff20291720
      __assert_rtn 0x00007fff202909d6
      MTLReportFailure.cold.1 0x00007fff283a6fe4
      MTLReportFailure 0x00007fff283951b2
      _MTLMessageContextEnd 0x00007fff2838ef6a
      -[MTLDebugRenderCommandEncoder validateFramebufferWithRenderPipelineState:] 0x00007fff20afb2b4
      -[MTLDebugRenderCommandEncoder setRenderPipelineState:] 0x00007fff20afb4c6
      -[MTLClip setMaskGenerationPipelineState:destWidth:destHeight:pipelineStateStorage:] MTLClip.m:249
      -[EncoderStates updateEncoder:context:renderOptions:forceUpdate:] EncoderManager.m:141
      -[EncoderManager getEncoder:renderOptions:] EncoderManager.m:417
      -[EncoderManager getRenderEncoder:isDstOpaque:] EncoderManager.m:286
      MTLRenderer_FillSpans MTLRenderer.m:404
      Java_sun_java2d_metal_MTLRenderQueue_flushBuffer MTLRenderQueue.m:0
      <unknown> 0x000000011da3aa39
      <unknown> 0x0000000116b53124
      <unknown> 0x0000000115d1fa4d
      <unknown> 0x0000000115d16d4a
      JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, Thread*) javaCalls.cpp:426
      JavaCalls::call_virtual(JavaValue*, Klass*, Symbol*, Symbol*, JavaCallArguments*, Thread*) javaCalls.cpp:340
      JavaCalls::call_virtual(JavaValue*, Klass*, Symbol*, Symbol*, JavaCallArguments*, Thread*) javaCalls.cpp:195
      JavaCalls::call_virtual(JavaValue*, Handle, Klass*, Symbol*, Symbol*, Thread*) javaCalls.cpp:201
      thread_entry(JavaThread*, Thread*) jvm.cpp:2840
      JavaThread::thread_main_inner() thread.cpp:1497
      JavaThread::run() thread.cpp:1480
      Thread::call_run() thread.cpp:402
      thread_native_entry(Thread*) os_bsd.cpp:601
      _pthread_start 0x00007fff2033e950
      thread_start 0x00007fff2033a47b

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              avu Alexey Ushakov
              Reporter:
              avu Alexey Ushakov
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: