Commit 38be7796 authored by Alex Deucher's avatar Alex Deucher
Browse files

drm/amdgpu: don't require a job for cond_exec and shadow



We need to reset the shadow state every time we submit an
IB and there needs to be a COND_EXEC packet after the
SET_Q_PREEMPTION_MODE packet for it to work properly, so
we should emit both of these packets regardless of whether
there is a job present or not.

Reviewed-by: default avatarChristian König <christian.koenig@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 46c1282e
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -223,11 +223,11 @@ int amdgpu_ib_schedule(struct amdgpu_ring *ring, unsigned num_ibs,

	amdgpu_ring_ib_begin(ring);

	if (job && ring->funcs->emit_gfx_shadow)
	if (ring->funcs->emit_gfx_shadow)
		amdgpu_ring_emit_gfx_shadow(ring, shadow_va, csa_va, gds_va,
					    init_shadow, vmid);

	if (job && ring->funcs->init_cond_exec)
	if (ring->funcs->init_cond_exec)
		patch_offset = amdgpu_ring_init_cond_exec(ring);

	amdgpu_device_flush_hdp(adev, ring);