[Mesa-dev] [PATCH] radeon/vce: move destroy command before feedback command

Leo Liu leo.liu at amd.com
Thu Dec 7 17:37:30 UTC 2017


VCE processing IBs starts from session and task info at first level,
other commands processed subsequently. The task info for destroy is
embedded to destroy command, resulting that feedback command is not
properly procoessed. This is causing kernel spin VM fault messages on
Polaris and Vega10 card when running ends at encode application.

The fix is also verified on VCE physical mode card.
 
Signed-off-by: Leo Liu <leo.liu at amd.com>
Cc: mesa-stable at lists.freedesktop.org
---
 src/gallium/drivers/radeon/radeon_vce.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/gallium/drivers/radeon/radeon_vce.c b/src/gallium/drivers/radeon/radeon_vce.c
index 69e602210b..427bf01ed8 100644
--- a/src/gallium/drivers/radeon/radeon_vce.c
+++ b/src/gallium/drivers/radeon/radeon_vce.c
@@ -246,8 +246,8 @@ static void rvce_destroy(struct pipe_video_codec *encoder)
 		si_vid_create_buffer(enc->screen, &fb, 512, PIPE_USAGE_STAGING);
 		enc->fb = &fb;
 		enc->session(enc);
-		enc->feedback(enc);
 		enc->destroy(enc);
+		enc->feedback(enc);
 		flush(enc);
 		si_vid_destroy_buffer(&fb);
 	}
-- 
2.14.1



More information about the mesa-dev mailing list