From 9a3a1027a64f34933d7d7457af6104792e8bd2d7 Mon Sep 17 00:00:00 2001 From: David Rosca Date: Tue, 26 Nov 2024 17:34:30 +0100 Subject: [PATCH] radeonsi/vcn: Unmap bitstream buffer in radeon_dec_destroy If an error occured, the bitstream buffer may still be mapped when calling radeon_dec_destroy and this would trigger assert when destroying the bo. Reviewed-by: Ruijing Dong Part-of: --- src/gallium/drivers/radeonsi/radeon_vcn_dec.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/gallium/drivers/radeonsi/radeon_vcn_dec.c b/src/gallium/drivers/radeonsi/radeon_vcn_dec.c index 05ed75b2b36..05b98dae380 100644 --- a/src/gallium/drivers/radeonsi/radeon_vcn_dec.c +++ b/src/gallium/drivers/radeonsi/radeon_vcn_dec.c @@ -2337,6 +2337,11 @@ static void radeon_dec_destroy(struct pipe_video_codec *decoder) assert(decoder); + if (dec->bs_ptr) { + dec->ws->buffer_unmap(dec->ws, dec->bs_buffers[dec->cur_buffer].res->buf); + dec->bs_ptr = NULL; + } + if (dec->stream_type != RDECODE_CODEC_JPEG) { map_msg_fb_it_probs_buf(dec); rvcn_dec_message_destroy(dec);