drm/amdgpu:Preamble is forbid to be ignored in SRIOV
authorMonk Liu <Monk.Liu@amd.com>
Wed, 18 Jan 2017 02:37:34 +0000 (10:37 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 27 Jan 2017 16:13:37 +0000 (11:13 -0500)
SR-IOV requires the preamble.

Signed-off-by: Monk Liu <Monk.Liu@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c

index 38dded50ae8aa5a2e13d26f3f199e8e2e9e073d8..5329ac93e43de4167422f3d28eee930494903250 100644 (file)
@@ -193,7 +193,8 @@ int amdgpu_ib_schedule(struct amdgpu_ring *ring, unsigned num_ibs,
                /* drop preamble IBs if we don't have a context switch */
                if ((ib->flags & AMDGPU_IB_FLAG_PREAMBLE) &&
                        skip_preamble &&
-                       !(status & AMDGPU_PREAMBLE_IB_PRESENT_FIRST))
+                       !(status & AMDGPU_PREAMBLE_IB_PRESENT_FIRST) &&
+                       !amdgpu_sriov_vf(adev)) /* for SRIOV preemption, Preamble CE ib must be inserted anyway */
                        continue;
 
                amdgpu_ring_emit_ib(ring, ib, job ? job->vm_id : 0,