Re: ✗ Fi.CI.BAT: failure for drm/i915: Allocate intel_engine_cs structure only for the enabled engines

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

 





On 10/7/2016 5:14 PM, Chris Wilson wrote:
On Fri, Oct 07, 2016 at 09:58:07AM -0000, Patchwork wrote:
== Series Details ==

Series: drm/i915: Allocate intel_engine_cs structure only for the enabled engines
URL   : https://patchwork.freedesktop.org/series/13435/
State : failure

== Summary ==

Series 13435v1 drm/i915: Allocate intel_engine_cs structure only for the enabled engines
https://patchwork.freedesktop.org/api/1.0/series/13435/revisions/1/mbox/

Test drv_module_reload_basic:
                dmesg-warn -> PASS       (fi-ilk-650)
Test gem_exec_parallel:
        Subgroup basic:
                pass       -> INCOMPLETE (fi-snb-2600)
Test gem_sync:
        Subgroup basic-store-all:
                pass       -> INCOMPLETE (fi-bxt-t5700)
                pass       -> INCOMPLETE (fi-byt-j1900)
                pass       -> INCOMPLETE (fi-bsw-n3050)
                pass       -> INCOMPLETE (fi-hsw-4770)
                pass       -> INCOMPLETE (fi-skl-6700k)
                pass       -> INCOMPLETE (fi-skl-6770hq)
                pass       -> INCOMPLETE (fi-hsw-4770r)
                pass       -> INCOMPLETE (fi-snb-2520m)
                pass       -> INCOMPLETE (fi-kbl-7200u)
                pass       -> INCOMPLETE (fi-skl-6700hq)
                pass       -> INCOMPLETE (fi-ivb-3520m)
                pass       -> INCOMPLETE (fi-ivb-3770)
                pass       -> INCOMPLETE (fi-bdw-5557u)
                pass       -> INCOMPLETE (fi-skl-6260u)

This is due to missing:

git a/drivers/gpu/drm/i915/intel_ringbuffer.h b/drivers/gpu/drm/i915/intel_ringbuffer.h
index 8c08ced..44ef6b5 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.h
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.h
@@ -415,7 +415,7 @@ intel_engine_sync_index(struct intel_engine_cs *engine,
         * vcs2 -> 0 = rcs, 1 = vcs, 2 = bcs, 3 = vecs;
         */

-       idx = (other - engine) - 1;
+       idx = (other->id - engine->id) - 1;
        if (idx < 0)
                idx += I915_NUM_ENGINES;

I believe that's the only case where we compare elements of the array,
and even scheduled for removal.
Thank you very much for finding this anomaly.
So the cross engine synchronization was going for a toss, causing the above tests to get stuck or execute slowly ?.

best regards
Akash
-Chris


_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/intel-gfx




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