Module: Mesa
Branch: main
Commit: fdc8da6eb4375eddeacbfc20875fff824e3b5cb6
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=fdc8da6eb4375eddeacbfc20875fff824e3b5cb6

Author: David Rosca <now...@gmail.com>
Date:   Tue Oct 31 14:41:05 2023 +0100

radeonsi/vce: Implement destroy_fence vfunc

Reviewed-by: Leo Liu <leo....@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25991>

---

 src/gallium/drivers/radeonsi/radeon_vce.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/src/gallium/drivers/radeonsi/radeon_vce.c 
b/src/gallium/drivers/radeonsi/radeon_vce.c
index 0d46e4040e9..54e10bfb945 100644
--- a/src/gallium/drivers/radeonsi/radeon_vce.c
+++ b/src/gallium/drivers/radeonsi/radeon_vce.c
@@ -344,6 +344,14 @@ static void rvce_get_feedback(struct pipe_video_codec 
*encoder, void *feedback,
    FREE(fb);
 }
 
+static void rvce_destroy_fence(struct pipe_video_codec *encoder,
+                               struct pipe_fence_handle *fence)
+{
+   struct rvce_encoder *enc = (struct rvce_encoder *)encoder;
+
+   enc->ws->fence_reference(&fence, NULL);
+}
+
 /**
  * flush any outstanding command buffers to the hardware
  */
@@ -406,6 +414,7 @@ struct pipe_video_codec *si_vce_create_encoder(struct 
pipe_context *context,
    enc->base.end_frame = rvce_end_frame;
    enc->base.flush = rvce_flush;
    enc->base.get_feedback = rvce_get_feedback;
+   enc->base.destroy_fence = rvce_destroy_fence;
    enc->get_buffer = get_buffer;
 
    enc->screen = context->screen;

Reply via email to