From 778eaf9887a1a4fa15919473c15f5942ca3ecbdc Mon Sep 17 00:00:00 2001 From: Leo Liu Date: Thu, 7 Dec 2017 12:04:59 -0500 Subject: [PATCH] radeon/vce: move destroy command before feedback command MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 Cc: mesa-stable@lists.freedesktop.org Acked-by: Christian König (cherry picked from commit 6d74cb2570eb919c72e519e590d2464757465902) --- 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 0edbe0ffd19..390c37bb617 100644 --- a/src/gallium/drivers/radeon/radeon_vce.c +++ b/src/gallium/drivers/radeon/radeon_vce.c @@ -252,8 +252,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); }