[PATCH 05/22] drm/amdgpu: cond_exec only for schedule with a job

Christian König ckoenig.leichtzumerken at gmail.com
Mon Feb 26 09:53:10 UTC 2018


Am 26.02.2018 um 06:18 schrieb Monk Liu:
> issue:
> under SR-IOV sometimes the iB test will fail on
> gfx ring
>
> fix:
> with cond_exec inserted in RB the gfx engine would
> skip part packets if RLCV issue PREEMPT on gfx engine
> if gfx engine is prior to COND_EXEC packet, this is
> okay for regular command from UMD, but for the ib test
> since the whole dma format doesn't support PREEMPT
> so must remove the COND_EXEC from it.
>
> Change-Id: I73bd0479bf1307139ff3726a00c312526054aa6d
> Signed-off-by: Monk Liu <Monk.Liu at amd.com>

Reviewed-by: Christian König <christian.koenig at amd.com>

> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c
> index 8ea342d..7f2c314 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c
> @@ -181,7 +181,7 @@ int amdgpu_ib_schedule(struct amdgpu_ring *ring, unsigned num_ibs,
>   		}
>   	}
>   
> -	if (ring->funcs->init_cond_exec)
> +	if (job && ring->funcs->init_cond_exec)
>   		patch_offset = amdgpu_ring_init_cond_exec(ring);
>   
>   #ifdef CONFIG_X86_64



More information about the amd-gfx mailing list