* [PATCH] drm/i915: Reset CSB read pointer when enabling contexts
@ 2015-01-07 16:09 Thomas Daniel
2015-01-07 16:56 ` Daniel Vetter
` (3 more replies)
0 siblings, 4 replies; 7+ messages in thread
From: Thomas Daniel @ 2015-01-07 16:09 UTC (permalink / raw)
To: intel-gfx; +Cc: Paulo Zanoni
During a suspend/resume cycle the hardware Context Status Buffer write pointer
is reset. However since recent changes to the init sequence the software CSB
read pointer is no longer reset. This means that context status events are not
handled correctly and new contexts are not written to the ELSP, resulting in an
apparent GPU hang.
Pending further changes to the ring init code, just move the
ring->next_context_status_buffer initialization into i915_gem_context_enable to
fix this regression.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=88097
Cc: Paulo Zanoni <paulo.r.zanoni@intel.com>
Signed-off-by: Thomas Daniel <thomas.daniel@intel.com>
---
drivers/gpu/drm/i915/i915_gem_context.c | 1 +
drivers/gpu/drm/i915/intel_lrc.c | 1 -
2 files changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c
index bf9778e..cc100c9 100644
--- a/drivers/gpu/drm/i915/i915_gem_context.c
+++ b/drivers/gpu/drm/i915/i915_gem_context.c
@@ -412,6 +412,7 @@ int i915_gem_context_enable(struct drm_i915_private *dev_priv)
if (i915.enable_execlists) {
for_each_ring(ring, dev_priv, i) {
+ ring->next_context_status_buffer = 0;
if (ring->init_context) {
ret = ring->init_context(ring,
ring->default_context);
diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
index 7670a0f..4580267 100644
--- a/drivers/gpu/drm/i915/intel_lrc.c
+++ b/drivers/gpu/drm/i915/intel_lrc.c
@@ -1394,7 +1394,6 @@ static int logical_ring_init(struct drm_device *dev, struct intel_engine_cs *rin
INIT_LIST_HEAD(&ring->execlist_queue);
INIT_LIST_HEAD(&ring->execlist_retired_req_list);
spin_lock_init(&ring->execlist_lock);
- ring->next_context_status_buffer = 0;
ret = i915_cmd_parser_init_ring(ring);
if (ret)
--
1.7.9.5
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH] drm/i915: Reset CSB read pointer when enabling contexts
2015-01-07 16:09 [PATCH] drm/i915: Reset CSB read pointer when enabling contexts Thomas Daniel
@ 2015-01-07 16:56 ` Daniel Vetter
2015-01-07 20:39 ` shuang.he
` (2 subsequent siblings)
3 siblings, 0 replies; 7+ messages in thread
From: Daniel Vetter @ 2015-01-07 16:56 UTC (permalink / raw)
To: Thomas Daniel; +Cc: intel-gfx, Paulo Zanoni
On Wed, Jan 07, 2015 at 04:09:30PM +0000, Thomas Daniel wrote:
> During a suspend/resume cycle the hardware Context Status Buffer write pointer
> is reset. However since recent changes to the init sequence the software CSB
> read pointer is no longer reset. This means that context status events are not
> handled correctly and new contexts are not written to the ELSP, resulting in an
> apparent GPU hang.
>
> Pending further changes to the ring init code, just move the
> ring->next_context_status_buffer initialization into i915_gem_context_enable to
> fix this regression.
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=88097
Please cite the commit which introduced this regression (plus since it's
just the switch of defaults) also the commit which broke the execlist
code. And then add all the relevant ppl to the cc list of this patch.
> Cc: Paulo Zanoni <paulo.r.zanoni@intel.com>
> Signed-off-by: Thomas Daniel <thomas.daniel@intel.com>
> ---
> drivers/gpu/drm/i915/i915_gem_context.c | 1 +
> drivers/gpu/drm/i915/intel_lrc.c | 1 -
> 2 files changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c
> index bf9778e..cc100c9 100644
> --- a/drivers/gpu/drm/i915/i915_gem_context.c
> +++ b/drivers/gpu/drm/i915/i915_gem_context.c
> @@ -412,6 +412,7 @@ int i915_gem_context_enable(struct drm_i915_private *dev_priv)
>
> if (i915.enable_execlists) {
> for_each_ring(ring, dev_priv, i) {
> + ring->next_context_status_buffer = 0;
Hm, shouldn't we instead move this to the ring->init_hw callback instead?
That was the split which broke things here after all, and imo it makes
more sense. Otherwise someone might reorder the setup sequence a bit and
get confused when the engine is enabled already but the sw side still has
bogus state ...
Thanks, Daniel
> if (ring->init_context) {
> ret = ring->init_context(ring,
> ring->default_context);
> diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
> index 7670a0f..4580267 100644
> --- a/drivers/gpu/drm/i915/intel_lrc.c
> +++ b/drivers/gpu/drm/i915/intel_lrc.c
> @@ -1394,7 +1394,6 @@ static int logical_ring_init(struct drm_device *dev, struct intel_engine_cs *rin
> INIT_LIST_HEAD(&ring->execlist_queue);
> INIT_LIST_HEAD(&ring->execlist_retired_req_list);
> spin_lock_init(&ring->execlist_lock);
> - ring->next_context_status_buffer = 0;
>
> ret = i915_cmd_parser_init_ring(ring);
> if (ret)
> --
> 1.7.9.5
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] drm/i915: Reset CSB read pointer when enabling contexts
2015-01-07 16:09 [PATCH] drm/i915: Reset CSB read pointer when enabling contexts Thomas Daniel
2015-01-07 16:56 ` Daniel Vetter
@ 2015-01-07 20:39 ` shuang.he
2015-01-08 8:01 ` Daniel Vetter
2015-01-09 11:09 ` [PATCH v2] drm/i915: Reset CSB read pointer in ring init Thomas Daniel
3 siblings, 0 replies; 7+ messages in thread
From: shuang.he @ 2015-01-07 20:39 UTC (permalink / raw)
To: shuang.he, intel-gfx, thomas.daniel
Tested-By: PRC QA PRTS (Patch Regression Test System Contact: shuang.he@intel.com)
-------------------------------------Summary-------------------------------------
Platform Delta drm-intel-nightly Series Applied
PNV -23 363/364 340/364
ILK -30 364/366 334/366
SNB +4-56 443/450 391/450
IVB -36 496/498 460/498
BYT 288/289 288/289
HSW +11-36 542/564 517/564
BDW -25 415/417 390/417
-------------------------------------Detailed-------------------------------------
Platform Test drm-intel-nightly Series Applied
PNV igt_gem_concurrent_blit_gpu-bcs-early-read-interruptible NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
PNV igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
PNV igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write-interruptible NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
PNV igt_gem_concurrent_blit_gpu-bcs-overwrite-source NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
PNV igt_gem_concurrent_blit_gpu-bcs-overwrite-source-interruptible NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
PNV igt_gem_concurrent_blit_gpu-rcs-early-read NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
PNV igt_gem_concurrent_blit_gpu-rcs-early-read-interruptible NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
PNV igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
PNV igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write-interruptible NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
PNV igt_gem_concurrent_blit_gpu-rcs-overwrite-source NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
PNV igt_gem_concurrent_blit_gpu-rcs-overwrite-source-interruptible NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
PNV igt_gem_concurrent_blit_gpuX-bcs-early-read NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
PNV igt_gem_concurrent_blit_gpuX-bcs-early-read-interruptible NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
PNV igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
PNV igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write-interruptible NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
PNV igt_gem_concurrent_blit_gpuX-bcs-overwrite-source NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
PNV igt_gem_concurrent_blit_gpuX-bcs-overwrite-source-interruptible NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
PNV igt_gem_concurrent_blit_gpuX-rcs-early-read NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
PNV igt_gem_concurrent_blit_gpuX-rcs-early-read-interruptible NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
PNV igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
PNV igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write-interruptible NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
PNV igt_gem_concurrent_blit_gpuX-rcs-overwrite-source NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
PNV igt_gem_concurrent_blit_gpuX-rcs-overwrite-source-interruptible NSPT(2, M23M25)PASS(1, M25) NSPT(1, M25)
ILK igt_gem_concurrent_blit_gpu-bcs-early-read NSPT(2, M26)PASS(1, M37) NSPT(1, M26)
ILK igt_gem_concurrent_blit_gpu-bcs-early-read-interruptible NSPT(2, M26)PASS(1, M37) NSPT(1, M26)
ILK igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write NSPT(2, M26)PASS(1, M37) NSPT(1, M26)
ILK igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write-interruptible NSPT(2, M26)PASS(1, M37) NSPT(1, M26)
ILK igt_gem_concurrent_blit_gpu-bcs-overwrite-source NSPT(2, M26)PASS(1, M37) NSPT(1, M26)
ILK igt_gem_concurrent_blit_gpu-bcs-overwrite-source-interruptible NSPT(2, M26)PASS(1, M37) NSPT(1, M26)
ILK igt_gem_concurrent_blit_gpuX-bcs-early-read NSPT(2, M26)PASS(1, M37) NSPT(1, M26)
ILK igt_gem_concurrent_blit_gpuX-bcs-early-read-interruptible NSPT(2, M26)PASS(1, M37) NSPT(1, M26)
ILK igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write NSPT(2, M26)PASS(1, M37) NSPT(1, M26)
ILK igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write-interruptible NSPT(2, M26)PASS(1, M37) NSPT(1, M26)
ILK igt_gem_concurrent_blit_gpuX-bcs-overwrite-source NSPT(2, M26)PASS(1, M37) NSPT(1, M26)
ILK igt_gem_concurrent_blit_gpuX-bcs-overwrite-source-interruptible NSPT(2, M26)PASS(1, M37) NSPT(1, M26)
ILK igt_kms_flip_nonexisting-fb DMESG_WARN(3, M26)PASS(1, M37) DMESG_WARN(1, M26)
ILK igt_kms_flip_rcs-flip-vs-panning-interruptible DMESG_WARN(3, M26)PASS(1, M37) DMESG_WARN(1, M26)
ILK igt_kms_flip_rcs-wf_vblank-vs-dpms-interruptible DMESG_WARN(3, M26)PASS(1, M37) DMESG_WARN(1, M26)
ILK igt_kms_render_direct-render DMESG_WARN(3, M26)PASS(1, M37) DMESG_WARN(1, M26)
ILK igt_kms_flip_bcs-flip-vs-modeset-interruptible DMESG_WARN(3, M26)PASS(1, M37) DMESG_WARN(1, M26)
ILK igt_kms_flip_blocking-absolute-wf_vblank-interruptible DMESG_WARN(3, M26)PASS(1, M37) DMESG_WARN(1, M26)
ILK igt_kms_flip_busy-flip-interruptible DMESG_WARN(3, M26)PASS(1, M37) DMESG_WARN(1, M26)
ILK igt_kms_flip_flip-vs-dpms-interruptible DMESG_WARN(3, M26)PASS(1, M37) DMESG_WARN(1, M26)
ILK igt_kms_flip_flip-vs-panning DMESG_WARN(3, M26)PASS(1, M37) DMESG_WARN(1, M26)
ILK igt_kms_flip_flip-vs-rmfb-interruptible DMESG_WARN(3, M26)PASS(1, M37) DMESG_WARN(1, M26)
ILK igt_kms_flip_plain-flip-fb-recreate-interruptible DMESG_WARN(3, M26)PASS(1, M37) DMESG_WARN(1, M26)
ILK igt_kms_flip_plain-flip-ts-check-interruptible DMESG_WARN(3, M26)PASS(1, M37) DMESG_WARN(1, M26)
ILK igt_kms_flip_rcs-flip-vs-dpms DMESG_WARN(3, M26)PASS(1, M37) DMESG_WARN(1, M26)
ILK igt_kms_flip_rcs-flip-vs-modeset DMESG_WARN(3, M26)PASS(1, M37) DMESG_WARN(1, M26)
ILK igt_kms_flip_rcs-flip-vs-panning DMESG_WARN(3, M26)PASS(1, M37) DMESG_WARN(1, M26)
ILK igt_kms_flip_vblank-vs-hang DMESG_WARN(3, M26)PASS(1, M37) DMESG_WARN(1, M26)
ILK igt_kms_flip_wf_vblank-ts-check DMESG_WARN(3, M26)PASS(1, M37) DMESG_WARN(1, M26)
ILK igt_kms_flip_wf_vblank-vs-modeset-interruptible DMESG_WARN(3, M26)PASS(1, M37) DMESG_WARN(1, M26)
SNB igt_gem_concurrent_blit_gpu-bcs-early-read NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpu-bcs-early-read-forked NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpu-bcs-early-read-interruptible NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write-forked NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write-interruptible NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpu-bcs-overwrite-source NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpu-bcs-overwrite-source-forked NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpu-bcs-overwrite-source-interruptible NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpu-rcs-early-read NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpu-rcs-early-read-interruptible NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write-forked NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write-interruptible NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpu-rcs-overwrite-source NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpu-rcs-overwrite-source-forked NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpu-rcs-overwrite-source-interruptible NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpuX-bcs-early-read NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpuX-bcs-early-read-forked NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpuX-bcs-early-read-interruptible NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write-interruptible NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpuX-bcs-overwrite-source NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpuX-bcs-overwrite-source-forked NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpuX-bcs-overwrite-source-interruptible NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpuX-rcs-early-read NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpuX-rcs-early-read-forked NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpuX-rcs-early-read-interruptible NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write-forked NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write-interruptible NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpuX-rcs-overwrite-source NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpuX-rcs-overwrite-source-forked NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_gem_concurrent_blit_gpuX-rcs-overwrite-source-interruptible NSPT(2, M22)PASS(1, M35) NSPT(1, M22)
SNB igt_kms_cursor_crc_cursor-size-change NSPT(2, M35M22)PASS(1, M35) NSPT(1, M22)
SNB igt_kms_flip_dpms-vs-vblank-race DMESG_WARN(3, M35M22)PASS(2, M35M22) PASS(1, M22)
SNB igt_kms_flip_dpms-vs-vblank-race-interruptible DMESG_WARN(2, M35M22)PASS(3, M35M22) PASS(1, M22)
SNB igt_kms_flip_event_leak NSPT(2, M35M22)PASS(1, M35) NSPT(1, M22)
SNB igt_kms_flip_modeset-vs-vblank-race DMESG_WARN(4, M35M22)PASS(2, M35M22) PASS(1, M22)
SNB igt_kms_mmio_vs_cs_flip_setcrtc_vs_cs_flip NSPT(2, M35M22)PASS(1, M35) NSPT(1, M22)
SNB igt_kms_mmio_vs_cs_flip_setplane_vs_cs_flip NSPT(2, M35M22)PASS(1, M35) NSPT(1, M22)
SNB igt_kms_plane_plane-position-hole-pipe-B-plane-1 DMESG_WARN(1, M35)PASS(6, M35M22) PASS(1, M22)
SNB igt_kms_rotation_crc_primary-rotation NSPT(2, M35M22)PASS(1, M35) NSPT(1, M22)
SNB igt_kms_rotation_crc_sprite-rotation NSPT(2, M35M22)PASS(1, M35) NSPT(1, M22)
SNB igt_pm_rpm_cursor NSPT(2, M35M22)PASS(1, M35) NSPT(1, M22)
SNB igt_pm_rpm_cursor-dpms NSPT(2, M35M22)PASS(1, M35) NSPT(1, M22)
SNB igt_pm_rpm_dpms-mode-unset-non-lpsp NSPT(2, M35M22)PASS(1, M35) NSPT(1, M22)
SNB igt_pm_rpm_dpms-non-lpsp NSPT(2, M35M22)PASS(1, M35) NSPT(1, M22)
SNB igt_pm_rpm_drm-resources-equal NSPT(2, M35M22)PASS(1, M35) NSPT(1, M22)
SNB igt_pm_rpm_fences NSPT(2, M35M22)PASS(1, M35) NSPT(1, M22)
SNB igt_pm_rpm_fences-dpms NSPT(2, M35M22)PASS(1, M35) NSPT(1, M22)
SNB igt_pm_rpm_gem-execbuf NSPT(2, M35M22)PASS(1, M35) NSPT(1, M22)
SNB igt_pm_rpm_gem-mmap-cpu NSPT(2, M35M22)PASS(1, M35) NSPT(1, M22)
SNB igt_pm_rpm_gem-mmap-gtt NSPT(2, M35M22)PASS(1, M35) NSPT(1, M22)
SNB igt_pm_rpm_gem-pread NSPT(2, M35M22)PASS(1, M35) NSPT(1, M22)
SNB igt_pm_rpm_i2c NSPT(2, M35M22)PASS(1, M35) NSPT(1, M22)
SNB igt_pm_rpm_modeset-non-lpsp NSPT(2, M35M22)PASS(1, M35) NSPT(1, M22)
SNB igt_pm_rpm_modeset-non-lpsp-stress-no-wait NSPT(2, M35M22)PASS(1, M35) NSPT(1, M22)
SNB igt_pm_rpm_pci-d3-state NSPT(2, M35M22)PASS(1, M35) NSPT(1, M22)
SNB igt_pm_rpm_rte NSPT(2, M35M22)PASS(1, M35) NSPT(1, M22)
IVB igt_gem_concurrent_blit_gpu-bcs-early-read NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-bcs-early-read-forked NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-bcs-early-read-interruptible NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write-forked NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write-interruptible NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-bcs-overwrite-source NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-bcs-overwrite-source-forked NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-bcs-overwrite-source-interruptible NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-rcs-early-read NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-rcs-early-read-forked NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-rcs-early-read-interruptible NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write-forked NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write-interruptible NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-rcs-overwrite-source NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-rcs-overwrite-source-forked NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-rcs-overwrite-source-interruptible NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-bcs-early-read NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-bcs-early-read-forked NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-bcs-early-read-interruptible NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write-forked NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write-interruptible NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-bcs-overwrite-source NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-bcs-overwrite-source-forked NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-bcs-overwrite-source-interruptible NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-rcs-early-read NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-rcs-early-read-forked NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-rcs-early-read-interruptible NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write-forked NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write-interruptible NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-rcs-overwrite-source NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-rcs-overwrite-source-forked NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-rcs-overwrite-source-interruptible NSPT(2, M21M34)PASS(1, M34) NSPT(1, M34)
HSW igt_gem_concurrent_blit_gpu-bcs-early-read NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpu-bcs-early-read-forked NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpu-bcs-early-read-interruptible NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write-forked NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write-interruptible NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpu-bcs-overwrite-source NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpu-bcs-overwrite-source-forked NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpu-bcs-overwrite-source-interruptible NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpu-rcs-early-read NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpu-rcs-early-read-forked NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpu-rcs-early-read-interruptible NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write-forked NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write-interruptible NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpu-rcs-overwrite-source NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpu-rcs-overwrite-source-forked NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpu-rcs-overwrite-source-interruptible NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpuX-bcs-early-read NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpuX-bcs-early-read-forked NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpuX-bcs-early-read-interruptible NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write-forked NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write-interruptible NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpuX-bcs-overwrite-source NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpuX-bcs-overwrite-source-forked NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpuX-bcs-overwrite-source-interruptible NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpuX-rcs-early-read NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpuX-rcs-early-read-forked NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpuX-rcs-early-read-interruptible NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write-forked NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write-interruptible NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpuX-rcs-overwrite-source NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpuX-rcs-overwrite-source-forked NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_gem_concurrent_blit_gpuX-rcs-overwrite-source-interruptible NSPT(2, M19M20)PASS(1, M40) NSPT(1, M20)
HSW igt_kms_flip_dpms-vs-vblank-race DMESG_WARN(1, M40)PASS(2, M19M20) PASS(1, M20)
HSW igt_kms_flip_dpms-vs-vblank-race-interruptible DMESG_WARN(2, M40)PASS(2, M19M20) PASS(1, M20)
HSW igt_kms_flip_flip-vs-dpms-off-vs-modeset DMESG_WARN(1, M40)PASS(2, M19M20) PASS(1, M20)
HSW igt_kms_flip_flip-vs-dpms-off-vs-modeset-interruptible DMESG_WARN(2, M40M19)PASS(2, M19M20) PASS(1, M20)
HSW igt_kms_flip_modeset-vs-vblank-race DMESG_WARN(1, M40)PASS(2, M19M20) PASS(1, M20)
HSW igt_kms_flip_modeset-vs-vblank-race-interruptible DMESG_WARN(1, M40)PASS(2, M19M20) PASS(1, M20)
HSW igt_kms_flip_single-buffer-flip-vs-dpms-off-vs-modeset-interruptible DMESG_WARN(2, M40)PASS(3, M19M20) PASS(1, M20)
HSW igt_kms_plane_plane-panning-bottom-right-pipe-B-plane-1 TIMEOUT(1, M40)PASS(2, M19M20) PASS(1, M20)
HSW igt_kms_plane_plane-panning-bottom-right-pipe-B-plane-2 TIMEOUT(1, M40)PASS(2, M19M20) PASS(1, M20)
HSW igt_kms_plane_plane-panning-bottom-right-pipe-C-plane-1 TIMEOUT(3, M40)PASS(4, M19M40M20) PASS(1, M20)
HSW igt_pm_rpm_modeset-non-lpsp-stress-no-wait NSPT(2, M19)DMESG_WARN(1, M40)PASS(4, M40M20) PASS(1, M20)
BDW igt_gem_concurrent_blit_gpu-bcs-early-read NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpu-bcs-early-read-interruptible NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write-interruptible NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpu-bcs-overwrite-source NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpu-bcs-overwrite-source-interruptible NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpu-rcs-early-read NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpu-rcs-early-read-interruptible NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write-interruptible NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpu-rcs-overwrite-source NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpu-rcs-overwrite-source-interruptible NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-bcs-early-read NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-bcs-early-read-interruptible NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write-interruptible NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-bcs-overwrite-source NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-bcs-overwrite-source-interruptible NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-rcs-early-read NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-rcs-early-read-interruptible NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write-interruptible NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-rcs-overwrite-source NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-rcs-overwrite-source-interruptible NSPT(2, M28M30)PASS(1, M30) NSPT(1, M30)
*BDW igt_gem_multi_bsd_sync_loop PASS(3, M30M28) DMESG_WARN(1, M30)
Note: You need to pay more attention to line start with '*'
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] drm/i915: Reset CSB read pointer when enabling contexts
2015-01-07 16:09 [PATCH] drm/i915: Reset CSB read pointer when enabling contexts Thomas Daniel
2015-01-07 16:56 ` Daniel Vetter
2015-01-07 20:39 ` shuang.he
@ 2015-01-08 8:01 ` Daniel Vetter
2015-01-09 11:09 ` [PATCH v2] drm/i915: Reset CSB read pointer in ring init Thomas Daniel
3 siblings, 0 replies; 7+ messages in thread
From: Daniel Vetter @ 2015-01-08 8:01 UTC (permalink / raw)
To: Thomas Daniel; +Cc: intel-gfx, Paulo Zanoni
On Wed, Jan 07, 2015 at 04:09:30PM +0000, Thomas Daniel wrote:
> During a suspend/resume cycle the hardware Context Status Buffer write pointer
> is reset. However since recent changes to the init sequence the software CSB
> read pointer is no longer reset. This means that context status events are not
> handled correctly and new contexts are not written to the ELSP, resulting in an
> apparent GPU hang.
>
> Pending further changes to the ring init code, just move the
> ring->next_context_status_buffer initialization into i915_gem_context_enable to
> fix this regression.
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=88097
There's also
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=88096
Can you please take a look at that one too?
-Daniel
> Cc: Paulo Zanoni <paulo.r.zanoni@intel.com>
> Signed-off-by: Thomas Daniel <thomas.daniel@intel.com>
> ---
> drivers/gpu/drm/i915/i915_gem_context.c | 1 +
> drivers/gpu/drm/i915/intel_lrc.c | 1 -
> 2 files changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c
> index bf9778e..cc100c9 100644
> --- a/drivers/gpu/drm/i915/i915_gem_context.c
> +++ b/drivers/gpu/drm/i915/i915_gem_context.c
> @@ -412,6 +412,7 @@ int i915_gem_context_enable(struct drm_i915_private *dev_priv)
>
> if (i915.enable_execlists) {
> for_each_ring(ring, dev_priv, i) {
> + ring->next_context_status_buffer = 0;
> if (ring->init_context) {
> ret = ring->init_context(ring,
> ring->default_context);
> diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
> index 7670a0f..4580267 100644
> --- a/drivers/gpu/drm/i915/intel_lrc.c
> +++ b/drivers/gpu/drm/i915/intel_lrc.c
> @@ -1394,7 +1394,6 @@ static int logical_ring_init(struct drm_device *dev, struct intel_engine_cs *rin
> INIT_LIST_HEAD(&ring->execlist_queue);
> INIT_LIST_HEAD(&ring->execlist_retired_req_list);
> spin_lock_init(&ring->execlist_lock);
> - ring->next_context_status_buffer = 0;
>
> ret = i915_cmd_parser_init_ring(ring);
> if (ret)
> --
> 1.7.9.5
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v2] drm/i915: Reset CSB read pointer in ring init
2015-01-07 16:09 [PATCH] drm/i915: Reset CSB read pointer when enabling contexts Thomas Daniel
` (2 preceding siblings ...)
2015-01-08 8:01 ` Daniel Vetter
@ 2015-01-09 11:09 ` Thomas Daniel
2015-01-09 16:31 ` shuang.he
2015-01-09 16:54 ` Dave Gordon
3 siblings, 2 replies; 7+ messages in thread
From: Thomas Daniel @ 2015-01-09 11:09 UTC (permalink / raw)
To: intel-gfx; +Cc: Paulo Zanoni, Daniel Vetter
A previous commit enabled execlists by default:
commit 27401d126b5b ("drm/i915/bdw: Enable execlists by default where supported")
This allowed routine testing of execlists which exposed a regression when
resuming from suspend. The cause was tracked down the to recent changes to the
ring init sequence:
commit 35a57ffbb108 ("drm/i915: Only init engines once")
During a suspend/resume cycle the hardware Context Status Buffer write pointer
is reset. However since the recent changes to the init sequence the software CSB
read pointer is no longer reset. This means that context status events are not
handled correctly and new contexts are not written to the ELSP, resulting in an
apparent GPU hang.
Pending further changes to the ring init code, just move the
ring->next_context_status_buffer initialization into gen8_init_common_ring to
fix this regression.
v2: Moved init into gen8_init_common_ring rather than context_enable after
feedback from Daniel Vetter. Updated commit msg to reflect this and also cite
commits related to the regression. Fixed bz link to correct bug.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=88096
Cc: Paulo Zanoni <paulo.r.zanoni@intel.com>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: Dave Gordon <david.s.gordon@intel.com>
Signed-off-by: Thomas Daniel <thomas.daniel@intel.com>
---
drivers/gpu/drm/i915/intel_lrc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
index 7670a0f..e405b61 100644
--- a/drivers/gpu/drm/i915/intel_lrc.c
+++ b/drivers/gpu/drm/i915/intel_lrc.c
@@ -1137,6 +1137,7 @@ static int gen8_init_common_ring(struct intel_engine_cs *ring)
_MASKED_BIT_DISABLE(GFX_REPLAY_MODE) |
_MASKED_BIT_ENABLE(GFX_RUN_LIST_ENABLE));
POSTING_READ(RING_MODE_GEN7(ring));
+ ring->next_context_status_buffer = 0;
DRM_DEBUG_DRIVER("Execlists enabled for %s\n", ring->name);
memset(&ring->hangcheck, 0, sizeof(ring->hangcheck));
@@ -1394,7 +1395,6 @@ static int logical_ring_init(struct drm_device *dev, struct intel_engine_cs *rin
INIT_LIST_HEAD(&ring->execlist_queue);
INIT_LIST_HEAD(&ring->execlist_retired_req_list);
spin_lock_init(&ring->execlist_lock);
- ring->next_context_status_buffer = 0;
ret = i915_cmd_parser_init_ring(ring);
if (ret)
--
1.7.9.5
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH v2] drm/i915: Reset CSB read pointer in ring init
2015-01-09 11:09 ` [PATCH v2] drm/i915: Reset CSB read pointer in ring init Thomas Daniel
@ 2015-01-09 16:31 ` shuang.he
2015-01-09 16:54 ` Dave Gordon
1 sibling, 0 replies; 7+ messages in thread
From: shuang.he @ 2015-01-09 16:31 UTC (permalink / raw)
To: shuang.he, intel-gfx, thomas.daniel
Tested-By: PRC QA PRTS (Patch Regression Test System Contact: shuang.he@intel.com)
-------------------------------------Summary-------------------------------------
Platform Delta drm-intel-nightly Series Applied
PNV -31 363/364 332/364
ILK -20 364/366 344/366
SNB +4-65 443/450 382/450
IVB -44 496/498 452/498
BYT -8 288/289 280/289
HSW +5-46 542/564 501/564
BDW -33 415/417 382/417
-------------------------------------Detailed-------------------------------------
Platform Test drm-intel-nightly Series Applied
PNV igt_gem_concurrent_blit_gpu-bcs-early-read-interruptible NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write-interruptible NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_concurrent_blit_gpu-bcs-overwrite-source NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_concurrent_blit_gpu-bcs-overwrite-source-interruptible NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_concurrent_blit_gpu-rcs-early-read NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_concurrent_blit_gpu-rcs-early-read-interruptible NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write-interruptible NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_concurrent_blit_gpu-rcs-overwrite-source NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_concurrent_blit_gpu-rcs-overwrite-source-interruptible NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_concurrent_blit_gpuX-bcs-early-read NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_concurrent_blit_gpuX-bcs-early-read-interruptible NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write-interruptible NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_concurrent_blit_gpuX-bcs-overwrite-source NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_concurrent_blit_gpuX-bcs-overwrite-source-interruptible NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_concurrent_blit_gpuX-rcs-early-read NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_concurrent_blit_gpuX-rcs-early-read-interruptible NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write-interruptible NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_concurrent_blit_gpuX-rcs-overwrite-source NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_concurrent_blit_gpuX-rcs-overwrite-source-interruptible NSPT(7, M23M25)PASS(1, M25) NSPT(1, M23)
PNV igt_gem_pread_after_blit_interruptible NRUN(2, M23M25)PASS(1, M25) NRUN(1, M23)
PNV igt_gem_pread_after_blit_interruptible-display NRUN(2, M23M25)PASS(1, M25) NRUN(1, M23)
PNV igt_gem_pread_after_blit_interruptible-snoop NRUN(2, M23M25)PASS(1, M25) NRUN(1, M23)
PNV igt_gem_pread_after_blit_interruptible-uncached NRUN(2, M23M25)PASS(1, M25) NRUN(1, M23)
PNV igt_gem_pread_after_blit_normal NRUN(2, M23M25)PASS(1, M25) NRUN(1, M23)
PNV igt_gem_pread_after_blit_normal-display NRUN(2, M23M25)PASS(1, M25) NRUN(1, M23)
PNV igt_gem_pread_after_blit_normal-snoop NRUN(2, M23M25)PASS(1, M25) NRUN(1, M23)
PNV igt_gem_pread_after_blit_normal-uncached NRUN(2, M23M25)PASS(1, M25) NRUN(1, M23)
ILK igt_gem_concurrent_blit_gpu-bcs-early-read NSPT(7, M26M37)PASS(1, M37) NSPT(1, M37)
ILK igt_gem_concurrent_blit_gpu-bcs-early-read-interruptible NSPT(7, M26M37)PASS(1, M37) NSPT(1, M37)
ILK igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write NSPT(7, M26M37)PASS(1, M37) NSPT(1, M37)
ILK igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write-interruptible NSPT(7, M26M37)PASS(1, M37) NSPT(1, M37)
ILK igt_gem_concurrent_blit_gpu-bcs-overwrite-source NSPT(7, M26M37)PASS(1, M37) NSPT(1, M37)
ILK igt_gem_concurrent_blit_gpu-bcs-overwrite-source-interruptible NSPT(7, M26M37)PASS(1, M37) NSPT(1, M37)
ILK igt_gem_concurrent_blit_gpuX-bcs-early-read NSPT(7, M26M37)PASS(1, M37) NSPT(1, M37)
ILK igt_gem_concurrent_blit_gpuX-bcs-early-read-interruptible NSPT(7, M26M37)PASS(1, M37) NSPT(1, M37)
ILK igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write NSPT(7, M26M37)PASS(1, M37) NSPT(1, M37)
ILK igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write-interruptible NSPT(7, M26M37)PASS(1, M37) NSPT(1, M37)
ILK igt_gem_concurrent_blit_gpuX-bcs-overwrite-source NSPT(7, M26M37)PASS(1, M37) NSPT(1, M37)
ILK igt_gem_concurrent_blit_gpuX-bcs-overwrite-source-interruptible NSPT(7, M26M37)PASS(1, M37) NSPT(1, M37)
ILK igt_gem_pread_after_blit_interruptible NRUN(2, M26M37)PASS(1, M37) NRUN(1, M37)
ILK igt_gem_pread_after_blit_interruptible-display NRUN(2, M26M37)PASS(1, M37) NRUN(1, M37)
ILK igt_gem_pread_after_blit_interruptible-snoop NRUN(2, M26M37)PASS(1, M37) NRUN(1, M37)
ILK igt_gem_pread_after_blit_interruptible-uncached NRUN(2, M26M37)PASS(1, M37) NRUN(1, M37)
ILK igt_gem_pread_after_blit_normal NRUN(2, M26M37)PASS(1, M37) NRUN(1, M37)
ILK igt_gem_pread_after_blit_normal-display NRUN(2, M26M37)PASS(1, M37) NRUN(1, M37)
ILK igt_gem_pread_after_blit_normal-snoop NRUN(2, M26M37)PASS(1, M37) NRUN(1, M37)
ILK igt_gem_pread_after_blit_normal-uncached NRUN(2, M26M37)PASS(1, M37) NRUN(1, M37)
SNB igt_gem_concurrent_blit_gpu-bcs-early-read NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpu-bcs-early-read-forked NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpu-bcs-early-read-interruptible NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write-forked NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write-interruptible NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpu-bcs-overwrite-source NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpu-bcs-overwrite-source-forked NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpu-bcs-overwrite-source-interruptible NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpu-rcs-early-read NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpu-rcs-early-read-interruptible NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write-forked NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write-interruptible NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpu-rcs-overwrite-source NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpu-rcs-overwrite-source-forked NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpu-rcs-overwrite-source-interruptible NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpuX-bcs-early-read NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpuX-bcs-early-read-forked NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpuX-bcs-early-read-interruptible NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write-interruptible NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpuX-bcs-overwrite-source NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpuX-bcs-overwrite-source-forked NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpuX-bcs-overwrite-source-interruptible NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpuX-rcs-early-read NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpuX-rcs-early-read-forked NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpuX-rcs-early-read-interruptible NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write-forked NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write-interruptible NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpuX-rcs-overwrite-source NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpuX-rcs-overwrite-source-forked NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_concurrent_blit_gpuX-rcs-overwrite-source-interruptible NSPT(7, M22M35)PASS(1, M35) NSPT(1, M35)
SNB igt_gem_pread_after_blit_interruptible NRUN(3, M22M35)PASS(1, M35) NRUN(1, M35)
SNB igt_gem_pread_after_blit_interruptible-display NRUN(3, M22M35)PASS(1, M35) NRUN(1, M35)
SNB igt_gem_pread_after_blit_interruptible-snoop NRUN(3, M22M35)PASS(1, M35) NRUN(1, M35)
SNB igt_gem_pread_after_blit_interruptible-uncached NRUN(3, M22M35)PASS(1, M35) NRUN(1, M35)
SNB igt_gem_pread_after_blit_normal NRUN(3, M22M35)PASS(1, M35) NRUN(1, M35)
SNB igt_gem_pread_after_blit_normal-display NRUN(3, M22M35)PASS(1, M35) NRUN(1, M35)
SNB igt_gem_pread_after_blit_normal-snoop NRUN(3, M22M35)PASS(1, M35) NRUN(1, M35)
SNB igt_gem_pread_after_blit_normal-uncached NRUN(3, M22M35)PASS(1, M35) NRUN(1, M35)
SNB igt_kms_cursor_crc_cursor-size-change NSPT(6, M35M22)PASS(1, M35) NSPT(1, M35)
SNB igt_kms_flip_dpms-vs-vblank-race DMESG_WARN(3, M35M22)PASS(6, M35M22) PASS(1, M35)
SNB igt_kms_flip_dpms-vs-vblank-race-interruptible DMESG_WARN(2, M35M22)PASS(7, M35M22) PASS(1, M35)
SNB igt_kms_flip_event_leak NSPT(5, M35M22)PASS(1, M35) NSPT(1, M35)
SNB igt_kms_flip_modeset-vs-vblank-race DMESG_WARN(4, M35M22)PASS(6, M35M22) PASS(1, M35)
*SNB igt_kms_flip_nonexisting-fb PASS(2, M35) NSPT(1, M35)
SNB igt_kms_mmio_vs_cs_flip_setcrtc_vs_cs_flip NSPT(6, M35M22)PASS(1, M35) NSPT(1, M35)
SNB igt_kms_mmio_vs_cs_flip_setplane_vs_cs_flip NSPT(6, M35M22)PASS(1, M35) NSPT(1, M35)
SNB igt_kms_plane_plane-position-hole-pipe-B-plane-1 DMESG_WARN(1, M35)PASS(10, M35M22) PASS(1, M35)
SNB igt_kms_rotation_crc_primary-rotation NSPT(6, M35M22)PASS(1, M35) NSPT(1, M35)
SNB igt_kms_rotation_crc_sprite-rotation NSPT(6, M35M22)PASS(1, M35) NSPT(1, M35)
SNB igt_pm_rpm_cursor NSPT(6, M35M22)PASS(1, M35) NSPT(1, M35)
SNB igt_pm_rpm_cursor-dpms NSPT(6, M35M22)PASS(1, M35) NSPT(1, M35)
SNB igt_pm_rpm_dpms-mode-unset-non-lpsp NSPT(6, M35M22)PASS(1, M35) NSPT(1, M35)
SNB igt_pm_rpm_dpms-non-lpsp NSPT(6, M35M22)PASS(1, M35) NSPT(1, M35)
SNB igt_pm_rpm_drm-resources-equal NSPT(6, M35M22)PASS(1, M35) NSPT(1, M35)
SNB igt_pm_rpm_fences NSPT(6, M35M22)PASS(1, M35) NSPT(1, M35)
SNB igt_pm_rpm_fences-dpms NSPT(6, M35M22)PASS(1, M35) NSPT(1, M35)
SNB igt_pm_rpm_gem-execbuf NSPT(6, M35M22)PASS(1, M35) NSPT(1, M35)
SNB igt_pm_rpm_gem-mmap-cpu NSPT(6, M35M22)PASS(1, M35) NSPT(1, M35)
SNB igt_pm_rpm_gem-mmap-gtt NSPT(6, M35M22)PASS(1, M35) NSPT(1, M35)
SNB igt_pm_rpm_gem-pread NSPT(6, M35M22)PASS(1, M35) NSPT(1, M35)
SNB igt_pm_rpm_i2c NSPT(6, M35M22)PASS(1, M35) NSPT(1, M35)
SNB igt_pm_rpm_modeset-non-lpsp NSPT(6, M35M22)PASS(1, M35) NSPT(1, M35)
SNB igt_pm_rpm_modeset-non-lpsp-stress-no-wait NSPT(6, M35M22)PASS(1, M35) NSPT(1, M35)
SNB igt_pm_rpm_pci-d3-state NSPT(6, M35M22)PASS(1, M35) NSPT(1, M35)
SNB igt_pm_rpm_rte NSPT(6, M35M22)PASS(1, M35) NSPT(1, M35)
IVB igt_gem_concurrent_blit_gpu-bcs-early-read NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-bcs-early-read-forked NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-bcs-early-read-interruptible NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write-forked NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write-interruptible NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-bcs-overwrite-source NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-bcs-overwrite-source-forked NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-bcs-overwrite-source-interruptible NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-rcs-early-read NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-rcs-early-read-forked NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-rcs-early-read-interruptible NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write-forked NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write-interruptible NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-rcs-overwrite-source NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-rcs-overwrite-source-forked NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpu-rcs-overwrite-source-interruptible NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-bcs-early-read NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-bcs-early-read-forked NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-bcs-early-read-interruptible NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write-forked NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write-interruptible NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-bcs-overwrite-source NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-bcs-overwrite-source-forked NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-bcs-overwrite-source-interruptible NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-rcs-early-read NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-rcs-early-read-forked NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-rcs-early-read-interruptible NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write-forked NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write-interruptible NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-rcs-overwrite-source NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-rcs-overwrite-source-forked NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
IVB igt_gem_concurrent_blit_gpuX-rcs-overwrite-source-interruptible NSPT(7, M21M34M4)PASS(1, M34) NSPT(1, M34)
*IVB igt_gem_pread_after_blit_interruptible NRUN(2, M21M4)PASS(1, M34) NRUN(1, M34)
*IVB igt_gem_pread_after_blit_interruptible-display NRUN(2, M21M4)PASS(1, M34) NRUN(1, M34)
*IVB igt_gem_pread_after_blit_interruptible-snoop NRUN(2, M21M4)PASS(1, M34) NRUN(1, M34)
*IVB igt_gem_pread_after_blit_interruptible-uncached NRUN(2, M21M4)PASS(1, M34) NRUN(1, M34)
*IVB igt_gem_pread_after_blit_normal NRUN(2, M21M4)PASS(1, M34) NRUN(1, M34)
*IVB igt_gem_pread_after_blit_normal-display NRUN(2, M21M4)PASS(1, M34) NRUN(1, M34)
*IVB igt_gem_pread_after_blit_normal-snoop NRUN(2, M21M4)PASS(1, M34) NRUN(1, M34)
*IVB igt_gem_pread_after_blit_normal-uncached NRUN(2, M21M4)PASS(1, M34) NRUN(1, M34)
*BYT igt_gem_pread_after_blit_interruptible NRUN(2, M51)PASS(1, M48) NRUN(1, M48)
*BYT igt_gem_pread_after_blit_interruptible-display NRUN(2, M51)PASS(1, M48) NRUN(1, M48)
*BYT igt_gem_pread_after_blit_interruptible-snoop NRUN(2, M51)PASS(1, M48) NRUN(1, M48)
*BYT igt_gem_pread_after_blit_interruptible-uncached NRUN(2, M51)PASS(1, M48) NRUN(1, M48)
*BYT igt_gem_pread_after_blit_normal NRUN(2, M51)PASS(1, M48) NRUN(1, M48)
*BYT igt_gem_pread_after_blit_normal-display NRUN(2, M51)PASS(1, M48) NRUN(1, M48)
*BYT igt_gem_pread_after_blit_normal-snoop NRUN(2, M51)PASS(1, M48) NRUN(1, M48)
*BYT igt_gem_pread_after_blit_normal-uncached NRUN(2, M51)PASS(1, M48) NRUN(1, M48)
HSW igt_gem_concurrent_blit_gpu-bcs-early-read NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpu-bcs-early-read-forked NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpu-bcs-early-read-interruptible NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write-forked NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write-interruptible NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpu-bcs-overwrite-source NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpu-bcs-overwrite-source-forked NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpu-bcs-overwrite-source-interruptible NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpu-rcs-early-read NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpu-rcs-early-read-forked NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpu-rcs-early-read-interruptible NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write-forked NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write-interruptible NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpu-rcs-overwrite-source NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpu-rcs-overwrite-source-forked NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpu-rcs-overwrite-source-interruptible NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpuX-bcs-early-read NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpuX-bcs-early-read-forked NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpuX-bcs-early-read-interruptible NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write-forked NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write-interruptible NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpuX-bcs-overwrite-source NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpuX-bcs-overwrite-source-forked NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpuX-bcs-overwrite-source-interruptible NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpuX-rcs-early-read NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpuX-rcs-early-read-forked NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpuX-rcs-early-read-interruptible NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write-forked NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write-interruptible NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpuX-rcs-overwrite-source NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpuX-rcs-overwrite-source-forked NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
HSW igt_gem_concurrent_blit_gpuX-rcs-overwrite-source-interruptible NSPT(6, M19M20M40)PASS(1, M40) NSPT(1, M40)
*HSW igt_gem_pread_after_blit_interruptible NRUN(2, M19)PASS(1, M40) NRUN(1, M40)
*HSW igt_gem_pread_after_blit_interruptible-display NRUN(2, M19)PASS(1, M40) NRUN(1, M40)
*HSW igt_gem_pread_after_blit_interruptible-snoop NRUN(2, M19)PASS(1, M40) NRUN(1, M40)
*HSW igt_gem_pread_after_blit_interruptible-uncached NRUN(2, M19)PASS(1, M40) NRUN(1, M40)
*HSW igt_gem_pread_after_blit_normal NRUN(2, M19)PASS(1, M40) NRUN(1, M40)
*HSW igt_gem_pread_after_blit_normal-display NRUN(2, M19)PASS(1, M40) NRUN(1, M40)
*HSW igt_gem_pread_after_blit_normal-snoop NRUN(2, M19)PASS(1, M40) NRUN(1, M40)
*HSW igt_gem_pread_after_blit_normal-uncached NRUN(2, M19)PASS(1, M40) NRUN(1, M40)
*HSW igt_kms_flip_flip-vs-dpms-off-vs-modeset DMESG_WARN(1, M40)PASS(5, M19M20) PASS(1, M40)
*HSW igt_kms_flip_flip-vs-dpms-off-vs-modeset-interruptible DMESG_WARN(2, M40M19)PASS(5, M19M20) PASS(1, M40)
*HSW igt_kms_flip_single-buffer-flip-vs-dpms-off-vs-modeset-interruptible DMESG_WARN(2, M40)PASS(6, M19M20) PASS(1, M40)
HSW igt_kms_plane_plane-panning-bottom-right-pipe-C-plane-1 TIMEOUT(3, M40)PASS(7, M19M40M20) PASS(1, M40)
*HSW igt_kms_plane_plane-panning-top-left-pipe-A-plane-2 PASS(1, M40) TIMEOUT(1, M40)
*HSW igt_kms_plane_plane-panning-top-left-pipe-B-plane-1 PASS(1, M40) DMESG_FAIL(1, M40)
HSW igt_pm_rpm_modeset-non-lpsp-stress-no-wait NSPT(4, M19)DMESG_WARN(1, M40)PASS(5, M40M20) PASS(1, M40)
BDW igt_gem_concurrent_blit_gpu-bcs-early-read NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpu-bcs-early-read-interruptible NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpu-bcs-gpu-read-after-write-interruptible NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpu-bcs-overwrite-source NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpu-bcs-overwrite-source-interruptible NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpu-rcs-early-read NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpu-rcs-early-read-interruptible NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpu-rcs-gpu-read-after-write-interruptible NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpu-rcs-overwrite-source NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpu-rcs-overwrite-source-interruptible NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-bcs-early-read NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-bcs-early-read-interruptible NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-bcs-gpu-read-after-write-interruptible NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-bcs-overwrite-source NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-bcs-overwrite-source-interruptible NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-rcs-early-read NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-rcs-early-read-interruptible NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-rcs-gpu-read-after-write-interruptible NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-rcs-overwrite-source NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_concurrent_blit_gpuX-rcs-overwrite-source-interruptible NSPT(7, M28M30)PASS(1, M30) NSPT(1, M30)
BDW igt_gem_pread_after_blit_interruptible NRUN(2, M28M30)PASS(1, M30) NRUN(1, M30)
BDW igt_gem_pread_after_blit_interruptible-display NRUN(2, M28M30)PASS(1, M30) NRUN(1, M30)
BDW igt_gem_pread_after_blit_interruptible-snoop NRUN(2, M28M30)PASS(1, M30) NRUN(1, M30)
BDW igt_gem_pread_after_blit_interruptible-uncached NRUN(2, M28M30)PASS(1, M30) NRUN(1, M30)
BDW igt_gem_pread_after_blit_normal NRUN(2, M28M30)PASS(1, M30) NRUN(1, M30)
BDW igt_gem_pread_after_blit_normal-display NRUN(2, M28M30)PASS(1, M30) NRUN(1, M30)
BDW igt_gem_pread_after_blit_normal-snoop NRUN(2, M28M30)PASS(1, M30) NRUN(1, M30)
BDW igt_gem_pread_after_blit_normal-uncached NRUN(2, M28M30)PASS(1, M30) NRUN(1, M30)
*BDW igt_gem_multi_bsd_sync_loop PASS(6, M30M28) DMESG_WARN(1, M30)
Note: You need to pay more attention to line start with '*'
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2] drm/i915: Reset CSB read pointer in ring init
2015-01-09 11:09 ` [PATCH v2] drm/i915: Reset CSB read pointer in ring init Thomas Daniel
2015-01-09 16:31 ` shuang.he
@ 2015-01-09 16:54 ` Dave Gordon
1 sibling, 0 replies; 7+ messages in thread
From: Dave Gordon @ 2015-01-09 16:54 UTC (permalink / raw)
To: Daniel, Thomas, intel-gfx; +Cc: Daniel Vetter, Zanoni, Paulo R
On 09/01/15 11:09, Daniel, Thomas wrote:
> A previous commit enabled execlists by default:
>
> commit 27401d126b5b ("drm/i915/bdw: Enable execlists by default where supported")
>
> This allowed routine testing of execlists which exposed a regression when
> resuming from suspend. The cause was tracked down the to recent changes to the
> ring init sequence:
>
> commit 35a57ffbb108 ("drm/i915: Only init engines once")
>
> During a suspend/resume cycle the hardware Context Status Buffer write pointer
> is reset. However since the recent changes to the init sequence the software CSB
> read pointer is no longer reset. This means that context status events are not
> handled correctly and new contexts are not written to the ELSP, resulting in an
> apparent GPU hang.
>
> Pending further changes to the ring init code, just move the
> ring->next_context_status_buffer initialization into gen8_init_common_ring to
> fix this regression.
>
> v2: Moved init into gen8_init_common_ring rather than context_enable after
> feedback from Daniel Vetter. Updated commit msg to reflect this and also cite
> commits related to the regression. Fixed bz link to correct bug.
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=88096
> Cc: Paulo Zanoni <paulo.r.zanoni@intel.com>
> Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
> Cc: Dave Gordon <david.s.gordon@intel.com>
> Signed-off-by: Thomas Daniel <thomas.daniel@intel.com>
> ---
> drivers/gpu/drm/i915/intel_lrc.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
> index 7670a0f..e405b61 100644
> --- a/drivers/gpu/drm/i915/intel_lrc.c
> +++ b/drivers/gpu/drm/i915/intel_lrc.c
> @@ -1137,6 +1137,7 @@ static int gen8_init_common_ring(struct intel_engine_cs *ring)
> _MASKED_BIT_DISABLE(GFX_REPLAY_MODE) |
> _MASKED_BIT_ENABLE(GFX_RUN_LIST_ENABLE));
> POSTING_READ(RING_MODE_GEN7(ring));
> + ring->next_context_status_buffer = 0;
> DRM_DEBUG_DRIVER("Execlists enabled for %s\n", ring->name);
>
> memset(&ring->hangcheck, 0, sizeof(ring->hangcheck));
> @@ -1394,7 +1395,6 @@ static int logical_ring_init(struct drm_device *dev, struct intel_engine_cs *rin
> INIT_LIST_HEAD(&ring->execlist_queue);
> INIT_LIST_HEAD(&ring->execlist_retired_req_list);
> spin_lock_init(&ring->execlist_lock);
> - ring->next_context_status_buffer = 0;
>
> ret = i915_cmd_parser_init_ring(ring);
> if (ret)
>
LGTM.
Reviewed-by: Dave Gordon <david.s.gordon@intel.com>
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2015-01-09 16:54 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-01-07 16:09 [PATCH] drm/i915: Reset CSB read pointer when enabling contexts Thomas Daniel
2015-01-07 16:56 ` Daniel Vetter
2015-01-07 20:39 ` shuang.he
2015-01-08 8:01 ` Daniel Vetter
2015-01-09 11:09 ` [PATCH v2] drm/i915: Reset CSB read pointer in ring init Thomas Daniel
2015-01-09 16:31 ` shuang.he
2015-01-09 16:54 ` Dave Gordon
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.