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....@amd.com> Cc: mesa-sta...@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 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev