Skip to content
  • Bas Nieuwenhuizen's avatar
    radv: Fix uninitialized variable in renderpass. · 528b70db
    Bas Nieuwenhuizen authored and Eric Engestrom's avatar Eric Engestrom committed
    Fixes some dEQP-VK.renderpass2.* flakes. Valgrind:
    
    Test case 'dEQP-VK.renderpass2.dedicated_allocation.attachment.8.724'..
    ==754520== Conditional jump or move depends on uninitialised value(s)
    ==754520==    at 0x575B21C: radv_layout_is_htile_compressed (radv_image.c:1690)
    ==754520==    by 0x572F470: radv_handle_depth_image_transition (radv_cmd_buffer.c:5855)
    ==754520==    by 0x572F2F2: radv_handle_image_transition (radv_cmd_buffer.c:6123)
    ==754520==    by 0x572EEC6: radv_handle_subpass_image_transition (radv_cmd_buffer.c:3385)
    ==754520==    by 0x572A104: radv_cmd_buffer_begin_subpass (radv_cmd_buffer.c:4843)
    ==754520==    by 0x572A007: radv_CmdBeginRenderPass (radv_cmd_buffer.c:4913)
    ==754520==    by 0x572A197: radv_CmdBeginRenderPass2 (radv_cmd_buffer.c:4921)
    
    Why false?
    
    A renderloop happens when the same attachment is both used as input
    attachment and output (color, ds) attachment in a subpass. Of course
    this doesn't happen outside of a renderpass and hence we can initialize
    it to false at the start of the renderpass.
    
    Fixes: 66131ceb
    
     "radv: Pass through render loop detection to internal layout decisions."
    Reviewed-by: default avatarSamuel Pitoiset <samuel.pitoiset@gmail.com>
    Reviewed-by: default avatarDaniel Schürmann <daniel@schuermann.dev>
    Closes: #3074
    Part-of: <!6068>
    (cherry picked from commit 18fe130e)
    528b70db