* [PATCH i-g-t] i915/gem_busy: Another year, another ABI bump
@ 2019-03-02 10:04 ` Chris Wilson
0 siblings, 0 replies; 6+ messages in thread
From: Chris Wilson @ 2019-03-02 10:04 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev
The ABI ring ids are dead. Long live our classes.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
---
tests/i915/gem_busy.c | 28 +++++++++++++++++++++-------
1 file changed, 21 insertions(+), 7 deletions(-)
diff --git a/tests/i915/gem_busy.c b/tests/i915/gem_busy.c
index eb3d3ef2b..ad8534687 100644
--- a/tests/i915/gem_busy.c
+++ b/tests/i915/gem_busy.c
@@ -66,6 +66,19 @@ static void __gem_busy(int fd,
*read = busy.busy >> 16;
}
+static uint32_t ring_to_class(unsigned int ring)
+{
+ uint32_t class[] = {
+ [I915_EXEC_DEFAULT] = I915_ENGINE_CLASS_RENDER,
+ [I915_EXEC_RENDER] = I915_ENGINE_CLASS_RENDER,
+ [I915_EXEC_BLT] = I915_ENGINE_CLASS_COPY,
+ [I915_EXEC_BSD] = I915_ENGINE_CLASS_VIDEO,
+ [I915_EXEC_VEBOX] = I915_ENGINE_CLASS_VIDEO_ENHANCE,
+ };
+ igt_assert(ring < ARRAY_SIZE(class));
+ return class[ring];
+}
+
static bool exec_noop(int fd,
uint32_t *handles,
unsigned ring,
@@ -100,6 +113,7 @@ static bool still_busy(int fd, uint32_t handle)
static void semaphore(int fd, unsigned ring, uint32_t flags)
{
uint32_t bbe = MI_BATCH_BUFFER_END;
+ const unsigned uabi = ring_to_class(ring & 63);
igt_spin_t *spin;
uint32_t handle[3];
uint32_t read, write;
@@ -122,26 +136,26 @@ static void semaphore(int fd, unsigned ring, uint32_t flags)
igt_assert(exec_noop(fd, handle, ring | flags, false));
igt_assert(still_busy(fd, handle[BUSY]));
__gem_busy(fd, handle[TEST], &read, &write);
- igt_assert_eq(read, 1 << ring);
+ igt_assert_eq(read, 1 << uabi);
igt_assert_eq(write, 0);
/* Requeue with a write */
igt_assert(exec_noop(fd, handle, ring | flags, true));
igt_assert(still_busy(fd, handle[BUSY]));
__gem_busy(fd, handle[TEST], &read, &write);
- igt_assert_eq(read, 1 << ring);
- igt_assert_eq(write, ring);
+ igt_assert_eq(read, 1 << uabi);
+ igt_assert_eq(write, 1 + uabi);
/* Now queue it for a read across all available rings */
active = 0;
for (i = I915_EXEC_RENDER; i <= I915_EXEC_VEBOX; i++) {
if (exec_noop(fd, handle, i | flags, false))
- active |= 1 << i;
+ active |= 1 << ring_to_class(i);
}
igt_assert(still_busy(fd, handle[BUSY]));
__gem_busy(fd, handle[TEST], &read, &write);
igt_assert_eq(read, active);
- igt_assert_eq(write, ring); /* from the earlier write */
+ igt_assert_eq(write, 1 + uabi); /* from the earlier write */
/* Check that our long batch was long enough */
igt_assert(still_busy(fd, handle[BUSY]));
@@ -168,7 +182,7 @@ static void one(int fd, unsigned ring, unsigned test_flags)
struct drm_i915_gem_relocation_entry store[1024+1];
struct drm_i915_gem_execbuffer2 execbuf;
unsigned size = ALIGN(ARRAY_SIZE(store)*16 + 4, 4096);
- const unsigned uabi = ring & 63;
+ const unsigned uabi = ring_to_class(ring & 63);
uint32_t read[2], write[2];
struct timespec tv;
uint32_t *batch, *bbe;
@@ -270,7 +284,7 @@ static void one(int fd, unsigned ring, unsigned test_flags)
timeout = 1;
}
- igt_assert_eq(write[SCRATCH], uabi);
+ igt_assert_eq(write[SCRATCH], 1 + uabi);
igt_assert_eq_u32(read[SCRATCH], 1 << uabi);
igt_assert_eq(write[BATCH], 0);
--
2.20.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [igt-dev] [PATCH i-g-t] i915/gem_busy: Another year, another ABI bump
@ 2019-03-02 10:04 ` Chris Wilson
0 siblings, 0 replies; 6+ messages in thread
From: Chris Wilson @ 2019-03-02 10:04 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev, Tvrtko Ursulin
The ABI ring ids are dead. Long live our classes.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
---
tests/i915/gem_busy.c | 28 +++++++++++++++++++++-------
1 file changed, 21 insertions(+), 7 deletions(-)
diff --git a/tests/i915/gem_busy.c b/tests/i915/gem_busy.c
index eb3d3ef2b..ad8534687 100644
--- a/tests/i915/gem_busy.c
+++ b/tests/i915/gem_busy.c
@@ -66,6 +66,19 @@ static void __gem_busy(int fd,
*read = busy.busy >> 16;
}
+static uint32_t ring_to_class(unsigned int ring)
+{
+ uint32_t class[] = {
+ [I915_EXEC_DEFAULT] = I915_ENGINE_CLASS_RENDER,
+ [I915_EXEC_RENDER] = I915_ENGINE_CLASS_RENDER,
+ [I915_EXEC_BLT] = I915_ENGINE_CLASS_COPY,
+ [I915_EXEC_BSD] = I915_ENGINE_CLASS_VIDEO,
+ [I915_EXEC_VEBOX] = I915_ENGINE_CLASS_VIDEO_ENHANCE,
+ };
+ igt_assert(ring < ARRAY_SIZE(class));
+ return class[ring];
+}
+
static bool exec_noop(int fd,
uint32_t *handles,
unsigned ring,
@@ -100,6 +113,7 @@ static bool still_busy(int fd, uint32_t handle)
static void semaphore(int fd, unsigned ring, uint32_t flags)
{
uint32_t bbe = MI_BATCH_BUFFER_END;
+ const unsigned uabi = ring_to_class(ring & 63);
igt_spin_t *spin;
uint32_t handle[3];
uint32_t read, write;
@@ -122,26 +136,26 @@ static void semaphore(int fd, unsigned ring, uint32_t flags)
igt_assert(exec_noop(fd, handle, ring | flags, false));
igt_assert(still_busy(fd, handle[BUSY]));
__gem_busy(fd, handle[TEST], &read, &write);
- igt_assert_eq(read, 1 << ring);
+ igt_assert_eq(read, 1 << uabi);
igt_assert_eq(write, 0);
/* Requeue with a write */
igt_assert(exec_noop(fd, handle, ring | flags, true));
igt_assert(still_busy(fd, handle[BUSY]));
__gem_busy(fd, handle[TEST], &read, &write);
- igt_assert_eq(read, 1 << ring);
- igt_assert_eq(write, ring);
+ igt_assert_eq(read, 1 << uabi);
+ igt_assert_eq(write, 1 + uabi);
/* Now queue it for a read across all available rings */
active = 0;
for (i = I915_EXEC_RENDER; i <= I915_EXEC_VEBOX; i++) {
if (exec_noop(fd, handle, i | flags, false))
- active |= 1 << i;
+ active |= 1 << ring_to_class(i);
}
igt_assert(still_busy(fd, handle[BUSY]));
__gem_busy(fd, handle[TEST], &read, &write);
igt_assert_eq(read, active);
- igt_assert_eq(write, ring); /* from the earlier write */
+ igt_assert_eq(write, 1 + uabi); /* from the earlier write */
/* Check that our long batch was long enough */
igt_assert(still_busy(fd, handle[BUSY]));
@@ -168,7 +182,7 @@ static void one(int fd, unsigned ring, unsigned test_flags)
struct drm_i915_gem_relocation_entry store[1024+1];
struct drm_i915_gem_execbuffer2 execbuf;
unsigned size = ALIGN(ARRAY_SIZE(store)*16 + 4, 4096);
- const unsigned uabi = ring & 63;
+ const unsigned uabi = ring_to_class(ring & 63);
uint32_t read[2], write[2];
struct timespec tv;
uint32_t *batch, *bbe;
@@ -270,7 +284,7 @@ static void one(int fd, unsigned ring, unsigned test_flags)
timeout = 1;
}
- igt_assert_eq(write[SCRATCH], uabi);
+ igt_assert_eq(write[SCRATCH], 1 + uabi);
igt_assert_eq_u32(read[SCRATCH], 1 << uabi);
igt_assert_eq(write[BATCH], 0);
--
2.20.1
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for i915/gem_busy: Another year, another ABI bump
2019-03-02 10:04 ` [igt-dev] " Chris Wilson
(?)
@ 2019-03-02 10:57 ` Patchwork
-1 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2019-03-02 10:57 UTC (permalink / raw)
To: Chris Wilson; +Cc: igt-dev
== Series Details ==
Series: i915/gem_busy: Another year, another ABI bump
URL : https://patchwork.freedesktop.org/series/57457/
State : success
== Summary ==
CI Bug Log - changes from IGT_4867 -> IGTPW_2544
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://patchwork.freedesktop.org/api/1.0/series/57457/revisions/1/mbox/
Known issues
------------
Here are the changes found in IGTPW_2544 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@amdgpu/amd_basic@cs-compute:
- fi-kbl-8809g: NOTRUN -> FAIL [fdo#108094]
* igt@amdgpu/amd_cs_nop@sync-fork-compute0:
- fi-icl-u3: NOTRUN -> SKIP [fdo#109315] +17
* igt@gem_cpu_reloc@basic:
- fi-kbl-7560u: PASS -> INCOMPLETE [fdo#103665]
* igt@gem_exec_basic@gtt-bsd1:
- fi-icl-u3: NOTRUN -> SKIP [fdo#109276] +7
* igt@gem_exec_parse@basic-rejected:
- fi-icl-u3: NOTRUN -> SKIP [fdo#109289] +1
* igt@i915_selftest@live_contexts:
- fi-icl-u3: NOTRUN -> DMESG-FAIL [fdo#108569]
* igt@i915_selftest@live_evict:
- fi-bsw-kefka: PASS -> DMESG-WARN [fdo#107709]
* igt@kms_busy@basic-flip-b:
- fi-gdg-551: PASS -> FAIL [fdo#103182]
* igt@kms_busy@basic-flip-c:
- fi-blb-e6850: NOTRUN -> SKIP [fdo#109271] / [fdo#109278]
* igt@kms_chamelium@hdmi-edid-read:
- fi-icl-u3: NOTRUN -> SKIP [fdo#109284] +8
* igt@kms_force_connector_basic@prune-stale-modes:
- fi-icl-u3: NOTRUN -> SKIP [fdo#109285] +3
* igt@kms_frontbuffer_tracking@basic:
- fi-icl-u3: NOTRUN -> FAIL [fdo#103167]
* igt@kms_pipe_crc_basic@hang-read-crc-pipe-c:
- fi-blb-e6850: NOTRUN -> SKIP [fdo#109271] +48
* igt@runner@aborted:
- fi-bsw-kefka: NOTRUN -> FAIL [fdo#107709]
#### Possible fixes ####
* igt@amdgpu/amd_basic@userptr:
- fi-kbl-8809g: DMESG-WARN [fdo#108965] -> PASS
* igt@gem_exec_suspend@basic-s3:
- fi-blb-e6850: INCOMPLETE [fdo#107718] -> PASS
- {fi-icl-y}: FAIL [fdo#103375] -> PASS
* igt@gem_exec_suspend@basic-s4-devices:
- {fi-icl-y}: FAIL [fdo#109779] -> PASS
* igt@kms_frontbuffer_tracking@basic:
- {fi-icl-y}: INCOMPLETE [fdo#107713] -> PASS
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
[fdo#103182]: https://bugs.freedesktop.org/show_bug.cgi?id=103182
[fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
[fdo#103665]: https://bugs.freedesktop.org/show_bug.cgi?id=103665
[fdo#107709]: https://bugs.freedesktop.org/show_bug.cgi?id=107709
[fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
[fdo#107718]: https://bugs.freedesktop.org/show_bug.cgi?id=107718
[fdo#108094]: https://bugs.freedesktop.org/show_bug.cgi?id=108094
[fdo#108569]: https://bugs.freedesktop.org/show_bug.cgi?id=108569
[fdo#108965]: https://bugs.freedesktop.org/show_bug.cgi?id=108965
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276
[fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
[fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
[fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
[fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
[fdo#109294]: https://bugs.freedesktop.org/show_bug.cgi?id=109294
[fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315
[fdo#109779]: https://bugs.freedesktop.org/show_bug.cgi?id=109779
Participating hosts (44 -> 39)
------------------------------
Additional (1): fi-icl-u3
Missing (6): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-pnv-d510 fi-bdw-samus
Build changes
-------------
* IGT: IGT_4867 -> IGTPW_2544
CI_DRM_5683: 40251405bb454b06259738bcebf4529c888f7fe0 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_2544: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2544/
IGT_4867: 081ab732e8613dc16710be718fc7d647af9e85b5 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2544/
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 6+ messages in thread
* [igt-dev] ✗ Fi.CI.IGT: failure for i915/gem_busy: Another year, another ABI bump
2019-03-02 10:04 ` [igt-dev] " Chris Wilson
(?)
(?)
@ 2019-03-02 15:09 ` Patchwork
-1 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2019-03-02 15:09 UTC (permalink / raw)
To: Chris Wilson; +Cc: igt-dev
== Series Details ==
Series: i915/gem_busy: Another year, another ABI bump
URL : https://patchwork.freedesktop.org/series/57457/
State : failure
== Summary ==
CI Bug Log - changes from IGT_4867_full -> IGTPW_2544_full
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with IGTPW_2544_full absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_2544_full, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.
External URL: https://patchwork.freedesktop.org/api/1.0/series/57457/revisions/1/mbox/
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in IGTPW_2544_full:
### IGT changes ###
#### Possible regressions ####
* igt@gem_busy@extended-blt:
- shard-glk: PASS -> FAIL +9
- shard-snb: PASS -> FAIL +2
* igt@gem_busy@extended-parallel-bsd2:
- shard-kbl: PASS -> FAIL +14
* igt@gem_busy@extended-parallel-render:
- shard-snb: NOTRUN -> FAIL
* igt@gem_busy@extended-parallel-vebox:
- shard-apl: PASS -> FAIL +10
* igt@gem_busy@extended-render:
- shard-hsw: PASS -> FAIL +6
Known issues
------------
Here are the changes found in IGTPW_2544_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@i915_pm_rpm@gem-execbuf-stress-extra-wait:
- shard-snb: NOTRUN -> SKIP [fdo#109271] +110
* igt@i915_suspend@fence-restore-untiled:
- shard-kbl: PASS -> INCOMPLETE [fdo#103665]
* igt@kms_atomic_transition@plane-all-modeset-transition:
- shard-apl: PASS -> INCOMPLETE [fdo#103927]
* igt@kms_busy@basic-flip-d:
- shard-apl: NOTRUN -> SKIP [fdo#109271] / [fdo#109278] +2
- shard-kbl: NOTRUN -> SKIP [fdo#109271] / [fdo#109278]
* igt@kms_busy@basic-modeset-e:
- shard-glk: NOTRUN -> SKIP [fdo#109271] / [fdo#109278]
* igt@kms_busy@extended-modeset-hang-newfb-render-c:
- shard-hsw: PASS -> DMESG-WARN [fdo#107956] +1
- shard-kbl: PASS -> DMESG-WARN [fdo#107956] +1
* igt@kms_ccs@pipe-a-crc-sprite-planes-basic:
- shard-glk: PASS -> FAIL [fdo#108145]
* igt@kms_chamelium@hdmi-crc-xbgr8888:
- shard-apl: NOTRUN -> SKIP [fdo#109271] +31
* igt@kms_color@pipe-a-ctm-max:
- shard-apl: PASS -> FAIL [fdo#108147]
* igt@kms_color@pipe-b-legacy-gamma:
- shard-apl: PASS -> FAIL [fdo#104782]
* igt@kms_concurrent@pipe-e:
- shard-snb: NOTRUN -> SKIP [fdo#109271] / [fdo#109278] +14
* igt@kms_content_protection@legacy:
- shard-glk: NOTRUN -> SKIP [fdo#109271] +17
* igt@kms_cursor_crc@cursor-256x85-random:
- shard-apl: PASS -> FAIL [fdo#103232] +2
* igt@kms_cursor_crc@cursor-64x64-sliding:
- shard-glk: NOTRUN -> FAIL [fdo#103232]
* igt@kms_cursor_legacy@cursor-vs-flip-atomic-transitions:
- shard-hsw: PASS -> FAIL [fdo#103355]
* igt@kms_flip@2x-flip-vs-expired-vblank-interruptible:
- shard-glk: PASS -> FAIL [fdo#105363]
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-onoff:
- shard-glk: PASS -> FAIL [fdo#103167] +4
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-mmap-gtt:
- shard-glk: NOTRUN -> FAIL [fdo#103167]
* igt@kms_plane@pixel-format-pipe-a-planes-source-clamping:
- shard-apl: PASS -> FAIL [fdo#108948]
* igt@kms_plane@plane-position-covered-pipe-a-planes:
- shard-kbl: PASS -> FAIL [fdo#103166]
* igt@kms_plane_alpha_blend@pipe-a-constant-alpha-max:
- shard-apl: PASS -> FAIL [fdo#108145]
* igt@kms_plane_alpha_blend@pipe-c-alpha-basic:
- shard-apl: NOTRUN -> FAIL [fdo#108145]
* igt@kms_plane_multiple@atomic-pipe-c-tiling-yf:
- shard-apl: PASS -> FAIL [fdo#103166] +1
* igt@kms_vblank@pipe-c-ts-continuation-modeset-rpm:
- shard-apl: PASS -> FAIL [fdo#104894] +2
* igt@tools_test@sysfs_l3_parity:
- shard-kbl: NOTRUN -> SKIP [fdo#109271] +9
#### Possible fixes ####
* igt@kms_busy@extended-modeset-hang-newfb-with-reset-render-a:
- shard-hsw: DMESG-WARN [fdo#107956] -> PASS
- shard-kbl: DMESG-WARN [fdo#107956] -> PASS
* igt@kms_busy@extended-modeset-hang-newfb-with-reset-render-b:
- shard-snb: DMESG-WARN [fdo#107956] -> PASS +1
* igt@kms_busy@extended-pageflip-hang-newfb-render-a:
- shard-glk: DMESG-WARN [fdo#107956] -> PASS +1
* igt@kms_color@pipe-a-legacy-gamma:
- shard-apl: FAIL [fdo#104782] / [fdo#108145] -> PASS
* igt@kms_cursor_crc@cursor-128x128-suspend:
- shard-apl: FAIL [fdo#103191] / [fdo#103232] -> PASS +2
* igt@kms_cursor_crc@cursor-256x256-onscreen:
- shard-kbl: FAIL [fdo#103232] -> PASS
* igt@kms_cursor_crc@cursor-64x21-random:
- shard-apl: FAIL [fdo#103232] -> PASS +2
* igt@kms_cursor_legacy@2x-long-cursor-vs-flip-legacy:
- shard-hsw: FAIL [fdo#105767] -> PASS
* igt@kms_cursor_legacy@cursor-vs-flip-toggle:
- shard-hsw: FAIL [fdo#103355] -> PASS
* igt@kms_flip@2x-flip-vs-dpms:
- shard-hsw: DMESG-WARN [fdo#102614] -> PASS
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-cpu:
- shard-apl: FAIL [fdo#103167] -> PASS +2
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-wc:
- shard-glk: FAIL [fdo#103167] -> PASS +2
* igt@kms_plane_multiple@atomic-pipe-a-tiling-y:
- shard-glk: FAIL [fdo#103166] -> PASS +6
- shard-kbl: FAIL [fdo#103166] -> PASS +2
* igt@kms_plane_multiple@atomic-pipe-b-tiling-none:
- shard-apl: FAIL [fdo#103166] -> PASS +3
* igt@kms_rotation_crc@multiplane-rotation:
- shard-kbl: INCOMPLETE [fdo#103665] -> PASS
* igt@kms_rotation_crc@multiplane-rotation-cropping-top:
- shard-kbl: FAIL [fdo#109016] -> PASS
* igt@kms_setmode@basic:
- shard-apl: FAIL [fdo#99912] -> PASS
- shard-hsw: FAIL [fdo#99912] -> PASS
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#102614]: https://bugs.freedesktop.org/show_bug.cgi?id=102614
[fdo#103166]: https://bugs.freedesktop.org/show_bug.cgi?id=103166
[fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
[fdo#103191]: https://bugs.freedesktop.org/show_bug.cgi?id=103191
[fdo#103232]: https://bugs.freedesktop.org/show_bug.cgi?id=103232
[fdo#103355]: https://bugs.freedesktop.org/show_bug.cgi?id=103355
[fdo#103665]: https://bugs.freedesktop.org/show_bug.cgi?id=103665
[fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[fdo#104782]: https://bugs.freedesktop.org/show_bug.cgi?id=104782
[fdo#104894]: https://bugs.freedesktop.org/show_bug.cgi?id=104894
[fdo#105363]: https://bugs.freedesktop.org/show_bug.cgi?id=105363
[fdo#105767]: https://bugs.freedesktop.org/show_bug.cgi?id=105767
[fdo#107956]: https://bugs.freedesktop.org/show_bug.cgi?id=107956
[fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
[fdo#108147]: https://bugs.freedesktop.org/show_bug.cgi?id=108147
[fdo#108948]: https://bugs.freedesktop.org/show_bug.cgi?id=108948
[fdo#109016]: https://bugs.freedesktop.org/show_bug.cgi?id=109016
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
[fdo#99912]: https://bugs.freedesktop.org/show_bug.cgi?id=99912
Participating hosts (7 -> 5)
------------------------------
Missing (2): shard-skl shard-iclb
Build changes
-------------
* IGT: IGT_4867 -> IGTPW_2544
CI_DRM_5683: 40251405bb454b06259738bcebf4529c888f7fe0 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_2544: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2544/
IGT_4867: 081ab732e8613dc16710be718fc7d647af9e85b5 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2544/
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [igt-dev] [PATCH i-g-t] i915/gem_busy: Another year, another ABI bump
2019-03-02 10:04 ` [igt-dev] " Chris Wilson
@ 2019-03-05 16:08 ` Tvrtko Ursulin
-1 siblings, 0 replies; 6+ messages in thread
From: Tvrtko Ursulin @ 2019-03-05 16:08 UTC (permalink / raw)
To: Chris Wilson, intel-gfx; +Cc: igt-dev
On 02/03/2019 10:04, Chris Wilson wrote:
> The ABI ring ids are dead. Long live our classes.
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> ---
> tests/i915/gem_busy.c | 28 +++++++++++++++++++++-------
> 1 file changed, 21 insertions(+), 7 deletions(-)
>
> diff --git a/tests/i915/gem_busy.c b/tests/i915/gem_busy.c
> index eb3d3ef2b..ad8534687 100644
> --- a/tests/i915/gem_busy.c
> +++ b/tests/i915/gem_busy.c
> @@ -66,6 +66,19 @@ static void __gem_busy(int fd,
> *read = busy.busy >> 16;
> }
>
> +static uint32_t ring_to_class(unsigned int ring)
> +{
> + uint32_t class[] = {
> + [I915_EXEC_DEFAULT] = I915_ENGINE_CLASS_RENDER,
> + [I915_EXEC_RENDER] = I915_ENGINE_CLASS_RENDER,
> + [I915_EXEC_BLT] = I915_ENGINE_CLASS_COPY,
> + [I915_EXEC_BSD] = I915_ENGINE_CLASS_VIDEO,
> + [I915_EXEC_VEBOX] = I915_ENGINE_CLASS_VIDEO_ENHANCE,
> + };
> + igt_assert(ring < ARRAY_SIZE(class));
> + return class[ring];
> +}
> +
> static bool exec_noop(int fd,
> uint32_t *handles,
> unsigned ring,
> @@ -100,6 +113,7 @@ static bool still_busy(int fd, uint32_t handle)
> static void semaphore(int fd, unsigned ring, uint32_t flags)
> {
> uint32_t bbe = MI_BATCH_BUFFER_END;
> + const unsigned uabi = ring_to_class(ring & 63);
> igt_spin_t *spin;
> uint32_t handle[3];
> uint32_t read, write;
> @@ -122,26 +136,26 @@ static void semaphore(int fd, unsigned ring, uint32_t flags)
> igt_assert(exec_noop(fd, handle, ring | flags, false));
> igt_assert(still_busy(fd, handle[BUSY]));
> __gem_busy(fd, handle[TEST], &read, &write);
> - igt_assert_eq(read, 1 << ring);
> + igt_assert_eq(read, 1 << uabi);
> igt_assert_eq(write, 0);
>
> /* Requeue with a write */
> igt_assert(exec_noop(fd, handle, ring | flags, true));
> igt_assert(still_busy(fd, handle[BUSY]));
> __gem_busy(fd, handle[TEST], &read, &write);
> - igt_assert_eq(read, 1 << ring);
> - igt_assert_eq(write, ring);
> + igt_assert_eq(read, 1 << uabi);
> + igt_assert_eq(write, 1 + uabi);
>
> /* Now queue it for a read across all available rings */
> active = 0;
> for (i = I915_EXEC_RENDER; i <= I915_EXEC_VEBOX; i++) {
> if (exec_noop(fd, handle, i | flags, false))
> - active |= 1 << i;
> + active |= 1 << ring_to_class(i);
> }
> igt_assert(still_busy(fd, handle[BUSY]));
> __gem_busy(fd, handle[TEST], &read, &write);
> igt_assert_eq(read, active);
> - igt_assert_eq(write, ring); /* from the earlier write */
> + igt_assert_eq(write, 1 + uabi); /* from the earlier write */
>
> /* Check that our long batch was long enough */
> igt_assert(still_busy(fd, handle[BUSY]));
> @@ -168,7 +182,7 @@ static void one(int fd, unsigned ring, unsigned test_flags)
> struct drm_i915_gem_relocation_entry store[1024+1];
> struct drm_i915_gem_execbuffer2 execbuf;
> unsigned size = ALIGN(ARRAY_SIZE(store)*16 + 4, 4096);
> - const unsigned uabi = ring & 63;
> + const unsigned uabi = ring_to_class(ring & 63);
> uint32_t read[2], write[2];
> struct timespec tv;
> uint32_t *batch, *bbe;
> @@ -270,7 +284,7 @@ static void one(int fd, unsigned ring, unsigned test_flags)
> timeout = 1;
> }
>
> - igt_assert_eq(write[SCRATCH], uabi);
> + igt_assert_eq(write[SCRATCH], 1 + uabi);
> igt_assert_eq_u32(read[SCRATCH], 1 << uabi);
>
> igt_assert_eq(write[BATCH], 0);
>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Regards,
Tvrtko
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [Intel-gfx] [igt-dev] [PATCH i-g-t] i915/gem_busy: Another year, another ABI bump
@ 2019-03-05 16:08 ` Tvrtko Ursulin
0 siblings, 0 replies; 6+ messages in thread
From: Tvrtko Ursulin @ 2019-03-05 16:08 UTC (permalink / raw)
To: Chris Wilson, intel-gfx; +Cc: igt-dev
On 02/03/2019 10:04, Chris Wilson wrote:
> The ABI ring ids are dead. Long live our classes.
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> ---
> tests/i915/gem_busy.c | 28 +++++++++++++++++++++-------
> 1 file changed, 21 insertions(+), 7 deletions(-)
>
> diff --git a/tests/i915/gem_busy.c b/tests/i915/gem_busy.c
> index eb3d3ef2b..ad8534687 100644
> --- a/tests/i915/gem_busy.c
> +++ b/tests/i915/gem_busy.c
> @@ -66,6 +66,19 @@ static void __gem_busy(int fd,
> *read = busy.busy >> 16;
> }
>
> +static uint32_t ring_to_class(unsigned int ring)
> +{
> + uint32_t class[] = {
> + [I915_EXEC_DEFAULT] = I915_ENGINE_CLASS_RENDER,
> + [I915_EXEC_RENDER] = I915_ENGINE_CLASS_RENDER,
> + [I915_EXEC_BLT] = I915_ENGINE_CLASS_COPY,
> + [I915_EXEC_BSD] = I915_ENGINE_CLASS_VIDEO,
> + [I915_EXEC_VEBOX] = I915_ENGINE_CLASS_VIDEO_ENHANCE,
> + };
> + igt_assert(ring < ARRAY_SIZE(class));
> + return class[ring];
> +}
> +
> static bool exec_noop(int fd,
> uint32_t *handles,
> unsigned ring,
> @@ -100,6 +113,7 @@ static bool still_busy(int fd, uint32_t handle)
> static void semaphore(int fd, unsigned ring, uint32_t flags)
> {
> uint32_t bbe = MI_BATCH_BUFFER_END;
> + const unsigned uabi = ring_to_class(ring & 63);
> igt_spin_t *spin;
> uint32_t handle[3];
> uint32_t read, write;
> @@ -122,26 +136,26 @@ static void semaphore(int fd, unsigned ring, uint32_t flags)
> igt_assert(exec_noop(fd, handle, ring | flags, false));
> igt_assert(still_busy(fd, handle[BUSY]));
> __gem_busy(fd, handle[TEST], &read, &write);
> - igt_assert_eq(read, 1 << ring);
> + igt_assert_eq(read, 1 << uabi);
> igt_assert_eq(write, 0);
>
> /* Requeue with a write */
> igt_assert(exec_noop(fd, handle, ring | flags, true));
> igt_assert(still_busy(fd, handle[BUSY]));
> __gem_busy(fd, handle[TEST], &read, &write);
> - igt_assert_eq(read, 1 << ring);
> - igt_assert_eq(write, ring);
> + igt_assert_eq(read, 1 << uabi);
> + igt_assert_eq(write, 1 + uabi);
>
> /* Now queue it for a read across all available rings */
> active = 0;
> for (i = I915_EXEC_RENDER; i <= I915_EXEC_VEBOX; i++) {
> if (exec_noop(fd, handle, i | flags, false))
> - active |= 1 << i;
> + active |= 1 << ring_to_class(i);
> }
> igt_assert(still_busy(fd, handle[BUSY]));
> __gem_busy(fd, handle[TEST], &read, &write);
> igt_assert_eq(read, active);
> - igt_assert_eq(write, ring); /* from the earlier write */
> + igt_assert_eq(write, 1 + uabi); /* from the earlier write */
>
> /* Check that our long batch was long enough */
> igt_assert(still_busy(fd, handle[BUSY]));
> @@ -168,7 +182,7 @@ static void one(int fd, unsigned ring, unsigned test_flags)
> struct drm_i915_gem_relocation_entry store[1024+1];
> struct drm_i915_gem_execbuffer2 execbuf;
> unsigned size = ALIGN(ARRAY_SIZE(store)*16 + 4, 4096);
> - const unsigned uabi = ring & 63;
> + const unsigned uabi = ring_to_class(ring & 63);
> uint32_t read[2], write[2];
> struct timespec tv;
> uint32_t *batch, *bbe;
> @@ -270,7 +284,7 @@ static void one(int fd, unsigned ring, unsigned test_flags)
> timeout = 1;
> }
>
> - igt_assert_eq(write[SCRATCH], uabi);
> + igt_assert_eq(write[SCRATCH], 1 + uabi);
> igt_assert_eq_u32(read[SCRATCH], 1 << uabi);
>
> igt_assert_eq(write[BATCH], 0);
>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Regards,
Tvrtko
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2019-03-05 16:08 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-03-02 10:04 [PATCH i-g-t] i915/gem_busy: Another year, another ABI bump Chris Wilson
2019-03-02 10:04 ` [igt-dev] " Chris Wilson
2019-03-02 10:57 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
2019-03-02 15:09 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
2019-03-05 16:08 ` [igt-dev] [PATCH i-g-t] " Tvrtko Ursulin
2019-03-05 16:08 ` [Intel-gfx] " Tvrtko Ursulin
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.