diff options
| author | Jammy Zhou <[email protected]> | 2015-05-08 14:18:47 +0000 |
|---|---|---|
| committer | Alex Deucher <[email protected]> | 2015-06-04 01:03:29 +0000 |
| commit | 72efa7ebdea084b96f25021d0ba9c29074c2906f (patch) | |
| tree | a209c2b373636fb047f4b0b8cbdbf0214f7d3998 /drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | |
| parent | drm/amdgpu: add ctx_id to the WAIT_CS IOCTL (v4) (diff) | |
| download | kernel-72efa7ebdea084b96f25021d0ba9c29074c2906f.tar.gz kernel-72efa7ebdea084b96f25021d0ba9c29074c2906f.zip | |
drm/amdgpu: check context id for context switching (v2)
check the filp is not robust, and sometimes different contexts may
have same filp value.
v2: check both filp and ctx_id
Signed-off-by: Jammy Zhou <[email protected]>
Reviewed-by: Christian König <[email protected]>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c index 86b93245bf9d..1035e443700f 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c @@ -642,8 +642,10 @@ static int amdgpu_cs_ib_fill(struct amdgpu_device *adev, ib->is_const_ib = true; if (chunk_ib->flags & AMDGPU_IB_FLAG_GDS) ib->gds_needed = true; - if (ib->ring->current_filp != parser->filp) { + if ((ib->ring->current_filp != parser->filp) || + (ib->ring->current_ctx != parser->ctx_id)) { ib->ring->need_ctx_switch = true; + ib->ring->current_ctx = parser->ctx_id; ib->ring->current_filp = parser->filp; } |
