From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: David Rosca Date: Mon, 5 Aug 2024 09:14:37 +0200 Subject: [PATCH] radeonsi/vcn: Add decode DPB buffers as CS dependency This is needed to ensure correct synchronization in kernel eg. when it moves the buffers between VRAM and GTT. Reviewed-by: Boyuan Zhang (cherry picked from commit 0c024bbe641b092bbbc751baae54a37642794de0) Part-of: --- src/gallium/drivers/radeonsi/radeon_vcn_dec.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gallium/drivers/radeonsi/radeon_vcn_dec.c b/src/gallium/drivers/radeonsi/radeon_vcn_dec.c index ede5f9d7c1a5..9e3d0b88493b 100644 --- a/src/gallium/drivers/radeonsi/radeon_vcn_dec.c +++ b/src/gallium/drivers/radeonsi/radeon_vcn_dec.c @@ -1838,6 +1838,7 @@ static unsigned rvcn_dec_dynamic_dpb_t2_message(struct radeon_decoder *dec, rvcn RVID_ERR("Ref list from application is incorrect, using dummy buffer instead.\n"); addr = dec->ws->buffer_get_virtual_address(dummy->dpb.res->buf); } + dec->ws->cs_add_buffer(&dec->cs, d->dpb.res->buf, RADEON_USAGE_READWRITE | RADEON_USAGE_SYNCHRONIZED, RADEON_DOMAIN_VRAM); dynamic_dpb_t2->dpbAddrLo[i] = addr; dynamic_dpb_t2->dpbAddrHi[i] = addr >> 32; ++dynamic_dpb_t2->dpbArraySize;