[PATCH] drm/amdgpu: fix no-vmid job

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am 21.04.2017 um 12:00 schrieb Chunming Zhou:
> [  132.036658] amdgpu 0000:22:00.0: VM IB without ID
> [  132.036709] [drm:amdgpu_job_run [amdgpu]] *ERROR* Error scheduling IBs (-22)
> [  132.036755] [drm:amd_sched_main [amdgpu]] *ERROR* Failed to run job!
>
> root cause is fence is signaled during sync transfer.
>
> Change-Id: I6193e3005fef38a45dfcb985f11e73022f25be59
> Signed-off-by: Chunming Zhou <David1.Zhou at amd.com>

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

> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_job.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c
> index 37d3f31..690ef3d 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c
> @@ -139,7 +139,7 @@ static struct fence *amdgpu_job_dependency(struct amd_sched_job *sched_job)
>   
>   	struct fence *fence = amdgpu_sync_get_fence(&job->sync);
>   
> -	if (fence == NULL && vm && !job->vm_id) {
> +	while (fence == NULL && vm && !job->vm_id) {
>   		struct amdgpu_ring *ring = job->ring;
>   		int r;
>   




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux