radv/rra/gfx10_3: Fix acceleration structure addresses

RRA adds rra_accel_struct_chunk_header::header_offset to the address so we need to subtract it.

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35985>
This commit is contained in:
Konstantin Seurer
2025-07-07 20:06:16 +02:00
committed by Marge Bot
parent 406066c6f6
commit 4e258f8579

View File

@@ -428,7 +428,7 @@ rra_dump_acceleration_structure(const struct radv_physical_device *pdev,
* On GFX12, we mask away the top 16 bits because the instance BLAS addresses
* use pointer flags.
*/
uint64_t va = accel_struct->va & 0x1FFFFFFFFFFFFFF;
uint64_t va = (accel_struct->va & 0x1FFFFFFFFFFFFFF) - node_parent_table_size;
if (radv_use_bvh8(pdev))
va &= 0xFFFFFFFFFFFF;
memcpy(chunk_header.virtual_address, &va, sizeof(uint64_t));