Mesa (17.2): radeon/vce: move destroy command before feedback command

Andres Gomez tanty at kemper.freedesktop.org
Wed Dec 20 23:30:49 UTC 2017


Module: Mesa
Branch: 17.2
Commit: 2e6593806c587541523e3baa8d15454657d137ae
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=2e6593806c587541523e3baa8d15454657d137ae

Author: Leo Liu <leo.liu at amd.com>
Date:   Thu Dec  7 12:04:59 2017 -0500

radeon/vce: move destroy command before feedback command

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
Acked-by: Christian König <christian.koenig at amd.com>
(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 70c1e60f5b..c62b3fd4d7 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)
 		rvid_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);
 		rvid_destroy_buffer(&fb);
 	}




More information about the mesa-commit mailing list