From: Felix Kuehling Date: Thu, 5 Sep 2019 23:22:02 +0000 (-0400) Subject: drm/amdgpu: Fix KFD-related kernel oops on Hawaii X-Git-Tag: v4.19.79~55 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e0af3b19ad77b4a2c53ef05c1c11e2f58462d59c;p=platform%2Fkernel%2Flinux-rpi.git drm/amdgpu: Fix KFD-related kernel oops on Hawaii [ Upstream commit dcafbd50f2e4d5cc964aae409fb5691b743fba23 ] Hawaii needs to flush caches explicitly, submitting an IB in a user VMID from kernel mode. There is no s_fence in this case. Fixes: eb3961a57424 ("drm/amdgpu: remove fence context from the job") Signed-off-by: Felix Kuehling Reviewed-by: Christian König Signed-off-by: Alex Deucher Signed-off-by: Sasha Levin --- diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c index 51b5e977..f4e9d1b 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c @@ -139,7 +139,8 @@ int amdgpu_ib_schedule(struct amdgpu_ring *ring, unsigned num_ibs, /* ring tests don't use a job */ if (job) { vm = job->vm; - fence_ctx = job->base.s_fence->scheduled.context; + fence_ctx = job->base.s_fence ? + job->base.s_fence->scheduled.context : 0; } else { vm = NULL; fence_ctx = 0;