Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] drm/colorop: Keep colorop state consistent across atomic commits
@ 2026-02-18  6:57 Chaitanya Kumar Borah
  2026-02-18  6:57 ` [PATCH 1/2] drm/colorop: Preserve bypass value in duplicate_state() Chaitanya Kumar Borah
                   ` (8 more replies)
  0 siblings, 9 replies; 16+ messages in thread
From: Chaitanya Kumar Borah @ 2026-02-18  6:57 UTC (permalink / raw)
  To: dri-devel, intel-gfx, intel-xe
  Cc: contact, alex.hung, harry.wentland, daniels, mwen, sebastian.wick,
	uma.shankar, ville.syrjala, maarten.lankhorst, jani.nikula,
	louis.chauvet, stable, chaitanya.kumar.borah

This series aims to keep colorop state consistent across atomic
transactions by ensuring it accurately reflects committed hardware
state and remains part of the atomic update whenever its associated
plane is involved.

It contains two changes:
- Preserves the bypass value in duplicated colorop state.

_drm_atomic_helper_colorop_duplicate_state() unconditionally reset
bypass to true, which means the duplicated state no longer reflects the
committed hardware state. Since bypass directly controls whether the
colorop is active in hardware, this can lead to an unintended disable
during subsequent commits.

This could potentially be a problem also for colorops where bypass value
is immutably false.

Conceptually, I consider 'bypass' to behave similar to 'visible' in plane 
state - it represents current HW state and should therefore be preserved
across duplication.

- Add affected colorops with affected plane

Colorops are unique in the DRM model. While they are DRM objects with their
own states, they are logically attached to a plane and exposed through
a plane property. In some sense, they share the same hierarchy as CRTC and
planes while following a different 'ownership' model.

Given that enabling a CRTC pulls in all its affected planes into the atomic
state, it follows that when a plane is added, its associated colorops are
also included. Otherwise, during modesets or internal commits, colorop state
may be missing from the transaction, resulting in inconsistent or incomplete
state updates.

That said, I do have a concern about potentially inflating the atomic
state by automatically pulling in colorops from the core. It is not
entirely clear to me whether inclusion of affected colorops should be
handled in core, or left to individual drivers.

My understanding of the atomic framework is still evolving, so
I would appreciate feedback from those more familiar with the intended
design direction.

==
Chaitanya

P.S/Background/TL;DR:

I discovered inconsistency with the colorop state while analysing CRC mismatches
in kms_color_pipeline test cases[1]. Visual inspection reveals that while CRC is
being collected degamma block has been reset. This was traced back to the internal
commit that the driver does to disable PSR2 and selective fetch for CRC collection.

crtc_crc_open
    -> intel_crtc_set_crc_source
        -> intel_crtc_crc_setup_workarounds
            -> drm_atomic_commit

During this flow colorop states are never added to the atomic state which in turn
makes intel_plane_color_copy_uapi_to_hw_state() disable the colorops.

If we add the colorops, to the atomic state, the problem still persisted because
while duplicating the colorop state, 'bypass' was getting reset to true.

The two changes made in this series fixes the issue.

[1] https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_18001/shard-mtlp-6/igt@kms_color_pipeline@plane-lut1d.html

Cc: Simon Ser <contact@emersion.fr>
Cc: Alex Hung <alex.hung@amd.com>
Cc: Harry Wentland <harry.wentland@amd.com>
Cc: Daniel Stone <daniels@collabora.com>
Cc: Melissa Wen <mwen@igalia.com>
Cc: Sebastian Wick <sebastian.wick@redhat.com>
Cc: Alex Hung <alex.hung@amd.com>
Cc: Uma Shankar <uma.shankar@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Jani Nikula <jani.nikula@intel.com>
Cc: Louis Chauvet <louis.chauvet@bootlin.com>
Cc: <stable@vger.kernel.org> #v6.19+

Chaitanya Kumar Borah (2):
  drm/colorop: Preserve bypass value in duplicate_state()
  drm/atomic: Add affected colorops with affected planes

 drivers/gpu/drm/drm_atomic.c  | 5 +++++
 drivers/gpu/drm/drm_colorop.c | 2 --
 2 files changed, 5 insertions(+), 2 deletions(-)

-- 
2.25.1


^ permalink raw reply	[flat|nested] 16+ messages in thread

* [PATCH 1/2] drm/colorop: Preserve bypass value in duplicate_state()
  2026-02-18  6:57 [PATCH 0/2] drm/colorop: Keep colorop state consistent across atomic commits Chaitanya Kumar Borah
@ 2026-02-18  6:57 ` Chaitanya Kumar Borah
  2026-02-23 20:33   ` Shankar, Uma
  2026-02-18  6:57 ` [PATCH 2/2] drm/atomic: Add affected colorops with affected planes Chaitanya Kumar Borah
                   ` (7 subsequent siblings)
  8 siblings, 1 reply; 16+ messages in thread
From: Chaitanya Kumar Borah @ 2026-02-18  6:57 UTC (permalink / raw)
  To: dri-devel, intel-gfx, intel-xe
  Cc: contact, alex.hung, harry.wentland, daniels, mwen, sebastian.wick,
	uma.shankar, ville.syrjala, maarten.lankhorst, jani.nikula,
	louis.chauvet, stable, chaitanya.kumar.borah

__drm_atomic_helper_colorop_duplicate_state() unconditionally
sets state->bypass = true after copying the existing state.

This override causes the new atomic state to no longer reflect
the currently committed hardware state. Since the bypass property
directly controls whether the colorop is active in hardware,
resetting it to true can inadvertently disable an active colorop
during a subsequent commit, particularly for internal driver commits
where userspace does not touch the property.

Drop the unconditional assignment and preserve the duplicated
bypass value.

Fixes: 8c5ea1745f4c ("drm/colorop: Add BYPASS property")
Cc: <stable@vger.kernel.org> #v6.19+
Signed-off-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@intel.com>
---
 drivers/gpu/drm/drm_colorop.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/drivers/gpu/drm/drm_colorop.c b/drivers/gpu/drm/drm_colorop.c
index aa19de769eb2..5037efcc3497 100644
--- a/drivers/gpu/drm/drm_colorop.c
+++ b/drivers/gpu/drm/drm_colorop.c
@@ -466,8 +466,6 @@ static void __drm_atomic_helper_colorop_duplicate_state(struct drm_colorop *colo
 
 	if (state->data)
 		drm_property_blob_get(state->data);
-
-	state->bypass = true;
 }
 
 struct drm_colorop_state *
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH 2/2] drm/atomic: Add affected colorops with affected planes
  2026-02-18  6:57 [PATCH 0/2] drm/colorop: Keep colorop state consistent across atomic commits Chaitanya Kumar Borah
  2026-02-18  6:57 ` [PATCH 1/2] drm/colorop: Preserve bypass value in duplicate_state() Chaitanya Kumar Borah
@ 2026-02-18  6:57 ` Chaitanya Kumar Borah
  2026-02-23 20:37   ` Shankar, Uma
  2026-02-18  7:42 ` ✓ CI.KUnit: success for drm/colorop: Keep colorop state consistent across atomic commits Patchwork
                   ` (6 subsequent siblings)
  8 siblings, 1 reply; 16+ messages in thread
From: Chaitanya Kumar Borah @ 2026-02-18  6:57 UTC (permalink / raw)
  To: dri-devel, intel-gfx, intel-xe
  Cc: contact, alex.hung, harry.wentland, daniels, mwen, sebastian.wick,
	uma.shankar, ville.syrjala, maarten.lankhorst, jani.nikula,
	louis.chauvet, stable, chaitanya.kumar.borah

When drm_atomic_add_affected_planes() adds a plane to the atomic
state, the associated colorops are not guaranteed to be included.
This can leave colorop state out of the transaction when planes
are pulled in implicitly (eg. during modeset or internal commits).

Also add affected colorops when adding affected planes to keep
plane and color pipeline state consistent within the atomic
transaction.

Fixes: 2afc3184f3b3 ("drm/plane: Add COLOR PIPELINE property")
Cc: <stable@vger.kernel.org> #v6.19+
Signed-off-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@intel.com>
---
 drivers/gpu/drm/drm_atomic.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
index e3029c8f02e5..8bcd76aaeb6a 100644
--- a/drivers/gpu/drm/drm_atomic.c
+++ b/drivers/gpu/drm/drm_atomic.c
@@ -1588,6 +1588,7 @@ drm_atomic_add_affected_planes(struct drm_atomic_state *state,
 	const struct drm_crtc_state *old_crtc_state =
 		drm_atomic_get_old_crtc_state(state, crtc);
 	struct drm_plane *plane;
+	int ret;
 
 	WARN_ON(!drm_atomic_get_new_crtc_state(state, crtc));
 
@@ -1601,6 +1602,10 @@ drm_atomic_add_affected_planes(struct drm_atomic_state *state,
 
 		if (IS_ERR(plane_state))
 			return PTR_ERR(plane_state);
+
+		ret = drm_atomic_add_affected_colorops(state, plane);
+		if (ret)
+			return ret;
 	}
 	return 0;
 }
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* ✓ CI.KUnit: success for drm/colorop: Keep colorop state consistent across atomic commits
  2026-02-18  6:57 [PATCH 0/2] drm/colorop: Keep colorop state consistent across atomic commits Chaitanya Kumar Borah
  2026-02-18  6:57 ` [PATCH 1/2] drm/colorop: Preserve bypass value in duplicate_state() Chaitanya Kumar Borah
  2026-02-18  6:57 ` [PATCH 2/2] drm/atomic: Add affected colorops with affected planes Chaitanya Kumar Borah
@ 2026-02-18  7:42 ` Patchwork
  2026-02-18  8:15 ` ✓ Xe.CI.BAT: " Patchwork
                   ` (5 subsequent siblings)
  8 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2026-02-18  7:42 UTC (permalink / raw)
  To: Chaitanya Kumar Borah; +Cc: intel-xe

== Series Details ==

Series: drm/colorop: Keep colorop state consistent across atomic commits
URL   : https://patchwork.freedesktop.org/series/161742/
State : success

== Summary ==

+ trap cleanup EXIT
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/xe/.kunitconfig
[07:41:00] Configuring KUnit Kernel ...
Generating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[07:41:04] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=25
[07:41:43] Starting KUnit Kernel (1/1)...
[07:41:43] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[07:41:43] ================== guc_buf (11 subtests) ===================
[07:41:43] [PASSED] test_smallest
[07:41:43] [PASSED] test_largest
[07:41:44] [PASSED] test_granular
[07:41:44] [PASSED] test_unique
[07:41:44] [PASSED] test_overlap
[07:41:44] [PASSED] test_reusable
[07:41:44] [PASSED] test_too_big
[07:41:44] [PASSED] test_flush
[07:41:44] [PASSED] test_lookup
[07:41:44] [PASSED] test_data
[07:41:44] [PASSED] test_class
[07:41:44] ===================== [PASSED] guc_buf =====================
[07:41:44] =================== guc_dbm (7 subtests) ===================
[07:41:44] [PASSED] test_empty
[07:41:44] [PASSED] test_default
[07:41:44] ======================== test_size  ========================
[07:41:44] [PASSED] 4
[07:41:44] [PASSED] 8
[07:41:44] [PASSED] 32
[07:41:44] [PASSED] 256
[07:41:44] ==================== [PASSED] test_size ====================
[07:41:44] ======================= test_reuse  ========================
[07:41:44] [PASSED] 4
[07:41:44] [PASSED] 8
[07:41:44] [PASSED] 32
[07:41:44] [PASSED] 256
[07:41:44] =================== [PASSED] test_reuse ====================
[07:41:44] =================== test_range_overlap  ====================
[07:41:44] [PASSED] 4
[07:41:44] [PASSED] 8
[07:41:44] [PASSED] 32
[07:41:44] [PASSED] 256
[07:41:44] =============== [PASSED] test_range_overlap ================
[07:41:44] =================== test_range_compact  ====================
[07:41:44] [PASSED] 4
[07:41:44] [PASSED] 8
[07:41:44] [PASSED] 32
[07:41:44] [PASSED] 256
[07:41:44] =============== [PASSED] test_range_compact ================
[07:41:44] ==================== test_range_spare  =====================
[07:41:44] [PASSED] 4
[07:41:44] [PASSED] 8
[07:41:44] [PASSED] 32
[07:41:44] [PASSED] 256
[07:41:44] ================ [PASSED] test_range_spare =================
[07:41:44] ===================== [PASSED] guc_dbm =====================
[07:41:44] =================== guc_idm (6 subtests) ===================
[07:41:44] [PASSED] bad_init
[07:41:44] [PASSED] no_init
[07:41:44] [PASSED] init_fini
[07:41:44] [PASSED] check_used
[07:41:44] [PASSED] check_quota
[07:41:44] [PASSED] check_all
[07:41:44] ===================== [PASSED] guc_idm =====================
[07:41:44] ================== no_relay (3 subtests) ===================
[07:41:44] [PASSED] xe_drops_guc2pf_if_not_ready
[07:41:44] [PASSED] xe_drops_guc2vf_if_not_ready
[07:41:44] [PASSED] xe_rejects_send_if_not_ready
[07:41:44] ==================== [PASSED] no_relay =====================
[07:41:44] ================== pf_relay (14 subtests) ==================
[07:41:44] [PASSED] pf_rejects_guc2pf_too_short
[07:41:44] [PASSED] pf_rejects_guc2pf_too_long
[07:41:44] [PASSED] pf_rejects_guc2pf_no_payload
[07:41:44] [PASSED] pf_fails_no_payload
[07:41:44] [PASSED] pf_fails_bad_origin
[07:41:44] [PASSED] pf_fails_bad_type
[07:41:44] [PASSED] pf_txn_reports_error
[07:41:44] [PASSED] pf_txn_sends_pf2guc
[07:41:44] [PASSED] pf_sends_pf2guc
[07:41:44] [SKIPPED] pf_loopback_nop
[07:41:44] [SKIPPED] pf_loopback_echo
[07:41:44] [SKIPPED] pf_loopback_fail
[07:41:44] [SKIPPED] pf_loopback_busy
[07:41:44] [SKIPPED] pf_loopback_retry
[07:41:44] ==================== [PASSED] pf_relay =====================
[07:41:44] ================== vf_relay (3 subtests) ===================
[07:41:44] [PASSED] vf_rejects_guc2vf_too_short
[07:41:44] [PASSED] vf_rejects_guc2vf_too_long
[07:41:44] [PASSED] vf_rejects_guc2vf_no_payload
[07:41:44] ==================== [PASSED] vf_relay =====================
[07:41:44] ================ pf_gt_config (6 subtests) =================
[07:41:44] [PASSED] fair_contexts_1vf
[07:41:44] [PASSED] fair_doorbells_1vf
[07:41:44] [PASSED] fair_ggtt_1vf
[07:41:44] ====================== fair_contexts  ======================
[07:41:44] [PASSED] 1 VF
[07:41:44] [PASSED] 2 VFs
[07:41:44] [PASSED] 3 VFs
[07:41:44] [PASSED] 4 VFs
[07:41:44] [PASSED] 5 VFs
[07:41:44] [PASSED] 6 VFs
[07:41:44] [PASSED] 7 VFs
[07:41:44] [PASSED] 8 VFs
[07:41:44] [PASSED] 9 VFs
[07:41:44] [PASSED] 10 VFs
[07:41:44] [PASSED] 11 VFs
[07:41:44] [PASSED] 12 VFs
[07:41:44] [PASSED] 13 VFs
[07:41:44] [PASSED] 14 VFs
[07:41:44] [PASSED] 15 VFs
[07:41:44] [PASSED] 16 VFs
[07:41:44] [PASSED] 17 VFs
[07:41:44] [PASSED] 18 VFs
[07:41:44] [PASSED] 19 VFs
[07:41:44] [PASSED] 20 VFs
[07:41:44] [PASSED] 21 VFs
[07:41:44] [PASSED] 22 VFs
[07:41:44] [PASSED] 23 VFs
[07:41:44] [PASSED] 24 VFs
[07:41:44] [PASSED] 25 VFs
[07:41:44] [PASSED] 26 VFs
[07:41:44] [PASSED] 27 VFs
[07:41:44] [PASSED] 28 VFs
[07:41:44] [PASSED] 29 VFs
[07:41:44] [PASSED] 30 VFs
[07:41:44] [PASSED] 31 VFs
[07:41:44] [PASSED] 32 VFs
[07:41:44] [PASSED] 33 VFs
[07:41:44] [PASSED] 34 VFs
[07:41:44] [PASSED] 35 VFs
[07:41:44] [PASSED] 36 VFs
[07:41:44] [PASSED] 37 VFs
[07:41:44] [PASSED] 38 VFs
[07:41:44] [PASSED] 39 VFs
[07:41:44] [PASSED] 40 VFs
[07:41:44] [PASSED] 41 VFs
[07:41:44] [PASSED] 42 VFs
[07:41:44] [PASSED] 43 VFs
[07:41:44] [PASSED] 44 VFs
[07:41:44] [PASSED] 45 VFs
[07:41:44] [PASSED] 46 VFs
[07:41:44] [PASSED] 47 VFs
[07:41:44] [PASSED] 48 VFs
[07:41:44] [PASSED] 49 VFs
[07:41:44] [PASSED] 50 VFs
[07:41:44] [PASSED] 51 VFs
[07:41:44] [PASSED] 52 VFs
[07:41:44] [PASSED] 53 VFs
[07:41:44] [PASSED] 54 VFs
[07:41:44] [PASSED] 55 VFs
[07:41:44] [PASSED] 56 VFs
[07:41:44] [PASSED] 57 VFs
[07:41:44] [PASSED] 58 VFs
[07:41:44] [PASSED] 59 VFs
[07:41:44] [PASSED] 60 VFs
[07:41:44] [PASSED] 61 VFs
[07:41:44] [PASSED] 62 VFs
[07:41:44] [PASSED] 63 VFs
[07:41:44] ================== [PASSED] fair_contexts ==================
[07:41:44] ===================== fair_doorbells  ======================
[07:41:44] [PASSED] 1 VF
[07:41:44] [PASSED] 2 VFs
[07:41:44] [PASSED] 3 VFs
[07:41:44] [PASSED] 4 VFs
[07:41:44] [PASSED] 5 VFs
[07:41:44] [PASSED] 6 VFs
[07:41:44] [PASSED] 7 VFs
[07:41:44] [PASSED] 8 VFs
[07:41:44] [PASSED] 9 VFs
[07:41:44] [PASSED] 10 VFs
[07:41:44] [PASSED] 11 VFs
[07:41:44] [PASSED] 12 VFs
[07:41:44] [PASSED] 13 VFs
[07:41:44] [PASSED] 14 VFs
[07:41:44] [PASSED] 15 VFs
[07:41:44] [PASSED] 16 VFs
[07:41:44] [PASSED] 17 VFs
[07:41:44] [PASSED] 18 VFs
[07:41:44] [PASSED] 19 VFs
[07:41:44] [PASSED] 20 VFs
[07:41:44] [PASSED] 21 VFs
[07:41:44] [PASSED] 22 VFs
[07:41:44] [PASSED] 23 VFs
[07:41:44] [PASSED] 24 VFs
[07:41:44] [PASSED] 25 VFs
[07:41:44] [PASSED] 26 VFs
[07:41:44] [PASSED] 27 VFs
[07:41:44] [PASSED] 28 VFs
[07:41:44] [PASSED] 29 VFs
[07:41:44] [PASSED] 30 VFs
[07:41:44] [PASSED] 31 VFs
[07:41:44] [PASSED] 32 VFs
[07:41:44] [PASSED] 33 VFs
[07:41:44] [PASSED] 34 VFs
[07:41:44] [PASSED] 35 VFs
[07:41:44] [PASSED] 36 VFs
[07:41:44] [PASSED] 37 VFs
[07:41:44] [PASSED] 38 VFs
[07:41:44] [PASSED] 39 VFs
[07:41:44] [PASSED] 40 VFs
[07:41:44] [PASSED] 41 VFs
[07:41:44] [PASSED] 42 VFs
[07:41:44] [PASSED] 43 VFs
[07:41:44] [PASSED] 44 VFs
[07:41:44] [PASSED] 45 VFs
[07:41:44] [PASSED] 46 VFs
[07:41:44] [PASSED] 47 VFs
[07:41:44] [PASSED] 48 VFs
[07:41:44] [PASSED] 49 VFs
[07:41:44] [PASSED] 50 VFs
[07:41:44] [PASSED] 51 VFs
[07:41:44] [PASSED] 52 VFs
[07:41:44] [PASSED] 53 VFs
[07:41:44] [PASSED] 54 VFs
[07:41:44] [PASSED] 55 VFs
[07:41:44] [PASSED] 56 VFs
[07:41:44] [PASSED] 57 VFs
[07:41:44] [PASSED] 58 VFs
[07:41:44] [PASSED] 59 VFs
[07:41:44] [PASSED] 60 VFs
[07:41:44] [PASSED] 61 VFs
[07:41:44] [PASSED] 62 VFs
[07:41:44] [PASSED] 63 VFs
[07:41:44] ================= [PASSED] fair_doorbells ==================
[07:41:44] ======================== fair_ggtt  ========================
[07:41:44] [PASSED] 1 VF
[07:41:44] [PASSED] 2 VFs
[07:41:44] [PASSED] 3 VFs
[07:41:44] [PASSED] 4 VFs
[07:41:44] [PASSED] 5 VFs
[07:41:44] [PASSED] 6 VFs
[07:41:44] [PASSED] 7 VFs
[07:41:44] [PASSED] 8 VFs
[07:41:44] [PASSED] 9 VFs
[07:41:44] [PASSED] 10 VFs
[07:41:44] [PASSED] 11 VFs
[07:41:44] [PASSED] 12 VFs
[07:41:44] [PASSED] 13 VFs
[07:41:44] [PASSED] 14 VFs
[07:41:44] [PASSED] 15 VFs
[07:41:44] [PASSED] 16 VFs
[07:41:44] [PASSED] 17 VFs
[07:41:44] [PASSED] 18 VFs
[07:41:44] [PASSED] 19 VFs
[07:41:44] [PASSED] 20 VFs
[07:41:44] [PASSED] 21 VFs
[07:41:44] [PASSED] 22 VFs
[07:41:44] [PASSED] 23 VFs
[07:41:44] [PASSED] 24 VFs
[07:41:44] [PASSED] 25 VFs
[07:41:44] [PASSED] 26 VFs
[07:41:44] [PASSED] 27 VFs
[07:41:44] [PASSED] 28 VFs
[07:41:44] [PASSED] 29 VFs
[07:41:44] [PASSED] 30 VFs
[07:41:44] [PASSED] 31 VFs
[07:41:44] [PASSED] 32 VFs
[07:41:44] [PASSED] 33 VFs
[07:41:44] [PASSED] 34 VFs
[07:41:44] [PASSED] 35 VFs
[07:41:44] [PASSED] 36 VFs
[07:41:44] [PASSED] 37 VFs
[07:41:44] [PASSED] 38 VFs
[07:41:44] [PASSED] 39 VFs
[07:41:44] [PASSED] 40 VFs
[07:41:44] [PASSED] 41 VFs
[07:41:44] [PASSED] 42 VFs
[07:41:44] [PASSED] 43 VFs
[07:41:44] [PASSED] 44 VFs
[07:41:44] [PASSED] 45 VFs
[07:41:44] [PASSED] 46 VFs
[07:41:44] [PASSED] 47 VFs
[07:41:44] [PASSED] 48 VFs
[07:41:44] [PASSED] 49 VFs
[07:41:44] [PASSED] 50 VFs
[07:41:44] [PASSED] 51 VFs
[07:41:44] [PASSED] 52 VFs
[07:41:44] [PASSED] 53 VFs
[07:41:44] [PASSED] 54 VFs
[07:41:44] [PASSED] 55 VFs
[07:41:44] [PASSED] 56 VFs
[07:41:44] [PASSED] 57 VFs
[07:41:44] [PASSED] 58 VFs
[07:41:44] [PASSED] 59 VFs
[07:41:44] [PASSED] 60 VFs
[07:41:44] [PASSED] 61 VFs
[07:41:44] [PASSED] 62 VFs
[07:41:44] [PASSED] 63 VFs
[07:41:44] ==================== [PASSED] fair_ggtt ====================
[07:41:44] ================== [PASSED] pf_gt_config ===================
[07:41:44] ===================== lmtt (1 subtest) =====================
[07:41:44] ======================== test_ops  =========================
[07:41:44] [PASSED] 2-level
[07:41:44] [PASSED] multi-level
[07:41:44] ==================== [PASSED] test_ops =====================
[07:41:44] ====================== [PASSED] lmtt =======================
[07:41:44] ================= pf_service (11 subtests) =================
[07:41:44] [PASSED] pf_negotiate_any
[07:41:44] [PASSED] pf_negotiate_base_match
[07:41:44] [PASSED] pf_negotiate_base_newer
[07:41:44] [PASSED] pf_negotiate_base_next
[07:41:44] [SKIPPED] pf_negotiate_base_older
[07:41:44] [PASSED] pf_negotiate_base_prev
[07:41:44] [PASSED] pf_negotiate_latest_match
[07:41:44] [PASSED] pf_negotiate_latest_newer
[07:41:44] [PASSED] pf_negotiate_latest_next
[07:41:44] [SKIPPED] pf_negotiate_latest_older
[07:41:44] [SKIPPED] pf_negotiate_latest_prev
[07:41:44] =================== [PASSED] pf_service ====================
[07:41:44] ================= xe_guc_g2g (2 subtests) ==================
[07:41:44] ============== xe_live_guc_g2g_kunit_default  ==============
[07:41:44] ========= [SKIPPED] xe_live_guc_g2g_kunit_default ==========
[07:41:44] ============== xe_live_guc_g2g_kunit_allmem  ===============
[07:41:44] ========== [SKIPPED] xe_live_guc_g2g_kunit_allmem ==========
[07:41:44] =================== [SKIPPED] xe_guc_g2g ===================
[07:41:44] =================== xe_mocs (2 subtests) ===================
[07:41:44] ================ xe_live_mocs_kernel_kunit  ================
[07:41:44] =========== [SKIPPED] xe_live_mocs_kernel_kunit ============
[07:41:44] ================ xe_live_mocs_reset_kunit  =================
[07:41:44] ============ [SKIPPED] xe_live_mocs_reset_kunit ============
[07:41:44] ==================== [SKIPPED] xe_mocs =====================
[07:41:44] ================= xe_migrate (2 subtests) ==================
[07:41:44] ================= xe_migrate_sanity_kunit  =================
[07:41:44] ============ [SKIPPED] xe_migrate_sanity_kunit =============
[07:41:44] ================== xe_validate_ccs_kunit  ==================
[07:41:44] ============= [SKIPPED] xe_validate_ccs_kunit ==============
[07:41:44] =================== [SKIPPED] xe_migrate ===================
[07:41:44] ================== xe_dma_buf (1 subtest) ==================
[07:41:44] ==================== xe_dma_buf_kunit  =====================
[07:41:44] ================ [SKIPPED] xe_dma_buf_kunit ================
[07:41:44] =================== [SKIPPED] xe_dma_buf ===================
[07:41:44] ================= xe_bo_shrink (1 subtest) =================
[07:41:44] =================== xe_bo_shrink_kunit  ====================
[07:41:44] =============== [SKIPPED] xe_bo_shrink_kunit ===============
[07:41:44] ================== [SKIPPED] xe_bo_shrink ==================
[07:41:44] ==================== xe_bo (2 subtests) ====================
[07:41:44] ================== xe_ccs_migrate_kunit  ===================
[07:41:44] ============== [SKIPPED] xe_ccs_migrate_kunit ==============
[07:41:44] ==================== xe_bo_evict_kunit  ====================
[07:41:44] =============== [SKIPPED] xe_bo_evict_kunit ================
[07:41:44] ===================== [SKIPPED] xe_bo ======================
[07:41:44] ==================== args (13 subtests) ====================
[07:41:44] [PASSED] count_args_test
[07:41:44] [PASSED] call_args_example
[07:41:44] [PASSED] call_args_test
[07:41:44] [PASSED] drop_first_arg_example
[07:41:44] [PASSED] drop_first_arg_test
[07:41:44] [PASSED] first_arg_example
[07:41:44] [PASSED] first_arg_test
[07:41:44] [PASSED] last_arg_example
[07:41:44] [PASSED] last_arg_test
[07:41:44] [PASSED] pick_arg_example
[07:41:44] [PASSED] if_args_example
[07:41:44] [PASSED] if_args_test
[07:41:44] [PASSED] sep_comma_example
[07:41:44] ====================== [PASSED] args =======================
[07:41:44] =================== xe_pci (3 subtests) ====================
[07:41:44] ==================== check_graphics_ip  ====================
[07:41:44] [PASSED] 12.00 Xe_LP
[07:41:44] [PASSED] 12.10 Xe_LP+
[07:41:44] [PASSED] 12.55 Xe_HPG
[07:41:44] [PASSED] 12.60 Xe_HPC
[07:41:44] [PASSED] 12.70 Xe_LPG
[07:41:44] [PASSED] 12.71 Xe_LPG
[07:41:44] [PASSED] 12.74 Xe_LPG+
[07:41:44] [PASSED] 20.01 Xe2_HPG
[07:41:44] [PASSED] 20.02 Xe2_HPG
[07:41:44] [PASSED] 20.04 Xe2_LPG
[07:41:44] [PASSED] 30.00 Xe3_LPG
[07:41:44] [PASSED] 30.01 Xe3_LPG
[07:41:44] [PASSED] 30.03 Xe3_LPG
[07:41:44] [PASSED] 30.04 Xe3_LPG
[07:41:44] [PASSED] 30.05 Xe3_LPG
[07:41:44] [PASSED] 35.10 Xe3p_LPG
[07:41:44] [PASSED] 35.11 Xe3p_XPC
[07:41:44] ================ [PASSED] check_graphics_ip ================
[07:41:44] ===================== check_media_ip  ======================
[07:41:44] [PASSED] 12.00 Xe_M
[07:41:44] [PASSED] 12.55 Xe_HPM
[07:41:44] [PASSED] 13.00 Xe_LPM+
[07:41:44] [PASSED] 13.01 Xe2_HPM
[07:41:44] [PASSED] 20.00 Xe2_LPM
[07:41:44] [PASSED] 30.00 Xe3_LPM
[07:41:44] [PASSED] 30.02 Xe3_LPM
[07:41:44] [PASSED] 35.00 Xe3p_LPM
[07:41:44] [PASSED] 35.03 Xe3p_HPM
[07:41:44] ================= [PASSED] check_media_ip ==================
[07:41:44] =================== check_platform_desc  ===================
[07:41:44] [PASSED] 0x9A60 (TIGERLAKE)
[07:41:44] [PASSED] 0x9A68 (TIGERLAKE)
[07:41:44] [PASSED] 0x9A70 (TIGERLAKE)
[07:41:44] [PASSED] 0x9A40 (TIGERLAKE)
[07:41:44] [PASSED] 0x9A49 (TIGERLAKE)
[07:41:44] [PASSED] 0x9A59 (TIGERLAKE)
[07:41:44] [PASSED] 0x9A78 (TIGERLAKE)
[07:41:44] [PASSED] 0x9AC0 (TIGERLAKE)
[07:41:44] [PASSED] 0x9AC9 (TIGERLAKE)
[07:41:44] [PASSED] 0x9AD9 (TIGERLAKE)
[07:41:44] [PASSED] 0x9AF8 (TIGERLAKE)
[07:41:44] [PASSED] 0x4C80 (ROCKETLAKE)
[07:41:44] [PASSED] 0x4C8A (ROCKETLAKE)
[07:41:44] [PASSED] 0x4C8B (ROCKETLAKE)
[07:41:44] [PASSED] 0x4C8C (ROCKETLAKE)
[07:41:44] [PASSED] 0x4C90 (ROCKETLAKE)
[07:41:44] [PASSED] 0x4C9A (ROCKETLAKE)
[07:41:44] [PASSED] 0x4680 (ALDERLAKE_S)
[07:41:44] [PASSED] 0x4682 (ALDERLAKE_S)
[07:41:44] [PASSED] 0x4688 (ALDERLAKE_S)
[07:41:44] [PASSED] 0x468A (ALDERLAKE_S)
[07:41:44] [PASSED] 0x468B (ALDERLAKE_S)
[07:41:44] [PASSED] 0x4690 (ALDERLAKE_S)
[07:41:44] [PASSED] 0x4692 (ALDERLAKE_S)
[07:41:44] [PASSED] 0x4693 (ALDERLAKE_S)
[07:41:44] [PASSED] 0x46A0 (ALDERLAKE_P)
[07:41:44] [PASSED] 0x46A1 (ALDERLAKE_P)
[07:41:44] [PASSED] 0x46A2 (ALDERLAKE_P)
[07:41:44] [PASSED] 0x46A3 (ALDERLAKE_P)
[07:41:44] [PASSED] 0x46A6 (ALDERLAKE_P)
[07:41:44] [PASSED] 0x46A8 (ALDERLAKE_P)
[07:41:44] [PASSED] 0x46AA (ALDERLAKE_P)
[07:41:44] [PASSED] 0x462A (ALDERLAKE_P)
[07:41:44] [PASSED] 0x4626 (ALDERLAKE_P)
stty: 'standard input': Inappropriate ioctl for device
[07:41:44] [PASSED] 0x4628 (ALDERLAKE_P)
[07:41:44] [PASSED] 0x46B0 (ALDERLAKE_P)
[07:41:44] [PASSED] 0x46B1 (ALDERLAKE_P)
[07:41:44] [PASSED] 0x46B2 (ALDERLAKE_P)
[07:41:44] [PASSED] 0x46B3 (ALDERLAKE_P)
[07:41:44] [PASSED] 0x46C0 (ALDERLAKE_P)
[07:41:44] [PASSED] 0x46C1 (ALDERLAKE_P)
[07:41:44] [PASSED] 0x46C2 (ALDERLAKE_P)
[07:41:44] [PASSED] 0x46C3 (ALDERLAKE_P)
[07:41:44] [PASSED] 0x46D0 (ALDERLAKE_N)
[07:41:44] [PASSED] 0x46D1 (ALDERLAKE_N)
[07:41:44] [PASSED] 0x46D2 (ALDERLAKE_N)
[07:41:44] [PASSED] 0x46D3 (ALDERLAKE_N)
[07:41:44] [PASSED] 0x46D4 (ALDERLAKE_N)
[07:41:44] [PASSED] 0xA721 (ALDERLAKE_P)
[07:41:44] [PASSED] 0xA7A1 (ALDERLAKE_P)
[07:41:44] [PASSED] 0xA7A9 (ALDERLAKE_P)
[07:41:44] [PASSED] 0xA7AC (ALDERLAKE_P)
[07:41:44] [PASSED] 0xA7AD (ALDERLAKE_P)
[07:41:44] [PASSED] 0xA720 (ALDERLAKE_P)
[07:41:44] [PASSED] 0xA7A0 (ALDERLAKE_P)
[07:41:44] [PASSED] 0xA7A8 (ALDERLAKE_P)
[07:41:44] [PASSED] 0xA7AA (ALDERLAKE_P)
[07:41:44] [PASSED] 0xA7AB (ALDERLAKE_P)
[07:41:44] [PASSED] 0xA780 (ALDERLAKE_S)
[07:41:44] [PASSED] 0xA781 (ALDERLAKE_S)
[07:41:44] [PASSED] 0xA782 (ALDERLAKE_S)
[07:41:44] [PASSED] 0xA783 (ALDERLAKE_S)
[07:41:44] [PASSED] 0xA788 (ALDERLAKE_S)
[07:41:44] [PASSED] 0xA789 (ALDERLAKE_S)
[07:41:44] [PASSED] 0xA78A (ALDERLAKE_S)
[07:41:44] [PASSED] 0xA78B (ALDERLAKE_S)
[07:41:44] [PASSED] 0x4905 (DG1)
[07:41:44] [PASSED] 0x4906 (DG1)
[07:41:44] [PASSED] 0x4907 (DG1)
[07:41:44] [PASSED] 0x4908 (DG1)
[07:41:44] [PASSED] 0x4909 (DG1)
[07:41:44] [PASSED] 0x56C0 (DG2)
[07:41:44] [PASSED] 0x56C2 (DG2)
[07:41:44] [PASSED] 0x56C1 (DG2)
[07:41:44] [PASSED] 0x7D51 (METEORLAKE)
[07:41:44] [PASSED] 0x7DD1 (METEORLAKE)
[07:41:44] [PASSED] 0x7D41 (METEORLAKE)
[07:41:44] [PASSED] 0x7D67 (METEORLAKE)
[07:41:44] [PASSED] 0xB640 (METEORLAKE)
[07:41:44] [PASSED] 0x56A0 (DG2)
[07:41:44] [PASSED] 0x56A1 (DG2)
[07:41:44] [PASSED] 0x56A2 (DG2)
[07:41:44] [PASSED] 0x56BE (DG2)
[07:41:44] [PASSED] 0x56BF (DG2)
[07:41:44] [PASSED] 0x5690 (DG2)
[07:41:44] [PASSED] 0x5691 (DG2)
[07:41:44] [PASSED] 0x5692 (DG2)
[07:41:44] [PASSED] 0x56A5 (DG2)
[07:41:44] [PASSED] 0x56A6 (DG2)
[07:41:44] [PASSED] 0x56B0 (DG2)
[07:41:44] [PASSED] 0x56B1 (DG2)
[07:41:44] [PASSED] 0x56BA (DG2)
[07:41:44] [PASSED] 0x56BB (DG2)
[07:41:44] [PASSED] 0x56BC (DG2)
[07:41:44] [PASSED] 0x56BD (DG2)
[07:41:44] [PASSED] 0x5693 (DG2)
[07:41:44] [PASSED] 0x5694 (DG2)
[07:41:44] [PASSED] 0x5695 (DG2)
[07:41:44] [PASSED] 0x56A3 (DG2)
[07:41:44] [PASSED] 0x56A4 (DG2)
[07:41:44] [PASSED] 0x56B2 (DG2)
[07:41:44] [PASSED] 0x56B3 (DG2)
[07:41:44] [PASSED] 0x5696 (DG2)
[07:41:44] [PASSED] 0x5697 (DG2)
[07:41:44] [PASSED] 0xB69 (PVC)
[07:41:44] [PASSED] 0xB6E (PVC)
[07:41:44] [PASSED] 0xBD4 (PVC)
[07:41:44] [PASSED] 0xBD5 (PVC)
[07:41:44] [PASSED] 0xBD6 (PVC)
[07:41:44] [PASSED] 0xBD7 (PVC)
[07:41:44] [PASSED] 0xBD8 (PVC)
[07:41:44] [PASSED] 0xBD9 (PVC)
[07:41:44] [PASSED] 0xBDA (PVC)
[07:41:44] [PASSED] 0xBDB (PVC)
[07:41:44] [PASSED] 0xBE0 (PVC)
[07:41:44] [PASSED] 0xBE1 (PVC)
[07:41:44] [PASSED] 0xBE5 (PVC)
[07:41:44] [PASSED] 0x7D40 (METEORLAKE)
[07:41:44] [PASSED] 0x7D45 (METEORLAKE)
[07:41:44] [PASSED] 0x7D55 (METEORLAKE)
[07:41:44] [PASSED] 0x7D60 (METEORLAKE)
[07:41:44] [PASSED] 0x7DD5 (METEORLAKE)
[07:41:44] [PASSED] 0x6420 (LUNARLAKE)
[07:41:44] [PASSED] 0x64A0 (LUNARLAKE)
[07:41:44] [PASSED] 0x64B0 (LUNARLAKE)
[07:41:44] [PASSED] 0xE202 (BATTLEMAGE)
[07:41:44] [PASSED] 0xE209 (BATTLEMAGE)
[07:41:44] [PASSED] 0xE20B (BATTLEMAGE)
[07:41:44] [PASSED] 0xE20C (BATTLEMAGE)
[07:41:44] [PASSED] 0xE20D (BATTLEMAGE)
[07:41:44] [PASSED] 0xE210 (BATTLEMAGE)
[07:41:44] [PASSED] 0xE211 (BATTLEMAGE)
[07:41:44] [PASSED] 0xE212 (BATTLEMAGE)
[07:41:44] [PASSED] 0xE216 (BATTLEMAGE)
[07:41:44] [PASSED] 0xE220 (BATTLEMAGE)
[07:41:44] [PASSED] 0xE221 (BATTLEMAGE)
[07:41:44] [PASSED] 0xE222 (BATTLEMAGE)
[07:41:44] [PASSED] 0xE223 (BATTLEMAGE)
[07:41:44] [PASSED] 0xB080 (PANTHERLAKE)
[07:41:44] [PASSED] 0xB081 (PANTHERLAKE)
[07:41:44] [PASSED] 0xB082 (PANTHERLAKE)
[07:41:44] [PASSED] 0xB083 (PANTHERLAKE)
[07:41:44] [PASSED] 0xB084 (PANTHERLAKE)
[07:41:44] [PASSED] 0xB085 (PANTHERLAKE)
[07:41:44] [PASSED] 0xB086 (PANTHERLAKE)
[07:41:44] [PASSED] 0xB087 (PANTHERLAKE)
[07:41:44] [PASSED] 0xB08F (PANTHERLAKE)
[07:41:44] [PASSED] 0xB090 (PANTHERLAKE)
[07:41:44] [PASSED] 0xB0A0 (PANTHERLAKE)
[07:41:44] [PASSED] 0xB0B0 (PANTHERLAKE)
[07:41:44] [PASSED] 0xFD80 (PANTHERLAKE)
[07:41:44] [PASSED] 0xFD81 (PANTHERLAKE)
[07:41:44] [PASSED] 0xD740 (NOVALAKE_S)
[07:41:44] [PASSED] 0xD741 (NOVALAKE_S)
[07:41:44] [PASSED] 0xD742 (NOVALAKE_S)
[07:41:44] [PASSED] 0xD743 (NOVALAKE_S)
[07:41:44] [PASSED] 0xD744 (NOVALAKE_S)
[07:41:44] [PASSED] 0xD745 (NOVALAKE_S)
[07:41:44] [PASSED] 0x674C (CRESCENTISLAND)
[07:41:44] [PASSED] 0xD750 (NOVALAKE_P)
[07:41:44] [PASSED] 0xD751 (NOVALAKE_P)
[07:41:44] [PASSED] 0xD752 (NOVALAKE_P)
[07:41:44] [PASSED] 0xD753 (NOVALAKE_P)
[07:41:44] [PASSED] 0xD754 (NOVALAKE_P)
[07:41:44] [PASSED] 0xD755 (NOVALAKE_P)
[07:41:44] [PASSED] 0xD756 (NOVALAKE_P)
[07:41:44] [PASSED] 0xD757 (NOVALAKE_P)
[07:41:44] [PASSED] 0xD75F (NOVALAKE_P)
[07:41:44] =============== [PASSED] check_platform_desc ===============
[07:41:44] ===================== [PASSED] xe_pci ======================
[07:41:44] =================== xe_rtp (2 subtests) ====================
[07:41:44] =============== xe_rtp_process_to_sr_tests  ================
[07:41:44] [PASSED] coalesce-same-reg
[07:41:44] [PASSED] no-match-no-add
[07:41:44] [PASSED] match-or
[07:41:44] [PASSED] match-or-xfail
[07:41:44] [PASSED] no-match-no-add-multiple-rules
[07:41:44] [PASSED] two-regs-two-entries
[07:41:44] [PASSED] clr-one-set-other
[07:41:44] [PASSED] set-field
[07:41:44] [PASSED] conflict-duplicate
[07:41:44] [PASSED] conflict-not-disjoint
[07:41:44] [PASSED] conflict-reg-type
[07:41:44] =========== [PASSED] xe_rtp_process_to_sr_tests ============
[07:41:44] ================== xe_rtp_process_tests  ===================
[07:41:44] [PASSED] active1
[07:41:44] [PASSED] active2
[07:41:44] [PASSED] active-inactive
[07:41:44] [PASSED] inactive-active
[07:41:44] [PASSED] inactive-1st_or_active-inactive
[07:41:44] [PASSED] inactive-2nd_or_active-inactive
[07:41:44] [PASSED] inactive-last_or_active-inactive
[07:41:44] [PASSED] inactive-no_or_active-inactive
[07:41:44] ============== [PASSED] xe_rtp_process_tests ===============
[07:41:44] ===================== [PASSED] xe_rtp ======================
[07:41:44] ==================== xe_wa (1 subtest) =====================
[07:41:44] ======================== xe_wa_gt  =========================
[07:41:44] [PASSED] TIGERLAKE B0
[07:41:44] [PASSED] DG1 A0
[07:41:44] [PASSED] DG1 B0
[07:41:44] [PASSED] ALDERLAKE_S A0
[07:41:44] [PASSED] ALDERLAKE_S B0
[07:41:44] [PASSED] ALDERLAKE_S C0
[07:41:44] [PASSED] ALDERLAKE_S D0
[07:41:44] [PASSED] ALDERLAKE_P A0
[07:41:44] [PASSED] ALDERLAKE_P B0
[07:41:44] [PASSED] ALDERLAKE_P C0
[07:41:44] [PASSED] ALDERLAKE_S RPLS D0
[07:41:44] [PASSED] ALDERLAKE_P RPLU E0
[07:41:44] [PASSED] DG2 G10 C0
[07:41:44] [PASSED] DG2 G11 B1
[07:41:44] [PASSED] DG2 G12 A1
[07:41:44] [PASSED] METEORLAKE 12.70(Xe_LPG) A0 13.00(Xe_LPM+) A0
[07:41:44] [PASSED] METEORLAKE 12.71(Xe_LPG) A0 13.00(Xe_LPM+) A0
[07:41:44] [PASSED] METEORLAKE 12.74(Xe_LPG+) A0 13.00(Xe_LPM+) A0
[07:41:44] [PASSED] LUNARLAKE 20.04(Xe2_LPG) A0 20.00(Xe2_LPM) A0
[07:41:44] [PASSED] LUNARLAKE 20.04(Xe2_LPG) B0 20.00(Xe2_LPM) A0
[07:41:44] [PASSED] BATTLEMAGE 20.01(Xe2_HPG) A0 13.01(Xe2_HPM) A1
[07:41:44] [PASSED] PANTHERLAKE 30.00(Xe3_LPG) A0 30.00(Xe3_LPM) A0
[07:41:44] ==================== [PASSED] xe_wa_gt =====================
[07:41:44] ====================== [PASSED] xe_wa ======================
[07:41:44] ============================================================
[07:41:44] Testing complete. Ran 522 tests: passed: 504, skipped: 18
[07:41:44] Elapsed time: 43.614s total, 4.296s configuring, 38.801s building, 0.474s running

+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/tests/.kunitconfig
[07:41:44] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[07:41:46] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=25
[07:42:16] Starting KUnit Kernel (1/1)...
[07:42:16] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[07:42:16] ============ drm_test_pick_cmdline (2 subtests) ============
[07:42:16] [PASSED] drm_test_pick_cmdline_res_1920_1080_60
[07:42:16] =============== drm_test_pick_cmdline_named  ===============
[07:42:16] [PASSED] NTSC
[07:42:16] [PASSED] NTSC-J
[07:42:16] [PASSED] PAL
[07:42:16] [PASSED] PAL-M
[07:42:16] =========== [PASSED] drm_test_pick_cmdline_named ===========
[07:42:16] ============== [PASSED] drm_test_pick_cmdline ==============
[07:42:16] == drm_test_atomic_get_connector_for_encoder (1 subtest) ===
[07:42:16] [PASSED] drm_test_drm_atomic_get_connector_for_encoder
[07:42:16] ==== [PASSED] drm_test_atomic_get_connector_for_encoder ====
[07:42:16] =========== drm_validate_clone_mode (2 subtests) ===========
[07:42:16] ============== drm_test_check_in_clone_mode  ===============
[07:42:16] [PASSED] in_clone_mode
[07:42:16] [PASSED] not_in_clone_mode
[07:42:16] ========== [PASSED] drm_test_check_in_clone_mode ===========
[07:42:16] =============== drm_test_check_valid_clones  ===============
[07:42:16] [PASSED] not_in_clone_mode
[07:42:16] [PASSED] valid_clone
[07:42:16] [PASSED] invalid_clone
[07:42:16] =========== [PASSED] drm_test_check_valid_clones ===========
[07:42:16] ============= [PASSED] drm_validate_clone_mode =============
[07:42:16] ============= drm_validate_modeset (1 subtest) =============
[07:42:16] [PASSED] drm_test_check_connector_changed_modeset
[07:42:16] ============== [PASSED] drm_validate_modeset ===============
[07:42:16] ====== drm_test_bridge_get_current_state (2 subtests) ======
[07:42:16] [PASSED] drm_test_drm_bridge_get_current_state_atomic
[07:42:16] [PASSED] drm_test_drm_bridge_get_current_state_legacy
[07:42:16] ======== [PASSED] drm_test_bridge_get_current_state ========
[07:42:16] ====== drm_test_bridge_helper_reset_crtc (3 subtests) ======
[07:42:16] [PASSED] drm_test_drm_bridge_helper_reset_crtc_atomic
[07:42:16] [PASSED] drm_test_drm_bridge_helper_reset_crtc_atomic_disabled
[07:42:16] [PASSED] drm_test_drm_bridge_helper_reset_crtc_legacy
[07:42:16] ======== [PASSED] drm_test_bridge_helper_reset_crtc ========
[07:42:16] ============== drm_bridge_alloc (2 subtests) ===============
[07:42:16] [PASSED] drm_test_drm_bridge_alloc_basic
[07:42:16] [PASSED] drm_test_drm_bridge_alloc_get_put
[07:42:16] ================ [PASSED] drm_bridge_alloc =================
[07:42:16] ============= drm_cmdline_parser (40 subtests) =============
[07:42:16] [PASSED] drm_test_cmdline_force_d_only
[07:42:16] [PASSED] drm_test_cmdline_force_D_only_dvi
[07:42:16] [PASSED] drm_test_cmdline_force_D_only_hdmi
[07:42:16] [PASSED] drm_test_cmdline_force_D_only_not_digital
[07:42:16] [PASSED] drm_test_cmdline_force_e_only
[07:42:16] [PASSED] drm_test_cmdline_res
[07:42:16] [PASSED] drm_test_cmdline_res_vesa
[07:42:16] [PASSED] drm_test_cmdline_res_vesa_rblank
[07:42:16] [PASSED] drm_test_cmdline_res_rblank
[07:42:16] [PASSED] drm_test_cmdline_res_bpp
[07:42:16] [PASSED] drm_test_cmdline_res_refresh
[07:42:16] [PASSED] drm_test_cmdline_res_bpp_refresh
[07:42:16] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced
[07:42:16] [PASSED] drm_test_cmdline_res_bpp_refresh_margins
[07:42:16] [PASSED] drm_test_cmdline_res_bpp_refresh_force_off
[07:42:16] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on
[07:42:16] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_analog
[07:42:16] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_digital
[07:42:16] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced_margins_force_on
[07:42:16] [PASSED] drm_test_cmdline_res_margins_force_on
[07:42:16] [PASSED] drm_test_cmdline_res_vesa_margins
[07:42:16] [PASSED] drm_test_cmdline_name
[07:42:16] [PASSED] drm_test_cmdline_name_bpp
[07:42:16] [PASSED] drm_test_cmdline_name_option
[07:42:16] [PASSED] drm_test_cmdline_name_bpp_option
[07:42:16] [PASSED] drm_test_cmdline_rotate_0
[07:42:16] [PASSED] drm_test_cmdline_rotate_90
[07:42:16] [PASSED] drm_test_cmdline_rotate_180
[07:42:16] [PASSED] drm_test_cmdline_rotate_270
[07:42:16] [PASSED] drm_test_cmdline_hmirror
[07:42:16] [PASSED] drm_test_cmdline_vmirror
[07:42:16] [PASSED] drm_test_cmdline_margin_options
[07:42:16] [PASSED] drm_test_cmdline_multiple_options
[07:42:16] [PASSED] drm_test_cmdline_bpp_extra_and_option
[07:42:16] [PASSED] drm_test_cmdline_extra_and_option
[07:42:16] [PASSED] drm_test_cmdline_freestanding_options
[07:42:16] [PASSED] drm_test_cmdline_freestanding_force_e_and_options
[07:42:16] [PASSED] drm_test_cmdline_panel_orientation
[07:42:16] ================ drm_test_cmdline_invalid  =================
[07:42:16] [PASSED] margin_only
[07:42:16] [PASSED] interlace_only
[07:42:16] [PASSED] res_missing_x
[07:42:16] [PASSED] res_missing_y
[07:42:16] [PASSED] res_bad_y
[07:42:16] [PASSED] res_missing_y_bpp
[07:42:16] [PASSED] res_bad_bpp
[07:42:16] [PASSED] res_bad_refresh
[07:42:16] [PASSED] res_bpp_refresh_force_on_off
[07:42:16] [PASSED] res_invalid_mode
[07:42:16] [PASSED] res_bpp_wrong_place_mode
[07:42:16] [PASSED] name_bpp_refresh
[07:42:16] [PASSED] name_refresh
[07:42:16] [PASSED] name_refresh_wrong_mode
[07:42:16] [PASSED] name_refresh_invalid_mode
[07:42:16] [PASSED] rotate_multiple
[07:42:16] [PASSED] rotate_invalid_val
[07:42:16] [PASSED] rotate_truncated
[07:42:16] [PASSED] invalid_option
[07:42:16] [PASSED] invalid_tv_option
[07:42:16] [PASSED] truncated_tv_option
[07:42:16] ============ [PASSED] drm_test_cmdline_invalid =============
[07:42:16] =============== drm_test_cmdline_tv_options  ===============
[07:42:16] [PASSED] NTSC
[07:42:16] [PASSED] NTSC_443
[07:42:16] [PASSED] NTSC_J
[07:42:16] [PASSED] PAL
[07:42:16] [PASSED] PAL_M
[07:42:16] [PASSED] PAL_N
[07:42:16] [PASSED] SECAM
[07:42:16] [PASSED] MONO_525
[07:42:16] [PASSED] MONO_625
[07:42:16] =========== [PASSED] drm_test_cmdline_tv_options ===========
[07:42:16] =============== [PASSED] drm_cmdline_parser ================
[07:42:16] ========== drmm_connector_hdmi_init (20 subtests) ==========
[07:42:16] [PASSED] drm_test_connector_hdmi_init_valid
[07:42:16] [PASSED] drm_test_connector_hdmi_init_bpc_8
[07:42:16] [PASSED] drm_test_connector_hdmi_init_bpc_10
[07:42:16] [PASSED] drm_test_connector_hdmi_init_bpc_12
[07:42:16] [PASSED] drm_test_connector_hdmi_init_bpc_invalid
[07:42:16] [PASSED] drm_test_connector_hdmi_init_bpc_null
[07:42:16] [PASSED] drm_test_connector_hdmi_init_formats_empty
[07:42:16] [PASSED] drm_test_connector_hdmi_init_formats_no_rgb
[07:42:16] === drm_test_connector_hdmi_init_formats_yuv420_allowed  ===
[07:42:16] [PASSED] supported_formats=0x9 yuv420_allowed=1
[07:42:16] [PASSED] supported_formats=0x9 yuv420_allowed=0
[07:42:16] [PASSED] supported_formats=0x3 yuv420_allowed=1
[07:42:16] [PASSED] supported_formats=0x3 yuv420_allowed=0
[07:42:16] === [PASSED] drm_test_connector_hdmi_init_formats_yuv420_allowed ===
[07:42:16] [PASSED] drm_test_connector_hdmi_init_null_ddc
[07:42:16] [PASSED] drm_test_connector_hdmi_init_null_product
[07:42:16] [PASSED] drm_test_connector_hdmi_init_null_vendor
[07:42:16] [PASSED] drm_test_connector_hdmi_init_product_length_exact
[07:42:16] [PASSED] drm_test_connector_hdmi_init_product_length_too_long
[07:42:16] [PASSED] drm_test_connector_hdmi_init_product_valid
[07:42:16] [PASSED] drm_test_connector_hdmi_init_vendor_length_exact
[07:42:16] [PASSED] drm_test_connector_hdmi_init_vendor_length_too_long
[07:42:16] [PASSED] drm_test_connector_hdmi_init_vendor_valid
[07:42:16] ========= drm_test_connector_hdmi_init_type_valid  =========
[07:42:16] [PASSED] HDMI-A
[07:42:16] [PASSED] HDMI-B
[07:42:16] ===== [PASSED] drm_test_connector_hdmi_init_type_valid =====
[07:42:16] ======== drm_test_connector_hdmi_init_type_invalid  ========
[07:42:16] [PASSED] Unknown
[07:42:16] [PASSED] VGA
[07:42:16] [PASSED] DVI-I
[07:42:16] [PASSED] DVI-D
[07:42:16] [PASSED] DVI-A
[07:42:16] [PASSED] Composite
[07:42:16] [PASSED] SVIDEO
[07:42:16] [PASSED] LVDS
[07:42:16] [PASSED] Component
[07:42:16] [PASSED] DIN
[07:42:16] [PASSED] DP
[07:42:16] [PASSED] TV
[07:42:16] [PASSED] eDP
[07:42:16] [PASSED] Virtual
[07:42:16] [PASSED] DSI
[07:42:16] [PASSED] DPI
[07:42:16] [PASSED] Writeback
[07:42:16] [PASSED] SPI
[07:42:16] [PASSED] USB
[07:42:16] ==== [PASSED] drm_test_connector_hdmi_init_type_invalid ====
[07:42:16] ============ [PASSED] drmm_connector_hdmi_init =============
[07:42:16] ============= drmm_connector_init (3 subtests) =============
[07:42:16] [PASSED] drm_test_drmm_connector_init
[07:42:16] [PASSED] drm_test_drmm_connector_init_null_ddc
[07:42:16] ========= drm_test_drmm_connector_init_type_valid  =========
[07:42:16] [PASSED] Unknown
[07:42:16] [PASSED] VGA
[07:42:16] [PASSED] DVI-I
[07:42:16] [PASSED] DVI-D
[07:42:16] [PASSED] DVI-A
[07:42:16] [PASSED] Composite
[07:42:16] [PASSED] SVIDEO
[07:42:16] [PASSED] LVDS
[07:42:16] [PASSED] Component
[07:42:16] [PASSED] DIN
[07:42:16] [PASSED] DP
[07:42:16] [PASSED] HDMI-A
[07:42:16] [PASSED] HDMI-B
[07:42:16] [PASSED] TV
[07:42:16] [PASSED] eDP
[07:42:16] [PASSED] Virtual
[07:42:16] [PASSED] DSI
[07:42:16] [PASSED] DPI
[07:42:16] [PASSED] Writeback
[07:42:16] [PASSED] SPI
[07:42:16] [PASSED] USB
[07:42:16] ===== [PASSED] drm_test_drmm_connector_init_type_valid =====
[07:42:16] =============== [PASSED] drmm_connector_init ===============
[07:42:16] ========= drm_connector_dynamic_init (6 subtests) ==========
[07:42:16] [PASSED] drm_test_drm_connector_dynamic_init
[07:42:16] [PASSED] drm_test_drm_connector_dynamic_init_null_ddc
[07:42:16] [PASSED] drm_test_drm_connector_dynamic_init_not_added
[07:42:16] [PASSED] drm_test_drm_connector_dynamic_init_properties
[07:42:16] ===== drm_test_drm_connector_dynamic_init_type_valid  ======
[07:42:16] [PASSED] Unknown
[07:42:16] [PASSED] VGA
[07:42:16] [PASSED] DVI-I
[07:42:16] [PASSED] DVI-D
[07:42:16] [PASSED] DVI-A
[07:42:16] [PASSED] Composite
[07:42:16] [PASSED] SVIDEO
[07:42:16] [PASSED] LVDS
[07:42:16] [PASSED] Component
[07:42:16] [PASSED] DIN
[07:42:16] [PASSED] DP
[07:42:16] [PASSED] HDMI-A
[07:42:16] [PASSED] HDMI-B
[07:42:16] [PASSED] TV
[07:42:16] [PASSED] eDP
[07:42:16] [PASSED] Virtual
[07:42:16] [PASSED] DSI
[07:42:16] [PASSED] DPI
[07:42:16] [PASSED] Writeback
[07:42:16] [PASSED] SPI
[07:42:16] [PASSED] USB
[07:42:16] = [PASSED] drm_test_drm_connector_dynamic_init_type_valid ==
[07:42:16] ======== drm_test_drm_connector_dynamic_init_name  =========
[07:42:16] [PASSED] Unknown
[07:42:16] [PASSED] VGA
[07:42:16] [PASSED] DVI-I
[07:42:16] [PASSED] DVI-D
[07:42:16] [PASSED] DVI-A
[07:42:16] [PASSED] Composite
[07:42:16] [PASSED] SVIDEO
[07:42:16] [PASSED] LVDS
[07:42:16] [PASSED] Component
[07:42:16] [PASSED] DIN
[07:42:16] [PASSED] DP
[07:42:16] [PASSED] HDMI-A
[07:42:16] [PASSED] HDMI-B
[07:42:16] [PASSED] TV
[07:42:16] [PASSED] eDP
[07:42:16] [PASSED] Virtual
[07:42:16] [PASSED] DSI
[07:42:16] [PASSED] DPI
[07:42:16] [PASSED] Writeback
[07:42:16] [PASSED] SPI
[07:42:16] [PASSED] USB
[07:42:16] ==== [PASSED] drm_test_drm_connector_dynamic_init_name =====
[07:42:16] =========== [PASSED] drm_connector_dynamic_init ============
[07:42:16] ==== drm_connector_dynamic_register_early (4 subtests) =====
[07:42:16] [PASSED] drm_test_drm_connector_dynamic_register_early_on_list
[07:42:16] [PASSED] drm_test_drm_connector_dynamic_register_early_defer
[07:42:16] [PASSED] drm_test_drm_connector_dynamic_register_early_no_init
[07:42:16] [PASSED] drm_test_drm_connector_dynamic_register_early_no_mode_object
[07:42:16] ====== [PASSED] drm_connector_dynamic_register_early =======
[07:42:16] ======= drm_connector_dynamic_register (7 subtests) ========
[07:42:16] [PASSED] drm_test_drm_connector_dynamic_register_on_list
[07:42:16] [PASSED] drm_test_drm_connector_dynamic_register_no_defer
[07:42:16] [PASSED] drm_test_drm_connector_dynamic_register_no_init
[07:42:16] [PASSED] drm_test_drm_connector_dynamic_register_mode_object
[07:42:16] [PASSED] drm_test_drm_connector_dynamic_register_sysfs
[07:42:16] [PASSED] drm_test_drm_connector_dynamic_register_sysfs_name
[07:42:16] [PASSED] drm_test_drm_connector_dynamic_register_debugfs
[07:42:16] ========= [PASSED] drm_connector_dynamic_register ==========
[07:42:16] = drm_connector_attach_broadcast_rgb_property (2 subtests) =
[07:42:16] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property
[07:42:16] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property_hdmi_connector
[07:42:16] === [PASSED] drm_connector_attach_broadcast_rgb_property ===
[07:42:16] ========== drm_get_tv_mode_from_name (2 subtests) ==========
[07:42:16] ========== drm_test_get_tv_mode_from_name_valid  ===========
[07:42:16] [PASSED] NTSC
[07:42:16] [PASSED] NTSC-443
[07:42:16] [PASSED] NTSC-J
[07:42:16] [PASSED] PAL
[07:42:16] [PASSED] PAL-M
[07:42:16] [PASSED] PAL-N
[07:42:16] [PASSED] SECAM
[07:42:16] [PASSED] Mono
[07:42:16] ====== [PASSED] drm_test_get_tv_mode_from_name_valid =======
[07:42:16] [PASSED] drm_test_get_tv_mode_from_name_truncated
[07:42:16] ============ [PASSED] drm_get_tv_mode_from_name ============
[07:42:16] = drm_test_connector_hdmi_compute_mode_clock (12 subtests) =
[07:42:16] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb
[07:42:16] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc
[07:42:16] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc_vic_1
[07:42:16] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc
[07:42:16] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc_vic_1
[07:42:16] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_double
[07:42:16] = drm_test_connector_hdmi_compute_mode_clock_yuv420_valid  =
[07:42:16] [PASSED] VIC 96
[07:42:16] [PASSED] VIC 97
[07:42:16] [PASSED] VIC 101
[07:42:16] [PASSED] VIC 102
[07:42:16] [PASSED] VIC 106
[07:42:16] [PASSED] VIC 107
[07:42:16] === [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_valid ===
[07:42:16] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_10_bpc
[07:42:16] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_12_bpc
[07:42:16] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_8_bpc
[07:42:16] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_10_bpc
[07:42:16] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_12_bpc
[07:42:16] === [PASSED] drm_test_connector_hdmi_compute_mode_clock ====
[07:42:16] == drm_hdmi_connector_get_broadcast_rgb_name (2 subtests) ==
[07:42:16] === drm_test_drm_hdmi_connector_get_broadcast_rgb_name  ====
[07:42:16] [PASSED] Automatic
[07:42:16] [PASSED] Full
[07:42:16] [PASSED] Limited 16:235
[07:42:16] === [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name ===
[07:42:16] [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name_invalid
[07:42:16] ==== [PASSED] drm_hdmi_connector_get_broadcast_rgb_name ====
[07:42:16] == drm_hdmi_connector_get_output_format_name (2 subtests) ==
[07:42:16] === drm_test_drm_hdmi_connector_get_output_format_name  ====
[07:42:16] [PASSED] RGB
[07:42:16] [PASSED] YUV 4:2:0
[07:42:16] [PASSED] YUV 4:2:2
[07:42:16] [PASSED] YUV 4:4:4
[07:42:16] === [PASSED] drm_test_drm_hdmi_connector_get_output_format_name ===
[07:42:16] [PASSED] drm_test_drm_hdmi_connector_get_output_format_name_invalid
[07:42:16] ==== [PASSED] drm_hdmi_connector_get_output_format_name ====
[07:42:16] ============= drm_damage_helper (21 subtests) ==============
[07:42:16] [PASSED] drm_test_damage_iter_no_damage
[07:42:16] [PASSED] drm_test_damage_iter_no_damage_fractional_src
[07:42:16] [PASSED] drm_test_damage_iter_no_damage_src_moved
[07:42:16] [PASSED] drm_test_damage_iter_no_damage_fractional_src_moved
[07:42:16] [PASSED] drm_test_damage_iter_no_damage_not_visible
[07:42:16] [PASSED] drm_test_damage_iter_no_damage_no_crtc
[07:42:16] [PASSED] drm_test_damage_iter_no_damage_no_fb
[07:42:16] [PASSED] drm_test_damage_iter_simple_damage
[07:42:16] [PASSED] drm_test_damage_iter_single_damage
[07:42:16] [PASSED] drm_test_damage_iter_single_damage_intersect_src
[07:42:16] [PASSED] drm_test_damage_iter_single_damage_outside_src
[07:42:16] [PASSED] drm_test_damage_iter_single_damage_fractional_src
[07:42:16] [PASSED] drm_test_damage_iter_single_damage_intersect_fractional_src
[07:42:16] [PASSED] drm_test_damage_iter_single_damage_outside_fractional_src
[07:42:16] [PASSED] drm_test_damage_iter_single_damage_src_moved
[07:42:16] [PASSED] drm_test_damage_iter_single_damage_fractional_src_moved
[07:42:16] [PASSED] drm_test_damage_iter_damage
[07:42:16] [PASSED] drm_test_damage_iter_damage_one_intersect
[07:42:16] [PASSED] drm_test_damage_iter_damage_one_outside
[07:42:16] [PASSED] drm_test_damage_iter_damage_src_moved
[07:42:16] [PASSED] drm_test_damage_iter_damage_not_visible
[07:42:16] ================ [PASSED] drm_damage_helper ================
[07:42:16] ============== drm_dp_mst_helper (3 subtests) ==============
[07:42:16] ============== drm_test_dp_mst_calc_pbn_mode  ==============
[07:42:16] [PASSED] Clock 154000 BPP 30 DSC disabled
[07:42:16] [PASSED] Clock 234000 BPP 30 DSC disabled
[07:42:16] [PASSED] Clock 297000 BPP 24 DSC disabled
[07:42:16] [PASSED] Clock 332880 BPP 24 DSC enabled
[07:42:16] [PASSED] Clock 324540 BPP 24 DSC enabled
[07:42:16] ========== [PASSED] drm_test_dp_mst_calc_pbn_mode ==========
[07:42:16] ============== drm_test_dp_mst_calc_pbn_div  ===============
[07:42:16] [PASSED] Link rate 2000000 lane count 4
[07:42:16] [PASSED] Link rate 2000000 lane count 2
[07:42:16] [PASSED] Link rate 2000000 lane count 1
[07:42:16] [PASSED] Link rate 1350000 lane count 4
[07:42:16] [PASSED] Link rate 1350000 lane count 2
[07:42:16] [PASSED] Link rate 1350000 lane count 1
[07:42:16] [PASSED] Link rate 1000000 lane count 4
[07:42:16] [PASSED] Link rate 1000000 lane count 2
[07:42:16] [PASSED] Link rate 1000000 lane count 1
[07:42:16] [PASSED] Link rate 810000 lane count 4
[07:42:16] [PASSED] Link rate 810000 lane count 2
[07:42:16] [PASSED] Link rate 810000 lane count 1
[07:42:16] [PASSED] Link rate 540000 lane count 4
[07:42:16] [PASSED] Link rate 540000 lane count 2
[07:42:16] [PASSED] Link rate 540000 lane count 1
[07:42:16] [PASSED] Link rate 270000 lane count 4
[07:42:16] [PASSED] Link rate 270000 lane count 2
[07:42:16] [PASSED] Link rate 270000 lane count 1
[07:42:16] [PASSED] Link rate 162000 lane count 4
[07:42:16] [PASSED] Link rate 162000 lane count 2
[07:42:16] [PASSED] Link rate 162000 lane count 1
[07:42:16] ========== [PASSED] drm_test_dp_mst_calc_pbn_div ===========
[07:42:16] ========= drm_test_dp_mst_sideband_msg_req_decode  =========
[07:42:16] [PASSED] DP_ENUM_PATH_RESOURCES with port number
[07:42:16] [PASSED] DP_POWER_UP_PHY with port number
[07:42:16] [PASSED] DP_POWER_DOWN_PHY with port number
[07:42:16] [PASSED] DP_ALLOCATE_PAYLOAD with SDP stream sinks
[07:42:16] [PASSED] DP_ALLOCATE_PAYLOAD with port number
[07:42:16] [PASSED] DP_ALLOCATE_PAYLOAD with VCPI
[07:42:16] [PASSED] DP_ALLOCATE_PAYLOAD with PBN
[07:42:16] [PASSED] DP_QUERY_PAYLOAD with port number
[07:42:16] [PASSED] DP_QUERY_PAYLOAD with VCPI
[07:42:16] [PASSED] DP_REMOTE_DPCD_READ with port number
[07:42:16] [PASSED] DP_REMOTE_DPCD_READ with DPCD address
[07:42:16] [PASSED] DP_REMOTE_DPCD_READ with max number of bytes
[07:42:16] [PASSED] DP_REMOTE_DPCD_WRITE with port number
[07:42:16] [PASSED] DP_REMOTE_DPCD_WRITE with DPCD address
[07:42:16] [PASSED] DP_REMOTE_DPCD_WRITE with data array
[07:42:16] [PASSED] DP_REMOTE_I2C_READ with port number
[07:42:16] [PASSED] DP_REMOTE_I2C_READ with I2C device ID
[07:42:16] [PASSED] DP_REMOTE_I2C_READ with transactions array
[07:42:16] [PASSED] DP_REMOTE_I2C_WRITE with port number
[07:42:16] [PASSED] DP_REMOTE_I2C_WRITE with I2C device ID
[07:42:16] [PASSED] DP_REMOTE_I2C_WRITE with data array
[07:42:16] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream ID
[07:42:16] [PASSED] DP_QUERY_STREAM_ENC_STATUS with client ID
[07:42:16] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream event
[07:42:16] [PASSED] DP_QUERY_STREAM_ENC_STATUS with valid stream event
[07:42:16] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream behavior
[07:42:16] [PASSED] DP_QUERY_STREAM_ENC_STATUS with a valid stream behavior
[07:42:16] ===== [PASSED] drm_test_dp_mst_sideband_msg_req_decode =====
[07:42:16] ================ [PASSED] drm_dp_mst_helper ================
[07:42:16] ================== drm_exec (7 subtests) ===================
[07:42:16] [PASSED] sanitycheck
[07:42:16] [PASSED] test_lock
[07:42:16] [PASSED] test_lock_unlock
[07:42:16] [PASSED] test_duplicates
[07:42:16] [PASSED] test_prepare
[07:42:16] [PASSED] test_prepare_array
[07:42:16] [PASSED] test_multiple_loops
[07:42:16] ==================== [PASSED] drm_exec =====================
[07:42:16] =========== drm_format_helper_test (17 subtests) ===========
[07:42:16] ============== drm_test_fb_xrgb8888_to_gray8  ==============
[07:42:16] [PASSED] single_pixel_source_buffer
[07:42:16] [PASSED] single_pixel_clip_rectangle
[07:42:16] [PASSED] well_known_colors
[07:42:16] [PASSED] destination_pitch
[07:42:16] ========== [PASSED] drm_test_fb_xrgb8888_to_gray8 ==========
[07:42:16] ============= drm_test_fb_xrgb8888_to_rgb332  ==============
[07:42:16] [PASSED] single_pixel_source_buffer
[07:42:16] [PASSED] single_pixel_clip_rectangle
[07:42:16] [PASSED] well_known_colors
[07:42:16] [PASSED] destination_pitch
[07:42:16] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb332 ==========
[07:42:16] ============= drm_test_fb_xrgb8888_to_rgb565  ==============
[07:42:16] [PASSED] single_pixel_source_buffer
[07:42:16] [PASSED] single_pixel_clip_rectangle
[07:42:16] [PASSED] well_known_colors
[07:42:16] [PASSED] destination_pitch
[07:42:16] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb565 ==========
[07:42:16] ============ drm_test_fb_xrgb8888_to_xrgb1555  =============
[07:42:16] [PASSED] single_pixel_source_buffer
[07:42:16] [PASSED] single_pixel_clip_rectangle
[07:42:16] [PASSED] well_known_colors
[07:42:16] [PASSED] destination_pitch
[07:42:16] ======== [PASSED] drm_test_fb_xrgb8888_to_xrgb1555 =========
[07:42:16] ============ drm_test_fb_xrgb8888_to_argb1555  =============
[07:42:16] [PASSED] single_pixel_source_buffer
[07:42:16] [PASSED] single_pixel_clip_rectangle
[07:42:16] [PASSED] well_known_colors
[07:42:16] [PASSED] destination_pitch
[07:42:16] ======== [PASSED] drm_test_fb_xrgb8888_to_argb1555 =========
[07:42:16] ============ drm_test_fb_xrgb8888_to_rgba5551  =============
[07:42:16] [PASSED] single_pixel_source_buffer
[07:42:16] [PASSED] single_pixel_clip_rectangle
[07:42:16] [PASSED] well_known_colors
[07:42:16] [PASSED] destination_pitch
[07:42:16] ======== [PASSED] drm_test_fb_xrgb8888_to_rgba5551 =========
[07:42:16] ============= drm_test_fb_xrgb8888_to_rgb888  ==============
[07:42:16] [PASSED] single_pixel_source_buffer
[07:42:16] [PASSED] single_pixel_clip_rectangle
[07:42:16] [PASSED] well_known_colors
[07:42:16] [PASSED] destination_pitch
[07:42:16] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb888 ==========
[07:42:16] ============= drm_test_fb_xrgb8888_to_bgr888  ==============
[07:42:16] [PASSED] single_pixel_source_buffer
[07:42:16] [PASSED] single_pixel_clip_rectangle
[07:42:16] [PASSED] well_known_colors
[07:42:16] [PASSED] destination_pitch
[07:42:16] ========= [PASSED] drm_test_fb_xrgb8888_to_bgr888 ==========
[07:42:16] ============ drm_test_fb_xrgb8888_to_argb8888  =============
[07:42:16] [PASSED] single_pixel_source_buffer
[07:42:16] [PASSED] single_pixel_clip_rectangle
[07:42:16] [PASSED] well_known_colors
[07:42:16] [PASSED] destination_pitch
[07:42:16] ======== [PASSED] drm_test_fb_xrgb8888_to_argb8888 =========
[07:42:16] =========== drm_test_fb_xrgb8888_to_xrgb2101010  ===========
[07:42:16] [PASSED] single_pixel_source_buffer
[07:42:16] [PASSED] single_pixel_clip_rectangle
[07:42:16] [PASSED] well_known_colors
[07:42:16] [PASSED] destination_pitch
[07:42:16] ======= [PASSED] drm_test_fb_xrgb8888_to_xrgb2101010 =======
[07:42:16] =========== drm_test_fb_xrgb8888_to_argb2101010  ===========
[07:42:16] [PASSED] single_pixel_source_buffer
[07:42:16] [PASSED] single_pixel_clip_rectangle
[07:42:16] [PASSED] well_known_colors
[07:42:16] [PASSED] destination_pitch
[07:42:16] ======= [PASSED] drm_test_fb_xrgb8888_to_argb2101010 =======
[07:42:16] ============== drm_test_fb_xrgb8888_to_mono  ===============
[07:42:16] [PASSED] single_pixel_source_buffer
[07:42:16] [PASSED] single_pixel_clip_rectangle
[07:42:16] [PASSED] well_known_colors
[07:42:16] [PASSED] destination_pitch
[07:42:16] ========== [PASSED] drm_test_fb_xrgb8888_to_mono ===========
[07:42:16] ==================== drm_test_fb_swab  =====================
[07:42:16] [PASSED] single_pixel_source_buffer
[07:42:16] [PASSED] single_pixel_clip_rectangle
[07:42:16] [PASSED] well_known_colors
[07:42:16] [PASSED] destination_pitch
[07:42:16] ================ [PASSED] drm_test_fb_swab =================
[07:42:16] ============ drm_test_fb_xrgb8888_to_xbgr8888  =============
[07:42:16] [PASSED] single_pixel_source_buffer
[07:42:16] [PASSED] single_pixel_clip_rectangle
[07:42:16] [PASSED] well_known_colors
[07:42:16] [PASSED] destination_pitch
[07:42:16] ======== [PASSED] drm_test_fb_xrgb8888_to_xbgr8888 =========
[07:42:16] ============ drm_test_fb_xrgb8888_to_abgr8888  =============
[07:42:16] [PASSED] single_pixel_source_buffer
[07:42:16] [PASSED] single_pixel_clip_rectangle
[07:42:16] [PASSED] well_known_colors
[07:42:16] [PASSED] destination_pitch
[07:42:16] ======== [PASSED] drm_test_fb_xrgb8888_to_abgr8888 =========
[07:42:16] ================= drm_test_fb_clip_offset  =================
[07:42:16] [PASSED] pass through
[07:42:16] [PASSED] horizontal offset
[07:42:16] [PASSED] vertical offset
[07:42:16] [PASSED] horizontal and vertical offset
[07:42:16] [PASSED] horizontal offset (custom pitch)
[07:42:16] [PASSED] vertical offset (custom pitch)
[07:42:16] [PASSED] horizontal and vertical offset (custom pitch)
[07:42:16] ============= [PASSED] drm_test_fb_clip_offset =============
[07:42:16] =================== drm_test_fb_memcpy  ====================
[07:42:16] [PASSED] single_pixel_source_buffer: XR24 little-endian (0x34325258)
[07:42:16] [PASSED] single_pixel_source_buffer: XRA8 little-endian (0x38415258)
[07:42:16] [PASSED] single_pixel_source_buffer: YU24 little-endian (0x34325559)
[07:42:16] [PASSED] single_pixel_clip_rectangle: XB24 little-endian (0x34324258)
[07:42:16] [PASSED] single_pixel_clip_rectangle: XRA8 little-endian (0x38415258)
[07:42:16] [PASSED] single_pixel_clip_rectangle: YU24 little-endian (0x34325559)
[07:42:16] [PASSED] well_known_colors: XB24 little-endian (0x34324258)
[07:42:16] [PASSED] well_known_colors: XRA8 little-endian (0x38415258)
[07:42:16] [PASSED] well_known_colors: YU24 little-endian (0x34325559)
[07:42:16] [PASSED] destination_pitch: XB24 little-endian (0x34324258)
[07:42:16] [PASSED] destination_pitch: XRA8 little-endian (0x38415258)
[07:42:16] [PASSED] destination_pitch: YU24 little-endian (0x34325559)
[07:42:16] =============== [PASSED] drm_test_fb_memcpy ================
[07:42:16] ============= [PASSED] drm_format_helper_test ==============
[07:42:16] ================= drm_format (18 subtests) =================
[07:42:16] [PASSED] drm_test_format_block_width_invalid
[07:42:16] [PASSED] drm_test_format_block_width_one_plane
[07:42:16] [PASSED] drm_test_format_block_width_two_plane
[07:42:16] [PASSED] drm_test_format_block_width_three_plane
[07:42:16] [PASSED] drm_test_format_block_width_tiled
[07:42:16] [PASSED] drm_test_format_block_height_invalid
[07:42:16] [PASSED] drm_test_format_block_height_one_plane
[07:42:16] [PASSED] drm_test_format_block_height_two_plane
[07:42:16] [PASSED] drm_test_format_block_height_three_plane
[07:42:16] [PASSED] drm_test_format_block_height_tiled
[07:42:16] [PASSED] drm_test_format_min_pitch_invalid
[07:42:16] [PASSED] drm_test_format_min_pitch_one_plane_8bpp
[07:42:16] [PASSED] drm_test_format_min_pitch_one_plane_16bpp
[07:42:16] [PASSED] drm_test_format_min_pitch_one_plane_24bpp
[07:42:16] [PASSED] drm_test_format_min_pitch_one_plane_32bpp
[07:42:16] [PASSED] drm_test_format_min_pitch_two_plane
[07:42:16] [PASSED] drm_test_format_min_pitch_three_plane_8bpp
[07:42:16] [PASSED] drm_test_format_min_pitch_tiled
[07:42:16] =================== [PASSED] drm_format ====================
[07:42:16] ============== drm_framebuffer (10 subtests) ===============
[07:42:16] ========== drm_test_framebuffer_check_src_coords  ==========
[07:42:16] [PASSED] Success: source fits into fb
[07:42:16] [PASSED] Fail: overflowing fb with x-axis coordinate
[07:42:16] [PASSED] Fail: overflowing fb with y-axis coordinate
[07:42:16] [PASSED] Fail: overflowing fb with source width
[07:42:16] [PASSED] Fail: overflowing fb with source height
[07:42:16] ====== [PASSED] drm_test_framebuffer_check_src_coords ======
[07:42:16] [PASSED] drm_test_framebuffer_cleanup
[07:42:16] =============== drm_test_framebuffer_create  ===============
[07:42:16] [PASSED] ABGR8888 normal sizes
[07:42:16] [PASSED] ABGR8888 max sizes
[07:42:16] [PASSED] ABGR8888 pitch greater than min required
[07:42:16] [PASSED] ABGR8888 pitch less than min required
[07:42:16] [PASSED] ABGR8888 Invalid width
[07:42:16] [PASSED] ABGR8888 Invalid buffer handle
[07:42:16] [PASSED] No pixel format
[07:42:16] [PASSED] ABGR8888 Width 0
[07:42:16] [PASSED] ABGR8888 Height 0
[07:42:16] [PASSED] ABGR8888 Out of bound height * pitch combination
[07:42:16] [PASSED] ABGR8888 Large buffer offset
[07:42:16] [PASSED] ABGR8888 Buffer offset for inexistent plane
[07:42:16] [PASSED] ABGR8888 Invalid flag
[07:42:16] [PASSED] ABGR8888 Set DRM_MODE_FB_MODIFIERS without modifiers
[07:42:16] [PASSED] ABGR8888 Valid buffer modifier
[07:42:16] [PASSED] ABGR8888 Invalid buffer modifier(DRM_FORMAT_MOD_SAMSUNG_64_32_TILE)
[07:42:16] [PASSED] ABGR8888 Extra pitches without DRM_MODE_FB_MODIFIERS
[07:42:16] [PASSED] ABGR8888 Extra pitches with DRM_MODE_FB_MODIFIERS
[07:42:16] [PASSED] NV12 Normal sizes
[07:42:16] [PASSED] NV12 Max sizes
[07:42:16] [PASSED] NV12 Invalid pitch
[07:42:16] [PASSED] NV12 Invalid modifier/missing DRM_MODE_FB_MODIFIERS flag
[07:42:16] [PASSED] NV12 different  modifier per-plane
[07:42:16] [PASSED] NV12 with DRM_FORMAT_MOD_SAMSUNG_64_32_TILE
[07:42:16] [PASSED] NV12 Valid modifiers without DRM_MODE_FB_MODIFIERS
[07:42:16] [PASSED] NV12 Modifier for inexistent plane
[07:42:16] [PASSED] NV12 Handle for inexistent plane
[07:42:16] [PASSED] NV12 Handle for inexistent plane without DRM_MODE_FB_MODIFIERS
[07:42:16] [PASSED] YVU420 DRM_MODE_FB_MODIFIERS set without modifier
[07:42:16] [PASSED] YVU420 Normal sizes
[07:42:16] [PASSED] YVU420 Max sizes
[07:42:16] [PASSED] YVU420 Invalid pitch
[07:42:16] [PASSED] YVU420 Different pitches
[07:42:16] [PASSED] YVU420 Different buffer offsets/pitches
[07:42:16] [PASSED] YVU420 Modifier set just for plane 0, without DRM_MODE_FB_MODIFIERS
[07:42:16] [PASSED] YVU420 Modifier set just for planes 0, 1, without DRM_MODE_FB_MODIFIERS
[07:42:16] [PASSED] YVU420 Modifier set just for plane 0, 1, with DRM_MODE_FB_MODIFIERS
[07:42:16] [PASSED] YVU420 Valid modifier
[07:42:16] [PASSED] YVU420 Different modifiers per plane
[07:42:16] [PASSED] YVU420 Modifier for inexistent plane
[07:42:16] [PASSED] YUV420_10BIT Invalid modifier(DRM_FORMAT_MOD_LINEAR)
[07:42:16] [PASSED] X0L2 Normal sizes
[07:42:16] [PASSED] X0L2 Max sizes
[07:42:16] [PASSED] X0L2 Invalid pitch
[07:42:16] [PASSED] X0L2 Pitch greater than minimum required
[07:42:16] [PASSED] X0L2 Handle for inexistent plane
[07:42:16] [PASSED] X0L2 Offset for inexistent plane, without DRM_MODE_FB_MODIFIERS set
[07:42:16] [PASSED] X0L2 Modifier without DRM_MODE_FB_MODIFIERS set
[07:42:16] [PASSED] X0L2 Valid modifier
[07:42:16] [PASSED] X0L2 Modifier for inexistent plane
[07:42:16] =========== [PASSED] drm_test_framebuffer_create ===========
[07:42:16] [PASSED] drm_test_framebuffer_free
[07:42:16] [PASSED] drm_test_framebuffer_init
[07:42:16] [PASSED] drm_test_framebuffer_init_bad_format
[07:42:16] [PASSED] drm_test_framebuffer_init_dev_mismatch
[07:42:16] [PASSED] drm_test_framebuffer_lookup
[07:42:16] [PASSED] drm_test_framebuffer_lookup_inexistent
[07:42:16] [PASSED] drm_test_framebuffer_modifiers_not_supported
[07:42:16] ================= [PASSED] drm_framebuffer =================
[07:42:16] ================ drm_gem_shmem (8 subtests) ================
[07:42:16] [PASSED] drm_gem_shmem_test_obj_create
[07:42:16] [PASSED] drm_gem_shmem_test_obj_create_private
[07:42:16] [PASSED] drm_gem_shmem_test_pin_pages
[07:42:16] [PASSED] drm_gem_shmem_test_vmap
[07:42:16] [PASSED] drm_gem_shmem_test_get_sg_table
[07:42:16] [PASSED] drm_gem_shmem_test_get_pages_sgt
[07:42:16] [PASSED] drm_gem_shmem_test_madvise
[07:42:16] [PASSED] drm_gem_shmem_test_purge
[07:42:16] ================== [PASSED] drm_gem_shmem ==================
[07:42:16] === drm_atomic_helper_connector_hdmi_check (27 subtests) ===
[07:42:16] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode
[07:42:16] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode_vic_1
[07:42:16] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode
[07:42:16] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode_vic_1
[07:42:16] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode
[07:42:16] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode_vic_1
[07:42:16] ====== drm_test_check_broadcast_rgb_cea_mode_yuv420  =======
[07:42:16] [PASSED] Automatic
[07:42:16] [PASSED] Full
[07:42:16] [PASSED] Limited 16:235
[07:42:16] == [PASSED] drm_test_check_broadcast_rgb_cea_mode_yuv420 ===
[07:42:16] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_changed
[07:42:16] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_not_changed
[07:42:16] [PASSED] drm_test_check_disable_connector
[07:42:16] [PASSED] drm_test_check_hdmi_funcs_reject_rate
[07:42:16] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_rgb
[07:42:16] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_yuv420
[07:42:16] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_ignore_yuv422
[07:42:16] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_ignore_yuv420
[07:42:16] [PASSED] drm_test_check_driver_unsupported_fallback_yuv420
[07:42:16] [PASSED] drm_test_check_output_bpc_crtc_mode_changed
[07:42:16] [PASSED] drm_test_check_output_bpc_crtc_mode_not_changed
[07:42:16] [PASSED] drm_test_check_output_bpc_dvi
[07:42:16] [PASSED] drm_test_check_output_bpc_format_vic_1
[07:42:16] [PASSED] drm_test_check_output_bpc_format_display_8bpc_only
[07:42:16] [PASSED] drm_test_check_output_bpc_format_display_rgb_only
[07:42:16] [PASSED] drm_test_check_output_bpc_format_driver_8bpc_only
[07:42:16] [PASSED] drm_test_check_output_bpc_format_driver_rgb_only
[07:42:16] [PASSED] drm_test_check_tmds_char_rate_rgb_8bpc
[07:42:16] [PASSED] drm_test_check_tmds_char_rate_rgb_10bpc
[07:42:16] [PASSED] drm_test_check_tmds_char_rate_rgb_12bpc
[07:42:16] ===== [PASSED] drm_atomic_helper_connector_hdmi_check ======
[07:42:16] === drm_atomic_helper_connector_hdmi_reset (6 subtests) ====
[07:42:16] [PASSED] drm_test_check_broadcast_rgb_value
[07:42:16] [PASSED] drm_test_check_bpc_8_value
[07:42:16] [PASSED] drm_test_check_bpc_10_value
[07:42:16] [PASSED] drm_test_check_bpc_12_value
[07:42:16] [PASSED] drm_test_check_format_value
[07:42:16] [PASSED] drm_test_check_tmds_char_value
[07:42:16] ===== [PASSED] drm_atomic_helper_connector_hdmi_reset ======
[07:42:16] = drm_atomic_helper_connector_hdmi_mode_valid (4 subtests) =
[07:42:16] [PASSED] drm_test_check_mode_valid
[07:42:16] [PASSED] drm_test_check_mode_valid_reject
[07:42:16] [PASSED] drm_test_check_mode_valid_reject_rate
[07:42:16] [PASSED] drm_test_check_mode_valid_reject_max_clock
[07:42:16] === [PASSED] drm_atomic_helper_connector_hdmi_mode_valid ===
[07:42:16] = drm_atomic_helper_connector_hdmi_infoframes (5 subtests) =
[07:42:16] [PASSED] drm_test_check_infoframes
[07:42:16] [PASSED] drm_test_check_reject_avi_infoframe
[07:42:16] [PASSED] drm_test_check_reject_hdr_infoframe_bpc_8
[07:42:16] [PASSED] drm_test_check_reject_hdr_infoframe_bpc_10
[07:42:16] [PASSED] drm_test_check_reject_audio_infoframe
[07:42:16] === [PASSED] drm_atomic_helper_connector_hdmi_infoframes ===
[07:42:16] ================= drm_managed (2 subtests) =================
[07:42:16] [PASSED] drm_test_managed_release_action
[07:42:16] [PASSED] drm_test_managed_run_action
[07:42:16] =================== [PASSED] drm_managed ===================
[07:42:16] =================== drm_mm (6 subtests) ====================
[07:42:16] [PASSED] drm_test_mm_init
[07:42:16] [PASSED] drm_test_mm_debug
[07:42:16] [PASSED] drm_test_mm_align32
[07:42:16] [PASSED] drm_test_mm_align64
[07:42:16] [PASSED] drm_test_mm_lowest
[07:42:16] [PASSED] drm_test_mm_highest
[07:42:16] ===================== [PASSED] drm_mm ======================
[07:42:16] ============= drm_modes_analog_tv (5 subtests) =============
[07:42:16] [PASSED] drm_test_modes_analog_tv_mono_576i
[07:42:16] [PASSED] drm_test_modes_analog_tv_ntsc_480i
[07:42:16] [PASSED] drm_test_modes_analog_tv_ntsc_480i_inlined
[07:42:16] [PASSED] drm_test_modes_analog_tv_pal_576i
[07:42:16] [PASSED] drm_test_modes_analog_tv_pal_576i_inlined
[07:42:16] =============== [PASSED] drm_modes_analog_tv ===============
[07:42:16] ============== drm_plane_helper (2 subtests) ===============
[07:42:16] =============== drm_test_check_plane_state  ================
[07:42:16] [PASSED] clipping_simple
[07:42:16] [PASSED] clipping_rotate_reflect
[07:42:16] [PASSED] positioning_simple
[07:42:16] [PASSED] upscaling
[07:42:16] [PASSED] downscaling
[07:42:16] [PASSED] rounding1
[07:42:16] [PASSED] rounding2
[07:42:16] [PASSED] rounding3
[07:42:16] [PASSED] rounding4
[07:42:16] =========== [PASSED] drm_test_check_plane_state ============
[07:42:16] =========== drm_test_check_invalid_plane_state  ============
[07:42:16] [PASSED] positioning_invalid
[07:42:16] [PASSED] upscaling_invalid
[07:42:16] [PASSED] downscaling_invalid
[07:42:16] ======= [PASSED] drm_test_check_invalid_plane_state ========
[07:42:16] ================ [PASSED] drm_plane_helper =================
[07:42:16] ====== drm_connector_helper_tv_get_modes (1 subtest) =======
[07:42:16] ====== drm_test_connector_helper_tv_get_modes_check  =======
[07:42:16] [PASSED] None
[07:42:16] [PASSED] PAL
[07:42:16] [PASSED] NTSC
[07:42:16] [PASSED] Both, NTSC Default
[07:42:16] [PASSED] Both, PAL Default
[07:42:16] [PASSED] Both, NTSC Default, with PAL on command-line
[07:42:16] [PASSED] Both, PAL Default, with NTSC on command-line
[07:42:16] == [PASSED] drm_test_connector_helper_tv_get_modes_check ===
[07:42:16] ======== [PASSED] drm_connector_helper_tv_get_modes ========
[07:42:16] ================== drm_rect (9 subtests) ===================
[07:42:16] [PASSED] drm_test_rect_clip_scaled_div_by_zero
[07:42:16] [PASSED] drm_test_rect_clip_scaled_not_clipped
[07:42:16] [PASSED] drm_test_rect_clip_scaled_clipped
[07:42:16] [PASSED] drm_test_rect_clip_scaled_signed_vs_unsigned
[07:42:16] ================= drm_test_rect_intersect  =================
[07:42:16] [PASSED] top-left x bottom-right: 2x2+1+1 x 2x2+0+0
[07:42:16] [PASSED] top-right x bottom-left: 2x2+0+0 x 2x2+1-1
[07:42:16] [PASSED] bottom-left x top-right: 2x2+1-1 x 2x2+0+0
[07:42:16] [PASSED] bottom-right x top-left: 2x2+0+0 x 2x2+1+1
[07:42:16] [PASSED] right x left: 2x1+0+0 x 3x1+1+0
[07:42:16] [PASSED] left x right: 3x1+1+0 x 2x1+0+0
[07:42:16] [PASSED] up x bottom: 1x2+0+0 x 1x3+0-1
[07:42:16] [PASSED] bottom x up: 1x3+0-1 x 1x2+0+0
[07:42:16] [PASSED] touching corner: 1x1+0+0 x 2x2+1+1
[07:42:16] [PASSED] touching side: 1x1+0+0 x 1x1+1+0
[07:42:16] [PASSED] equal rects: 2x2+0+0 x 2x2+0+0
[07:42:16] [PASSED] inside another: 2x2+0+0 x 1x1+1+1
[07:42:16] [PASSED] far away: 1x1+0+0 x 1x1+3+6
[07:42:16] [PASSED] points intersecting: 0x0+5+10 x 0x0+5+10
[07:42:16] [PASSED] points not intersecting: 0x0+0+0 x 0x0+5+10
[07:42:16] ============= [PASSED] drm_test_rect_intersect =============
[07:42:16] ================ drm_test_rect_calc_hscale  ================
[07:42:16] [PASSED] normal use
[07:42:16] [PASSED] out of max range
[07:42:16] [PASSED] out of min range
[07:42:16] [PASSED] zero dst
[07:42:16] [PASSED] negative src
[07:42:16] [PASSED] negative dst
[07:42:16] ============ [PASSED] drm_test_rect_calc_hscale ============
[07:42:16] ================ drm_test_rect_calc_vscale  ================
[07:42:16] [PASSED] normal use
[07:42:16] [PASSED] out of max range
[07:42:16] [PASSED] out of min range
[07:42:16] [PASSED] zero dst
[07:42:16] [PASSED] negative src
[07:42:16] [PASSED] negative dst
stty: 'standard input': Inappropriate ioctl for device
[07:42:16] ============ [PASSED] drm_test_rect_calc_vscale ============
[07:42:16] ================== drm_test_rect_rotate  ===================
[07:42:16] [PASSED] reflect-x
[07:42:16] [PASSED] reflect-y
[07:42:16] [PASSED] rotate-0
[07:42:16] [PASSED] rotate-90
[07:42:16] [PASSED] rotate-180
[07:42:16] [PASSED] rotate-270
[07:42:16] ============== [PASSED] drm_test_rect_rotate ===============
[07:42:16] ================ drm_test_rect_rotate_inv  =================
[07:42:16] [PASSED] reflect-x
[07:42:16] [PASSED] reflect-y
[07:42:16] [PASSED] rotate-0
[07:42:16] [PASSED] rotate-90
[07:42:16] [PASSED] rotate-180
[07:42:16] [PASSED] rotate-270
[07:42:16] ============ [PASSED] drm_test_rect_rotate_inv =============
[07:42:16] ==================== [PASSED] drm_rect =====================
[07:42:16] ============ drm_sysfb_modeset_test (1 subtest) ============
[07:42:16] ============ drm_test_sysfb_build_fourcc_list  =============
[07:42:16] [PASSED] no native formats
[07:42:16] [PASSED] XRGB8888 as native format
[07:42:16] [PASSED] remove duplicates
[07:42:16] [PASSED] convert alpha formats
[07:42:16] [PASSED] random formats
[07:42:16] ======== [PASSED] drm_test_sysfb_build_fourcc_list =========
[07:42:16] ============= [PASSED] drm_sysfb_modeset_test ==============
[07:42:16] ================== drm_fixp (2 subtests) ===================
[07:42:16] [PASSED] drm_test_int2fixp
[07:42:16] [PASSED] drm_test_sm2fixp
[07:42:16] ==================== [PASSED] drm_fixp =====================
[07:42:16] ============================================================
[07:42:16] Testing complete. Ran 621 tests: passed: 621
[07:42:16] Elapsed time: 32.301s total, 1.604s configuring, 30.531s building, 0.129s running

+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/ttm/tests/.kunitconfig
[07:42:16] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[07:42:18] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=25
[07:42:27] Starting KUnit Kernel (1/1)...
[07:42:27] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[07:42:27] ================= ttm_device (5 subtests) ==================
[07:42:27] [PASSED] ttm_device_init_basic
[07:42:27] [PASSED] ttm_device_init_multiple
[07:42:27] [PASSED] ttm_device_fini_basic
[07:42:27] [PASSED] ttm_device_init_no_vma_man
[07:42:27] ================== ttm_device_init_pools  ==================
[07:42:27] [PASSED] No DMA allocations, no DMA32 required
[07:42:27] [PASSED] DMA allocations, DMA32 required
[07:42:27] [PASSED] No DMA allocations, DMA32 required
[07:42:27] [PASSED] DMA allocations, no DMA32 required
[07:42:27] ============== [PASSED] ttm_device_init_pools ==============
[07:42:27] =================== [PASSED] ttm_device ====================
[07:42:27] ================== ttm_pool (8 subtests) ===================
[07:42:27] ================== ttm_pool_alloc_basic  ===================
[07:42:27] [PASSED] One page
[07:42:27] [PASSED] More than one page
[07:42:27] [PASSED] Above the allocation limit
[07:42:27] [PASSED] One page, with coherent DMA mappings enabled
[07:42:27] [PASSED] Above the allocation limit, with coherent DMA mappings enabled
[07:42:27] ============== [PASSED] ttm_pool_alloc_basic ===============
[07:42:27] ============== ttm_pool_alloc_basic_dma_addr  ==============
[07:42:27] [PASSED] One page
[07:42:27] [PASSED] More than one page
[07:42:27] [PASSED] Above the allocation limit
[07:42:27] [PASSED] One page, with coherent DMA mappings enabled
[07:42:27] [PASSED] Above the allocation limit, with coherent DMA mappings enabled
[07:42:27] ========== [PASSED] ttm_pool_alloc_basic_dma_addr ==========
[07:42:27] [PASSED] ttm_pool_alloc_order_caching_match
[07:42:27] [PASSED] ttm_pool_alloc_caching_mismatch
[07:42:27] [PASSED] ttm_pool_alloc_order_mismatch
[07:42:27] [PASSED] ttm_pool_free_dma_alloc
[07:42:27] [PASSED] ttm_pool_free_no_dma_alloc
[07:42:27] [PASSED] ttm_pool_fini_basic
[07:42:27] ==================== [PASSED] ttm_pool =====================
[07:42:27] ================ ttm_resource (8 subtests) =================
[07:42:27] ================= ttm_resource_init_basic  =================
[07:42:27] [PASSED] Init resource in TTM_PL_SYSTEM
[07:42:27] [PASSED] Init resource in TTM_PL_VRAM
[07:42:27] [PASSED] Init resource in a private placement
[07:42:27] [PASSED] Init resource in TTM_PL_SYSTEM, set placement flags
[07:42:27] ============= [PASSED] ttm_resource_init_basic =============
[07:42:27] [PASSED] ttm_resource_init_pinned
[07:42:27] [PASSED] ttm_resource_fini_basic
[07:42:27] [PASSED] ttm_resource_manager_init_basic
[07:42:27] [PASSED] ttm_resource_manager_usage_basic
[07:42:27] [PASSED] ttm_resource_manager_set_used_basic
[07:42:27] [PASSED] ttm_sys_man_alloc_basic
[07:42:27] [PASSED] ttm_sys_man_free_basic
[07:42:27] ================== [PASSED] ttm_resource ===================
[07:42:27] =================== ttm_tt (15 subtests) ===================
[07:42:27] ==================== ttm_tt_init_basic  ====================
[07:42:27] [PASSED] Page-aligned size
[07:42:27] [PASSED] Extra pages requested
[07:42:27] ================ [PASSED] ttm_tt_init_basic ================
[07:42:27] [PASSED] ttm_tt_init_misaligned
[07:42:27] [PASSED] ttm_tt_fini_basic
[07:42:27] [PASSED] ttm_tt_fini_sg
[07:42:27] [PASSED] ttm_tt_fini_shmem
[07:42:27] [PASSED] ttm_tt_create_basic
[07:42:27] [PASSED] ttm_tt_create_invalid_bo_type
[07:42:27] [PASSED] ttm_tt_create_ttm_exists
[07:42:27] [PASSED] ttm_tt_create_failed
[07:42:27] [PASSED] ttm_tt_destroy_basic
[07:42:27] [PASSED] ttm_tt_populate_null_ttm
[07:42:27] [PASSED] ttm_tt_populate_populated_ttm
[07:42:27] [PASSED] ttm_tt_unpopulate_basic
[07:42:27] [PASSED] ttm_tt_unpopulate_empty_ttm
[07:42:27] [PASSED] ttm_tt_swapin_basic
[07:42:27] ===================== [PASSED] ttm_tt ======================
[07:42:27] =================== ttm_bo (14 subtests) ===================
[07:42:27] =========== ttm_bo_reserve_optimistic_no_ticket  ===========
[07:42:27] [PASSED] Cannot be interrupted and sleeps
[07:42:27] [PASSED] Cannot be interrupted, locks straight away
[07:42:27] [PASSED] Can be interrupted, sleeps
[07:42:27] ======= [PASSED] ttm_bo_reserve_optimistic_no_ticket =======
[07:42:27] [PASSED] ttm_bo_reserve_locked_no_sleep
[07:42:27] [PASSED] ttm_bo_reserve_no_wait_ticket
[07:42:27] [PASSED] ttm_bo_reserve_double_resv
[07:42:27] [PASSED] ttm_bo_reserve_interrupted
[07:42:27] [PASSED] ttm_bo_reserve_deadlock
[07:42:27] [PASSED] ttm_bo_unreserve_basic
[07:42:27] [PASSED] ttm_bo_unreserve_pinned
[07:42:27] [PASSED] ttm_bo_unreserve_bulk
[07:42:27] [PASSED] ttm_bo_fini_basic
[07:42:27] [PASSED] ttm_bo_fini_shared_resv
[07:42:27] [PASSED] ttm_bo_pin_basic
[07:42:27] [PASSED] ttm_bo_pin_unpin_resource
[07:42:27] [PASSED] ttm_bo_multiple_pin_one_unpin
[07:42:27] ===================== [PASSED] ttm_bo ======================
[07:42:27] ============== ttm_bo_validate (21 subtests) ===============
[07:42:27] ============== ttm_bo_init_reserved_sys_man  ===============
[07:42:27] [PASSED] Buffer object for userspace
[07:42:27] [PASSED] Kernel buffer object
[07:42:27] [PASSED] Shared buffer object
[07:42:27] ========== [PASSED] ttm_bo_init_reserved_sys_man ===========
[07:42:27] ============== ttm_bo_init_reserved_mock_man  ==============
[07:42:27] [PASSED] Buffer object for userspace
[07:42:27] [PASSED] Kernel buffer object
[07:42:27] [PASSED] Shared buffer object
[07:42:27] ========== [PASSED] ttm_bo_init_reserved_mock_man ==========
[07:42:27] [PASSED] ttm_bo_init_reserved_resv
[07:42:27] ================== ttm_bo_validate_basic  ==================
[07:42:27] [PASSED] Buffer object for userspace
[07:42:27] [PASSED] Kernel buffer object
[07:42:27] [PASSED] Shared buffer object
[07:42:27] ============== [PASSED] ttm_bo_validate_basic ==============
[07:42:27] [PASSED] ttm_bo_validate_invalid_placement
[07:42:27] ============= ttm_bo_validate_same_placement  ==============
[07:42:27] [PASSED] System manager
[07:42:27] [PASSED] VRAM manager
[07:42:27] ========= [PASSED] ttm_bo_validate_same_placement ==========
[07:42:27] [PASSED] ttm_bo_validate_failed_alloc
[07:42:27] [PASSED] ttm_bo_validate_pinned
[07:42:27] [PASSED] ttm_bo_validate_busy_placement
[07:42:27] ================ ttm_bo_validate_multihop  =================
[07:42:27] [PASSED] Buffer object for userspace
[07:42:27] [PASSED] Kernel buffer object
[07:42:27] [PASSED] Shared buffer object
[07:42:27] ============ [PASSED] ttm_bo_validate_multihop =============
[07:42:27] ========== ttm_bo_validate_no_placement_signaled  ==========
[07:42:27] [PASSED] Buffer object in system domain, no page vector
[07:42:27] [PASSED] Buffer object in system domain with an existing page vector
[07:42:27] ====== [PASSED] ttm_bo_validate_no_placement_signaled ======
[07:42:27] ======== ttm_bo_validate_no_placement_not_signaled  ========
[07:42:27] [PASSED] Buffer object for userspace
[07:42:27] [PASSED] Kernel buffer object
[07:42:27] [PASSED] Shared buffer object
[07:42:27] ==== [PASSED] ttm_bo_validate_no_placement_not_signaled ====
[07:42:27] [PASSED] ttm_bo_validate_move_fence_signaled
[07:42:27] ========= ttm_bo_validate_move_fence_not_signaled  =========
[07:42:27] [PASSED] Waits for GPU
[07:42:27] [PASSED] Tries to lock straight away
[07:42:27] ===== [PASSED] ttm_bo_validate_move_fence_not_signaled =====
[07:42:27] [PASSED] ttm_bo_validate_happy_evict
[07:42:27] [PASSED] ttm_bo_validate_all_pinned_evict
[07:42:27] [PASSED] ttm_bo_validate_allowed_only_evict
[07:42:27] [PASSED] ttm_bo_validate_deleted_evict
[07:42:27] [PASSED] ttm_bo_validate_busy_domain_evict
[07:42:27] [PASSED] ttm_bo_validate_evict_gutting
[07:42:27] [PASSED] ttm_bo_validate_recrusive_evict
stty: 'standard input': Inappropriate ioctl for device
[07:42:27] ================= [PASSED] ttm_bo_validate =================
[07:42:27] ============================================================
[07:42:27] Testing complete. Ran 101 tests: passed: 101
[07:42:27] Elapsed time: 11.163s total, 1.605s configuring, 9.292s building, 0.225s running

+ cleanup
++ stat -c %u:%g /kernel
+ chown -R 1003:1003 /kernel



^ permalink raw reply	[flat|nested] 16+ messages in thread

* ✓ Xe.CI.BAT: success for drm/colorop: Keep colorop state consistent across atomic commits
  2026-02-18  6:57 [PATCH 0/2] drm/colorop: Keep colorop state consistent across atomic commits Chaitanya Kumar Borah
                   ` (2 preceding siblings ...)
  2026-02-18  7:42 ` ✓ CI.KUnit: success for drm/colorop: Keep colorop state consistent across atomic commits Patchwork
@ 2026-02-18  8:15 ` Patchwork
  2026-02-18  8:32 ` ✓ Xe.CI.FULL: " Patchwork
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2026-02-18  8:15 UTC (permalink / raw)
  To: Chaitanya Kumar Borah; +Cc: intel-xe

[-- Attachment #1: Type: text/plain, Size: 885 bytes --]

== Series Details ==

Series: drm/colorop: Keep colorop state consistent across atomic commits
URL   : https://patchwork.freedesktop.org/series/161742/
State : success

== Summary ==

CI Bug Log - changes from xe-4572-fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d_BAT -> xe-pw-161742v1_BAT
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  

Participating hosts (0 -> 0)
------------------------------

  No changes in participating hosts


Changes
-------

  No changes found


Build changes
-------------

  * Linux: xe-4572-fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d -> xe-pw-161742v1

  IGT_8758: 8758
  xe-4572-fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d: fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d
  xe-pw-161742v1: 161742v1

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v1/index.html

[-- Attachment #2: Type: text/html, Size: 1433 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* ✓ Xe.CI.FULL: success for drm/colorop: Keep colorop state consistent across atomic commits
  2026-02-18  6:57 [PATCH 0/2] drm/colorop: Keep colorop state consistent across atomic commits Chaitanya Kumar Borah
                   ` (3 preceding siblings ...)
  2026-02-18  8:15 ` ✓ Xe.CI.BAT: " Patchwork
@ 2026-02-18  8:32 ` Patchwork
  2026-02-18 10:52 ` ✓ CI.KUnit: success for drm/colorop: Keep colorop state consistent across atomic commits (rev2) Patchwork
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2026-02-18  8:32 UTC (permalink / raw)
  To: Chaitanya Kumar Borah; +Cc: intel-xe

[-- Attachment #1: Type: text/plain, Size: 887 bytes --]

== Series Details ==

Series: drm/colorop: Keep colorop state consistent across atomic commits
URL   : https://patchwork.freedesktop.org/series/161742/
State : success

== Summary ==

CI Bug Log - changes from xe-4572-fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d_FULL -> xe-pw-161742v1_FULL
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  

Participating hosts (0 -> 0)
------------------------------

  No changes in participating hosts


Changes
-------

  No changes found


Build changes
-------------

  * Linux: xe-4572-fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d -> xe-pw-161742v1

  IGT_8758: 8758
  xe-4572-fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d: fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d
  xe-pw-161742v1: 161742v1

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v1/index.html

[-- Attachment #2: Type: text/html, Size: 1435 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* ✓ CI.KUnit: success for drm/colorop: Keep colorop state consistent across atomic commits (rev2)
  2026-02-18  6:57 [PATCH 0/2] drm/colorop: Keep colorop state consistent across atomic commits Chaitanya Kumar Borah
                   ` (4 preceding siblings ...)
  2026-02-18  8:32 ` ✓ Xe.CI.FULL: " Patchwork
@ 2026-02-18 10:52 ` Patchwork
  2026-02-18 12:23 ` ✓ Xe.CI.BAT: " Patchwork
                   ` (2 subsequent siblings)
  8 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2026-02-18 10:52 UTC (permalink / raw)
  To: Chaitanya Kumar Borah; +Cc: intel-xe

== Series Details ==

Series: drm/colorop: Keep colorop state consistent across atomic commits (rev2)
URL   : https://patchwork.freedesktop.org/series/161742/
State : success

== Summary ==

+ trap cleanup EXIT
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/xe/.kunitconfig
[10:50:41] Configuring KUnit Kernel ...
Generating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[10:50:46] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48
[10:51:17] Starting KUnit Kernel (1/1)...
[10:51:17] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[10:51:17] ================== guc_buf (11 subtests) ===================
[10:51:17] [PASSED] test_smallest
[10:51:17] [PASSED] test_largest
[10:51:18] [PASSED] test_granular
[10:51:18] [PASSED] test_unique
[10:51:18] [PASSED] test_overlap
[10:51:18] [PASSED] test_reusable
[10:51:18] [PASSED] test_too_big
[10:51:18] [PASSED] test_flush
[10:51:18] [PASSED] test_lookup
[10:51:18] [PASSED] test_data
[10:51:18] [PASSED] test_class
[10:51:18] ===================== [PASSED] guc_buf =====================
[10:51:18] =================== guc_dbm (7 subtests) ===================
[10:51:18] [PASSED] test_empty
[10:51:18] [PASSED] test_default
[10:51:18] ======================== test_size  ========================
[10:51:18] [PASSED] 4
[10:51:18] [PASSED] 8
[10:51:18] [PASSED] 32
[10:51:18] [PASSED] 256
[10:51:18] ==================== [PASSED] test_size ====================
[10:51:18] ======================= test_reuse  ========================
[10:51:18] [PASSED] 4
[10:51:18] [PASSED] 8
[10:51:18] [PASSED] 32
[10:51:18] [PASSED] 256
[10:51:18] =================== [PASSED] test_reuse ====================
[10:51:18] =================== test_range_overlap  ====================
[10:51:18] [PASSED] 4
[10:51:18] [PASSED] 8
[10:51:18] [PASSED] 32
[10:51:18] [PASSED] 256
[10:51:18] =============== [PASSED] test_range_overlap ================
[10:51:18] =================== test_range_compact  ====================
[10:51:18] [PASSED] 4
[10:51:18] [PASSED] 8
[10:51:18] [PASSED] 32
[10:51:18] [PASSED] 256
[10:51:18] =============== [PASSED] test_range_compact ================
[10:51:18] ==================== test_range_spare  =====================
[10:51:18] [PASSED] 4
[10:51:18] [PASSED] 8
[10:51:18] [PASSED] 32
[10:51:18] [PASSED] 256
[10:51:18] ================ [PASSED] test_range_spare =================
[10:51:18] ===================== [PASSED] guc_dbm =====================
[10:51:18] =================== guc_idm (6 subtests) ===================
[10:51:18] [PASSED] bad_init
[10:51:18] [PASSED] no_init
[10:51:18] [PASSED] init_fini
[10:51:18] [PASSED] check_used
[10:51:18] [PASSED] check_quota
[10:51:18] [PASSED] check_all
[10:51:18] ===================== [PASSED] guc_idm =====================
[10:51:18] ================== no_relay (3 subtests) ===================
[10:51:18] [PASSED] xe_drops_guc2pf_if_not_ready
[10:51:18] [PASSED] xe_drops_guc2vf_if_not_ready
[10:51:18] [PASSED] xe_rejects_send_if_not_ready
[10:51:18] ==================== [PASSED] no_relay =====================
[10:51:18] ================== pf_relay (14 subtests) ==================
[10:51:18] [PASSED] pf_rejects_guc2pf_too_short
[10:51:18] [PASSED] pf_rejects_guc2pf_too_long
[10:51:18] [PASSED] pf_rejects_guc2pf_no_payload
[10:51:18] [PASSED] pf_fails_no_payload
[10:51:18] [PASSED] pf_fails_bad_origin
[10:51:18] [PASSED] pf_fails_bad_type
[10:51:18] [PASSED] pf_txn_reports_error
[10:51:18] [PASSED] pf_txn_sends_pf2guc
[10:51:18] [PASSED] pf_sends_pf2guc
[10:51:18] [SKIPPED] pf_loopback_nop
[10:51:18] [SKIPPED] pf_loopback_echo
[10:51:18] [SKIPPED] pf_loopback_fail
[10:51:18] [SKIPPED] pf_loopback_busy
[10:51:18] [SKIPPED] pf_loopback_retry
[10:51:18] ==================== [PASSED] pf_relay =====================
[10:51:18] ================== vf_relay (3 subtests) ===================
[10:51:18] [PASSED] vf_rejects_guc2vf_too_short
[10:51:18] [PASSED] vf_rejects_guc2vf_too_long
[10:51:18] [PASSED] vf_rejects_guc2vf_no_payload
[10:51:18] ==================== [PASSED] vf_relay =====================
[10:51:18] ================ pf_gt_config (6 subtests) =================
[10:51:18] [PASSED] fair_contexts_1vf
[10:51:18] [PASSED] fair_doorbells_1vf
[10:51:18] [PASSED] fair_ggtt_1vf
[10:51:18] ====================== fair_contexts  ======================
[10:51:18] [PASSED] 1 VF
[10:51:18] [PASSED] 2 VFs
[10:51:18] [PASSED] 3 VFs
[10:51:18] [PASSED] 4 VFs
[10:51:18] [PASSED] 5 VFs
[10:51:18] [PASSED] 6 VFs
[10:51:18] [PASSED] 7 VFs
[10:51:18] [PASSED] 8 VFs
[10:51:18] [PASSED] 9 VFs
[10:51:18] [PASSED] 10 VFs
[10:51:18] [PASSED] 11 VFs
[10:51:18] [PASSED] 12 VFs
[10:51:18] [PASSED] 13 VFs
[10:51:18] [PASSED] 14 VFs
[10:51:18] [PASSED] 15 VFs
[10:51:18] [PASSED] 16 VFs
[10:51:18] [PASSED] 17 VFs
[10:51:18] [PASSED] 18 VFs
[10:51:18] [PASSED] 19 VFs
[10:51:18] [PASSED] 20 VFs
[10:51:18] [PASSED] 21 VFs
[10:51:18] [PASSED] 22 VFs
[10:51:18] [PASSED] 23 VFs
[10:51:18] [PASSED] 24 VFs
[10:51:18] [PASSED] 25 VFs
[10:51:18] [PASSED] 26 VFs
[10:51:18] [PASSED] 27 VFs
[10:51:18] [PASSED] 28 VFs
[10:51:18] [PASSED] 29 VFs
[10:51:18] [PASSED] 30 VFs
[10:51:18] [PASSED] 31 VFs
[10:51:18] [PASSED] 32 VFs
[10:51:18] [PASSED] 33 VFs
[10:51:18] [PASSED] 34 VFs
[10:51:18] [PASSED] 35 VFs
[10:51:18] [PASSED] 36 VFs
[10:51:18] [PASSED] 37 VFs
[10:51:18] [PASSED] 38 VFs
[10:51:18] [PASSED] 39 VFs
[10:51:18] [PASSED] 40 VFs
[10:51:18] [PASSED] 41 VFs
[10:51:18] [PASSED] 42 VFs
[10:51:18] [PASSED] 43 VFs
[10:51:18] [PASSED] 44 VFs
[10:51:18] [PASSED] 45 VFs
[10:51:18] [PASSED] 46 VFs
[10:51:18] [PASSED] 47 VFs
[10:51:18] [PASSED] 48 VFs
[10:51:18] [PASSED] 49 VFs
[10:51:18] [PASSED] 50 VFs
[10:51:18] [PASSED] 51 VFs
[10:51:18] [PASSED] 52 VFs
[10:51:18] [PASSED] 53 VFs
[10:51:18] [PASSED] 54 VFs
[10:51:18] [PASSED] 55 VFs
[10:51:18] [PASSED] 56 VFs
[10:51:18] [PASSED] 57 VFs
[10:51:18] [PASSED] 58 VFs
[10:51:18] [PASSED] 59 VFs
[10:51:18] [PASSED] 60 VFs
[10:51:18] [PASSED] 61 VFs
[10:51:18] [PASSED] 62 VFs
[10:51:18] [PASSED] 63 VFs
[10:51:18] ================== [PASSED] fair_contexts ==================
[10:51:18] ===================== fair_doorbells  ======================
[10:51:18] [PASSED] 1 VF
[10:51:18] [PASSED] 2 VFs
[10:51:18] [PASSED] 3 VFs
[10:51:18] [PASSED] 4 VFs
[10:51:18] [PASSED] 5 VFs
[10:51:18] [PASSED] 6 VFs
[10:51:18] [PASSED] 7 VFs
[10:51:18] [PASSED] 8 VFs
[10:51:18] [PASSED] 9 VFs
[10:51:18] [PASSED] 10 VFs
[10:51:18] [PASSED] 11 VFs
[10:51:18] [PASSED] 12 VFs
[10:51:18] [PASSED] 13 VFs
[10:51:18] [PASSED] 14 VFs
[10:51:18] [PASSED] 15 VFs
[10:51:18] [PASSED] 16 VFs
[10:51:18] [PASSED] 17 VFs
[10:51:18] [PASSED] 18 VFs
[10:51:18] [PASSED] 19 VFs
[10:51:18] [PASSED] 20 VFs
[10:51:18] [PASSED] 21 VFs
[10:51:18] [PASSED] 22 VFs
[10:51:18] [PASSED] 23 VFs
[10:51:18] [PASSED] 24 VFs
[10:51:18] [PASSED] 25 VFs
[10:51:18] [PASSED] 26 VFs
[10:51:18] [PASSED] 27 VFs
[10:51:18] [PASSED] 28 VFs
[10:51:18] [PASSED] 29 VFs
[10:51:18] [PASSED] 30 VFs
[10:51:18] [PASSED] 31 VFs
[10:51:18] [PASSED] 32 VFs
[10:51:18] [PASSED] 33 VFs
[10:51:18] [PASSED] 34 VFs
[10:51:18] [PASSED] 35 VFs
[10:51:18] [PASSED] 36 VFs
[10:51:18] [PASSED] 37 VFs
[10:51:18] [PASSED] 38 VFs
[10:51:18] [PASSED] 39 VFs
[10:51:18] [PASSED] 40 VFs
[10:51:18] [PASSED] 41 VFs
[10:51:18] [PASSED] 42 VFs
[10:51:18] [PASSED] 43 VFs
[10:51:18] [PASSED] 44 VFs
[10:51:18] [PASSED] 45 VFs
[10:51:18] [PASSED] 46 VFs
[10:51:18] [PASSED] 47 VFs
[10:51:18] [PASSED] 48 VFs
[10:51:18] [PASSED] 49 VFs
[10:51:18] [PASSED] 50 VFs
[10:51:18] [PASSED] 51 VFs
[10:51:18] [PASSED] 52 VFs
[10:51:18] [PASSED] 53 VFs
[10:51:18] [PASSED] 54 VFs
[10:51:18] [PASSED] 55 VFs
[10:51:18] [PASSED] 56 VFs
[10:51:18] [PASSED] 57 VFs
[10:51:18] [PASSED] 58 VFs
[10:51:18] [PASSED] 59 VFs
[10:51:18] [PASSED] 60 VFs
[10:51:18] [PASSED] 61 VFs
[10:51:18] [PASSED] 62 VFs
[10:51:18] [PASSED] 63 VFs
[10:51:18] ================= [PASSED] fair_doorbells ==================
[10:51:18] ======================== fair_ggtt  ========================
[10:51:18] [PASSED] 1 VF
[10:51:18] [PASSED] 2 VFs
[10:51:18] [PASSED] 3 VFs
[10:51:18] [PASSED] 4 VFs
[10:51:18] [PASSED] 5 VFs
[10:51:18] [PASSED] 6 VFs
[10:51:18] [PASSED] 7 VFs
[10:51:18] [PASSED] 8 VFs
[10:51:18] [PASSED] 9 VFs
[10:51:18] [PASSED] 10 VFs
[10:51:18] [PASSED] 11 VFs
[10:51:18] [PASSED] 12 VFs
[10:51:18] [PASSED] 13 VFs
[10:51:18] [PASSED] 14 VFs
[10:51:18] [PASSED] 15 VFs
[10:51:18] [PASSED] 16 VFs
[10:51:18] [PASSED] 17 VFs
[10:51:18] [PASSED] 18 VFs
[10:51:18] [PASSED] 19 VFs
[10:51:18] [PASSED] 20 VFs
[10:51:18] [PASSED] 21 VFs
[10:51:18] [PASSED] 22 VFs
[10:51:18] [PASSED] 23 VFs
[10:51:18] [PASSED] 24 VFs
[10:51:18] [PASSED] 25 VFs
[10:51:18] [PASSED] 26 VFs
[10:51:18] [PASSED] 27 VFs
[10:51:18] [PASSED] 28 VFs
[10:51:18] [PASSED] 29 VFs
[10:51:18] [PASSED] 30 VFs
[10:51:18] [PASSED] 31 VFs
[10:51:18] [PASSED] 32 VFs
[10:51:18] [PASSED] 33 VFs
[10:51:18] [PASSED] 34 VFs
[10:51:18] [PASSED] 35 VFs
[10:51:18] [PASSED] 36 VFs
[10:51:18] [PASSED] 37 VFs
[10:51:18] [PASSED] 38 VFs
[10:51:18] [PASSED] 39 VFs
[10:51:18] [PASSED] 40 VFs
[10:51:18] [PASSED] 41 VFs
[10:51:18] [PASSED] 42 VFs
[10:51:18] [PASSED] 43 VFs
[10:51:18] [PASSED] 44 VFs
[10:51:18] [PASSED] 45 VFs
[10:51:18] [PASSED] 46 VFs
[10:51:18] [PASSED] 47 VFs
[10:51:18] [PASSED] 48 VFs
[10:51:18] [PASSED] 49 VFs
[10:51:18] [PASSED] 50 VFs
[10:51:18] [PASSED] 51 VFs
[10:51:18] [PASSED] 52 VFs
[10:51:18] [PASSED] 53 VFs
[10:51:18] [PASSED] 54 VFs
[10:51:18] [PASSED] 55 VFs
[10:51:18] [PASSED] 56 VFs
[10:51:18] [PASSED] 57 VFs
[10:51:18] [PASSED] 58 VFs
[10:51:18] [PASSED] 59 VFs
[10:51:18] [PASSED] 60 VFs
[10:51:18] [PASSED] 61 VFs
[10:51:18] [PASSED] 62 VFs
[10:51:18] [PASSED] 63 VFs
[10:51:18] ==================== [PASSED] fair_ggtt ====================
[10:51:18] ================== [PASSED] pf_gt_config ===================
[10:51:18] ===================== lmtt (1 subtest) =====================
[10:51:18] ======================== test_ops  =========================
[10:51:18] [PASSED] 2-level
[10:51:18] [PASSED] multi-level
[10:51:18] ==================== [PASSED] test_ops =====================
[10:51:18] ====================== [PASSED] lmtt =======================
[10:51:18] ================= pf_service (11 subtests) =================
[10:51:18] [PASSED] pf_negotiate_any
[10:51:18] [PASSED] pf_negotiate_base_match
[10:51:18] [PASSED] pf_negotiate_base_newer
[10:51:18] [PASSED] pf_negotiate_base_next
[10:51:18] [SKIPPED] pf_negotiate_base_older
[10:51:18] [PASSED] pf_negotiate_base_prev
[10:51:18] [PASSED] pf_negotiate_latest_match
[10:51:18] [PASSED] pf_negotiate_latest_newer
[10:51:18] [PASSED] pf_negotiate_latest_next
[10:51:18] [SKIPPED] pf_negotiate_latest_older
[10:51:18] [SKIPPED] pf_negotiate_latest_prev
[10:51:18] =================== [PASSED] pf_service ====================
[10:51:18] ================= xe_guc_g2g (2 subtests) ==================
[10:51:18] ============== xe_live_guc_g2g_kunit_default  ==============
[10:51:18] ========= [SKIPPED] xe_live_guc_g2g_kunit_default ==========
[10:51:18] ============== xe_live_guc_g2g_kunit_allmem  ===============
[10:51:18] ========== [SKIPPED] xe_live_guc_g2g_kunit_allmem ==========
[10:51:18] =================== [SKIPPED] xe_guc_g2g ===================
[10:51:18] =================== xe_mocs (2 subtests) ===================
[10:51:18] ================ xe_live_mocs_kernel_kunit  ================
[10:51:18] =========== [SKIPPED] xe_live_mocs_kernel_kunit ============
[10:51:18] ================ xe_live_mocs_reset_kunit  =================
[10:51:18] ============ [SKIPPED] xe_live_mocs_reset_kunit ============
[10:51:18] ==================== [SKIPPED] xe_mocs =====================
[10:51:18] ================= xe_migrate (2 subtests) ==================
[10:51:18] ================= xe_migrate_sanity_kunit  =================
[10:51:18] ============ [SKIPPED] xe_migrate_sanity_kunit =============
[10:51:18] ================== xe_validate_ccs_kunit  ==================
[10:51:18] ============= [SKIPPED] xe_validate_ccs_kunit ==============
[10:51:18] =================== [SKIPPED] xe_migrate ===================
[10:51:18] ================== xe_dma_buf (1 subtest) ==================
[10:51:18] ==================== xe_dma_buf_kunit  =====================
[10:51:18] ================ [SKIPPED] xe_dma_buf_kunit ================
[10:51:18] =================== [SKIPPED] xe_dma_buf ===================
[10:51:18] ================= xe_bo_shrink (1 subtest) =================
[10:51:18] =================== xe_bo_shrink_kunit  ====================
[10:51:18] =============== [SKIPPED] xe_bo_shrink_kunit ===============
[10:51:18] ================== [SKIPPED] xe_bo_shrink ==================
[10:51:18] ==================== xe_bo (2 subtests) ====================
[10:51:18] ================== xe_ccs_migrate_kunit  ===================
[10:51:18] ============== [SKIPPED] xe_ccs_migrate_kunit ==============
[10:51:18] ==================== xe_bo_evict_kunit  ====================
[10:51:18] =============== [SKIPPED] xe_bo_evict_kunit ================
[10:51:18] ===================== [SKIPPED] xe_bo ======================
[10:51:18] ==================== args (13 subtests) ====================
[10:51:18] [PASSED] count_args_test
[10:51:18] [PASSED] call_args_example
[10:51:18] [PASSED] call_args_test
[10:51:18] [PASSED] drop_first_arg_example
[10:51:18] [PASSED] drop_first_arg_test
[10:51:18] [PASSED] first_arg_example
[10:51:18] [PASSED] first_arg_test
[10:51:18] [PASSED] last_arg_example
[10:51:18] [PASSED] last_arg_test
[10:51:18] [PASSED] pick_arg_example
[10:51:18] [PASSED] if_args_example
[10:51:18] [PASSED] if_args_test
[10:51:18] [PASSED] sep_comma_example
[10:51:18] ====================== [PASSED] args =======================
[10:51:18] =================== xe_pci (3 subtests) ====================
[10:51:18] ==================== check_graphics_ip  ====================
[10:51:18] [PASSED] 12.00 Xe_LP
[10:51:18] [PASSED] 12.10 Xe_LP+
[10:51:18] [PASSED] 12.55 Xe_HPG
[10:51:18] [PASSED] 12.60 Xe_HPC
[10:51:18] [PASSED] 12.70 Xe_LPG
[10:51:18] [PASSED] 12.71 Xe_LPG
[10:51:18] [PASSED] 12.74 Xe_LPG+
[10:51:18] [PASSED] 20.01 Xe2_HPG
[10:51:18] [PASSED] 20.02 Xe2_HPG
[10:51:18] [PASSED] 20.04 Xe2_LPG
[10:51:18] [PASSED] 30.00 Xe3_LPG
[10:51:18] [PASSED] 30.01 Xe3_LPG
[10:51:18] [PASSED] 30.03 Xe3_LPG
[10:51:18] [PASSED] 30.04 Xe3_LPG
[10:51:18] [PASSED] 30.05 Xe3_LPG
[10:51:18] [PASSED] 35.10 Xe3p_LPG
[10:51:18] [PASSED] 35.11 Xe3p_XPC
[10:51:18] ================ [PASSED] check_graphics_ip ================
[10:51:18] ===================== check_media_ip  ======================
[10:51:18] [PASSED] 12.00 Xe_M
[10:51:18] [PASSED] 12.55 Xe_HPM
[10:51:18] [PASSED] 13.00 Xe_LPM+
[10:51:18] [PASSED] 13.01 Xe2_HPM
[10:51:18] [PASSED] 20.00 Xe2_LPM
[10:51:18] [PASSED] 30.00 Xe3_LPM
[10:51:18] [PASSED] 30.02 Xe3_LPM
[10:51:18] [PASSED] 35.00 Xe3p_LPM
[10:51:18] [PASSED] 35.03 Xe3p_HPM
[10:51:18] ================= [PASSED] check_media_ip ==================
[10:51:18] =================== check_platform_desc  ===================
[10:51:18] [PASSED] 0x9A60 (TIGERLAKE)
[10:51:18] [PASSED] 0x9A68 (TIGERLAKE)
[10:51:18] [PASSED] 0x9A70 (TIGERLAKE)
[10:51:18] [PASSED] 0x9A40 (TIGERLAKE)
[10:51:18] [PASSED] 0x9A49 (TIGERLAKE)
[10:51:18] [PASSED] 0x9A59 (TIGERLAKE)
[10:51:18] [PASSED] 0x9A78 (TIGERLAKE)
[10:51:18] [PASSED] 0x9AC0 (TIGERLAKE)
[10:51:18] [PASSED] 0x9AC9 (TIGERLAKE)
[10:51:18] [PASSED] 0x9AD9 (TIGERLAKE)
[10:51:18] [PASSED] 0x9AF8 (TIGERLAKE)
[10:51:18] [PASSED] 0x4C80 (ROCKETLAKE)
[10:51:18] [PASSED] 0x4C8A (ROCKETLAKE)
[10:51:18] [PASSED] 0x4C8B (ROCKETLAKE)
[10:51:18] [PASSED] 0x4C8C (ROCKETLAKE)
[10:51:18] [PASSED] 0x4C90 (ROCKETLAKE)
[10:51:18] [PASSED] 0x4C9A (ROCKETLAKE)
[10:51:18] [PASSED] 0x4680 (ALDERLAKE_S)
[10:51:18] [PASSED] 0x4682 (ALDERLAKE_S)
[10:51:18] [PASSED] 0x4688 (ALDERLAKE_S)
[10:51:18] [PASSED] 0x468A (ALDERLAKE_S)
[10:51:18] [PASSED] 0x468B (ALDERLAKE_S)
[10:51:18] [PASSED] 0x4690 (ALDERLAKE_S)
[10:51:18] [PASSED] 0x4692 (ALDERLAKE_S)
[10:51:18] [PASSED] 0x4693 (ALDERLAKE_S)
[10:51:18] [PASSED] 0x46A0 (ALDERLAKE_P)
[10:51:18] [PASSED] 0x46A1 (ALDERLAKE_P)
[10:51:18] [PASSED] 0x46A2 (ALDERLAKE_P)
[10:51:18] [PASSED] 0x46A3 (ALDERLAKE_P)
[10:51:18] [PASSED] 0x46A6 (ALDERLAKE_P)
[10:51:18] [PASSED] 0x46A8 (ALDERLAKE_P)
[10:51:18] [PASSED] 0x46AA (ALDERLAKE_P)
[10:51:18] [PASSED] 0x462A (ALDERLAKE_P)
[10:51:18] [PASSED] 0x4626 (ALDERLAKE_P)
stty: 'standard input': Inappropriate ioctl for device
[10:51:18] [PASSED] 0x4628 (ALDERLAKE_P)
[10:51:18] [PASSED] 0x46B0 (ALDERLAKE_P)
[10:51:18] [PASSED] 0x46B1 (ALDERLAKE_P)
[10:51:18] [PASSED] 0x46B2 (ALDERLAKE_P)
[10:51:18] [PASSED] 0x46B3 (ALDERLAKE_P)
[10:51:18] [PASSED] 0x46C0 (ALDERLAKE_P)
[10:51:18] [PASSED] 0x46C1 (ALDERLAKE_P)
[10:51:18] [PASSED] 0x46C2 (ALDERLAKE_P)
[10:51:18] [PASSED] 0x46C3 (ALDERLAKE_P)
[10:51:18] [PASSED] 0x46D0 (ALDERLAKE_N)
[10:51:18] [PASSED] 0x46D1 (ALDERLAKE_N)
[10:51:18] [PASSED] 0x46D2 (ALDERLAKE_N)
[10:51:18] [PASSED] 0x46D3 (ALDERLAKE_N)
[10:51:18] [PASSED] 0x46D4 (ALDERLAKE_N)
[10:51:18] [PASSED] 0xA721 (ALDERLAKE_P)
[10:51:18] [PASSED] 0xA7A1 (ALDERLAKE_P)
[10:51:18] [PASSED] 0xA7A9 (ALDERLAKE_P)
[10:51:18] [PASSED] 0xA7AC (ALDERLAKE_P)
[10:51:18] [PASSED] 0xA7AD (ALDERLAKE_P)
[10:51:18] [PASSED] 0xA720 (ALDERLAKE_P)
[10:51:18] [PASSED] 0xA7A0 (ALDERLAKE_P)
[10:51:18] [PASSED] 0xA7A8 (ALDERLAKE_P)
[10:51:18] [PASSED] 0xA7AA (ALDERLAKE_P)
[10:51:18] [PASSED] 0xA7AB (ALDERLAKE_P)
[10:51:18] [PASSED] 0xA780 (ALDERLAKE_S)
[10:51:18] [PASSED] 0xA781 (ALDERLAKE_S)
[10:51:18] [PASSED] 0xA782 (ALDERLAKE_S)
[10:51:18] [PASSED] 0xA783 (ALDERLAKE_S)
[10:51:18] [PASSED] 0xA788 (ALDERLAKE_S)
[10:51:18] [PASSED] 0xA789 (ALDERLAKE_S)
[10:51:18] [PASSED] 0xA78A (ALDERLAKE_S)
[10:51:18] [PASSED] 0xA78B (ALDERLAKE_S)
[10:51:18] [PASSED] 0x4905 (DG1)
[10:51:18] [PASSED] 0x4906 (DG1)
[10:51:18] [PASSED] 0x4907 (DG1)
[10:51:18] [PASSED] 0x4908 (DG1)
[10:51:18] [PASSED] 0x4909 (DG1)
[10:51:18] [PASSED] 0x56C0 (DG2)
[10:51:18] [PASSED] 0x56C2 (DG2)
[10:51:18] [PASSED] 0x56C1 (DG2)
[10:51:18] [PASSED] 0x7D51 (METEORLAKE)
[10:51:18] [PASSED] 0x7DD1 (METEORLAKE)
[10:51:18] [PASSED] 0x7D41 (METEORLAKE)
[10:51:18] [PASSED] 0x7D67 (METEORLAKE)
[10:51:18] [PASSED] 0xB640 (METEORLAKE)
[10:51:18] [PASSED] 0x56A0 (DG2)
[10:51:18] [PASSED] 0x56A1 (DG2)
[10:51:18] [PASSED] 0x56A2 (DG2)
[10:51:18] [PASSED] 0x56BE (DG2)
[10:51:18] [PASSED] 0x56BF (DG2)
[10:51:18] [PASSED] 0x5690 (DG2)
[10:51:18] [PASSED] 0x5691 (DG2)
[10:51:18] [PASSED] 0x5692 (DG2)
[10:51:18] [PASSED] 0x56A5 (DG2)
[10:51:18] [PASSED] 0x56A6 (DG2)
[10:51:18] [PASSED] 0x56B0 (DG2)
[10:51:18] [PASSED] 0x56B1 (DG2)
[10:51:18] [PASSED] 0x56BA (DG2)
[10:51:18] [PASSED] 0x56BB (DG2)
[10:51:18] [PASSED] 0x56BC (DG2)
[10:51:18] [PASSED] 0x56BD (DG2)
[10:51:18] [PASSED] 0x5693 (DG2)
[10:51:18] [PASSED] 0x5694 (DG2)
[10:51:18] [PASSED] 0x5695 (DG2)
[10:51:18] [PASSED] 0x56A3 (DG2)
[10:51:18] [PASSED] 0x56A4 (DG2)
[10:51:18] [PASSED] 0x56B2 (DG2)
[10:51:18] [PASSED] 0x56B3 (DG2)
[10:51:18] [PASSED] 0x5696 (DG2)
[10:51:18] [PASSED] 0x5697 (DG2)
[10:51:18] [PASSED] 0xB69 (PVC)
[10:51:18] [PASSED] 0xB6E (PVC)
[10:51:18] [PASSED] 0xBD4 (PVC)
[10:51:18] [PASSED] 0xBD5 (PVC)
[10:51:18] [PASSED] 0xBD6 (PVC)
[10:51:18] [PASSED] 0xBD7 (PVC)
[10:51:18] [PASSED] 0xBD8 (PVC)
[10:51:18] [PASSED] 0xBD9 (PVC)
[10:51:18] [PASSED] 0xBDA (PVC)
[10:51:18] [PASSED] 0xBDB (PVC)
[10:51:18] [PASSED] 0xBE0 (PVC)
[10:51:18] [PASSED] 0xBE1 (PVC)
[10:51:18] [PASSED] 0xBE5 (PVC)
[10:51:18] [PASSED] 0x7D40 (METEORLAKE)
[10:51:18] [PASSED] 0x7D45 (METEORLAKE)
[10:51:18] [PASSED] 0x7D55 (METEORLAKE)
[10:51:18] [PASSED] 0x7D60 (METEORLAKE)
[10:51:18] [PASSED] 0x7DD5 (METEORLAKE)
[10:51:18] [PASSED] 0x6420 (LUNARLAKE)
[10:51:18] [PASSED] 0x64A0 (LUNARLAKE)
[10:51:18] [PASSED] 0x64B0 (LUNARLAKE)
[10:51:18] [PASSED] 0xE202 (BATTLEMAGE)
[10:51:18] [PASSED] 0xE209 (BATTLEMAGE)
[10:51:18] [PASSED] 0xE20B (BATTLEMAGE)
[10:51:18] [PASSED] 0xE20C (BATTLEMAGE)
[10:51:18] [PASSED] 0xE20D (BATTLEMAGE)
[10:51:18] [PASSED] 0xE210 (BATTLEMAGE)
[10:51:18] [PASSED] 0xE211 (BATTLEMAGE)
[10:51:18] [PASSED] 0xE212 (BATTLEMAGE)
[10:51:18] [PASSED] 0xE216 (BATTLEMAGE)
[10:51:18] [PASSED] 0xE220 (BATTLEMAGE)
[10:51:18] [PASSED] 0xE221 (BATTLEMAGE)
[10:51:18] [PASSED] 0xE222 (BATTLEMAGE)
[10:51:18] [PASSED] 0xE223 (BATTLEMAGE)
[10:51:18] [PASSED] 0xB080 (PANTHERLAKE)
[10:51:18] [PASSED] 0xB081 (PANTHERLAKE)
[10:51:18] [PASSED] 0xB082 (PANTHERLAKE)
[10:51:18] [PASSED] 0xB083 (PANTHERLAKE)
[10:51:18] [PASSED] 0xB084 (PANTHERLAKE)
[10:51:18] [PASSED] 0xB085 (PANTHERLAKE)
[10:51:18] [PASSED] 0xB086 (PANTHERLAKE)
[10:51:18] [PASSED] 0xB087 (PANTHERLAKE)
[10:51:18] [PASSED] 0xB08F (PANTHERLAKE)
[10:51:18] [PASSED] 0xB090 (PANTHERLAKE)
[10:51:18] [PASSED] 0xB0A0 (PANTHERLAKE)
[10:51:18] [PASSED] 0xB0B0 (PANTHERLAKE)
[10:51:18] [PASSED] 0xFD80 (PANTHERLAKE)
[10:51:18] [PASSED] 0xFD81 (PANTHERLAKE)
[10:51:18] [PASSED] 0xD740 (NOVALAKE_S)
[10:51:18] [PASSED] 0xD741 (NOVALAKE_S)
[10:51:18] [PASSED] 0xD742 (NOVALAKE_S)
[10:51:18] [PASSED] 0xD743 (NOVALAKE_S)
[10:51:18] [PASSED] 0xD744 (NOVALAKE_S)
[10:51:18] [PASSED] 0xD745 (NOVALAKE_S)
[10:51:18] [PASSED] 0x674C (CRESCENTISLAND)
[10:51:18] [PASSED] 0xD750 (NOVALAKE_P)
[10:51:18] [PASSED] 0xD751 (NOVALAKE_P)
[10:51:18] [PASSED] 0xD752 (NOVALAKE_P)
[10:51:18] [PASSED] 0xD753 (NOVALAKE_P)
[10:51:18] [PASSED] 0xD754 (NOVALAKE_P)
[10:51:18] [PASSED] 0xD755 (NOVALAKE_P)
[10:51:18] [PASSED] 0xD756 (NOVALAKE_P)
[10:51:18] [PASSED] 0xD757 (NOVALAKE_P)
[10:51:18] [PASSED] 0xD75F (NOVALAKE_P)
[10:51:18] =============== [PASSED] check_platform_desc ===============
[10:51:18] ===================== [PASSED] xe_pci ======================
[10:51:18] =================== xe_rtp (2 subtests) ====================
[10:51:18] =============== xe_rtp_process_to_sr_tests  ================
[10:51:18] [PASSED] coalesce-same-reg
[10:51:18] [PASSED] no-match-no-add
[10:51:18] [PASSED] match-or
[10:51:18] [PASSED] match-or-xfail
[10:51:18] [PASSED] no-match-no-add-multiple-rules
[10:51:18] [PASSED] two-regs-two-entries
[10:51:18] [PASSED] clr-one-set-other
[10:51:18] [PASSED] set-field
[10:51:18] [PASSED] conflict-duplicate
[10:51:18] [PASSED] conflict-not-disjoint
[10:51:18] [PASSED] conflict-reg-type
[10:51:18] =========== [PASSED] xe_rtp_process_to_sr_tests ============
[10:51:18] ================== xe_rtp_process_tests  ===================
[10:51:18] [PASSED] active1
[10:51:18] [PASSED] active2
[10:51:18] [PASSED] active-inactive
[10:51:18] [PASSED] inactive-active
[10:51:18] [PASSED] inactive-1st_or_active-inactive
[10:51:18] [PASSED] inactive-2nd_or_active-inactive
[10:51:18] [PASSED] inactive-last_or_active-inactive
[10:51:18] [PASSED] inactive-no_or_active-inactive
[10:51:18] ============== [PASSED] xe_rtp_process_tests ===============
[10:51:18] ===================== [PASSED] xe_rtp ======================
[10:51:18] ==================== xe_wa (1 subtest) =====================
[10:51:18] ======================== xe_wa_gt  =========================
[10:51:18] [PASSED] TIGERLAKE B0
[10:51:18] [PASSED] DG1 A0
[10:51:18] [PASSED] DG1 B0
[10:51:18] [PASSED] ALDERLAKE_S A0
[10:51:18] [PASSED] ALDERLAKE_S B0
[10:51:18] [PASSED] ALDERLAKE_S C0
[10:51:18] [PASSED] ALDERLAKE_S D0
[10:51:18] [PASSED] ALDERLAKE_P A0
[10:51:18] [PASSED] ALDERLAKE_P B0
[10:51:18] [PASSED] ALDERLAKE_P C0
[10:51:18] [PASSED] ALDERLAKE_S RPLS D0
[10:51:18] [PASSED] ALDERLAKE_P RPLU E0
[10:51:18] [PASSED] DG2 G10 C0
[10:51:18] [PASSED] DG2 G11 B1
[10:51:18] [PASSED] DG2 G12 A1
[10:51:18] [PASSED] METEORLAKE 12.70(Xe_LPG) A0 13.00(Xe_LPM+) A0
[10:51:18] [PASSED] METEORLAKE 12.71(Xe_LPG) A0 13.00(Xe_LPM+) A0
[10:51:18] [PASSED] METEORLAKE 12.74(Xe_LPG+) A0 13.00(Xe_LPM+) A0
[10:51:18] [PASSED] LUNARLAKE 20.04(Xe2_LPG) A0 20.00(Xe2_LPM) A0
[10:51:18] [PASSED] LUNARLAKE 20.04(Xe2_LPG) B0 20.00(Xe2_LPM) A0
[10:51:18] [PASSED] BATTLEMAGE 20.01(Xe2_HPG) A0 13.01(Xe2_HPM) A1
[10:51:18] [PASSED] PANTHERLAKE 30.00(Xe3_LPG) A0 30.00(Xe3_LPM) A0
[10:51:18] ==================== [PASSED] xe_wa_gt =====================
[10:51:18] ====================== [PASSED] xe_wa ======================
[10:51:18] ============================================================
[10:51:18] Testing complete. Ran 522 tests: passed: 504, skipped: 18
[10:51:18] Elapsed time: 36.374s total, 4.149s configuring, 31.709s building, 0.472s running

+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/tests/.kunitconfig
[10:51:18] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[10:51:20] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48
[10:51:45] Starting KUnit Kernel (1/1)...
[10:51:45] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[10:51:45] ============ drm_test_pick_cmdline (2 subtests) ============
[10:51:45] [PASSED] drm_test_pick_cmdline_res_1920_1080_60
[10:51:45] =============== drm_test_pick_cmdline_named  ===============
[10:51:45] [PASSED] NTSC
[10:51:45] [PASSED] NTSC-J
[10:51:45] [PASSED] PAL
[10:51:45] [PASSED] PAL-M
[10:51:45] =========== [PASSED] drm_test_pick_cmdline_named ===========
[10:51:45] ============== [PASSED] drm_test_pick_cmdline ==============
[10:51:45] == drm_test_atomic_get_connector_for_encoder (1 subtest) ===
[10:51:45] [PASSED] drm_test_drm_atomic_get_connector_for_encoder
[10:51:45] ==== [PASSED] drm_test_atomic_get_connector_for_encoder ====
[10:51:45] =========== drm_validate_clone_mode (2 subtests) ===========
[10:51:45] ============== drm_test_check_in_clone_mode  ===============
[10:51:45] [PASSED] in_clone_mode
[10:51:45] [PASSED] not_in_clone_mode
[10:51:45] ========== [PASSED] drm_test_check_in_clone_mode ===========
[10:51:45] =============== drm_test_check_valid_clones  ===============
[10:51:45] [PASSED] not_in_clone_mode
[10:51:45] [PASSED] valid_clone
[10:51:45] [PASSED] invalid_clone
[10:51:45] =========== [PASSED] drm_test_check_valid_clones ===========
[10:51:45] ============= [PASSED] drm_validate_clone_mode =============
[10:51:45] ============= drm_validate_modeset (1 subtest) =============
[10:51:45] [PASSED] drm_test_check_connector_changed_modeset
[10:51:45] ============== [PASSED] drm_validate_modeset ===============
[10:51:45] ====== drm_test_bridge_get_current_state (2 subtests) ======
[10:51:45] [PASSED] drm_test_drm_bridge_get_current_state_atomic
[10:51:45] [PASSED] drm_test_drm_bridge_get_current_state_legacy
[10:51:45] ======== [PASSED] drm_test_bridge_get_current_state ========
[10:51:45] ====== drm_test_bridge_helper_reset_crtc (3 subtests) ======
[10:51:45] [PASSED] drm_test_drm_bridge_helper_reset_crtc_atomic
[10:51:45] [PASSED] drm_test_drm_bridge_helper_reset_crtc_atomic_disabled
[10:51:45] [PASSED] drm_test_drm_bridge_helper_reset_crtc_legacy
[10:51:45] ======== [PASSED] drm_test_bridge_helper_reset_crtc ========
[10:51:45] ============== drm_bridge_alloc (2 subtests) ===============
[10:51:45] [PASSED] drm_test_drm_bridge_alloc_basic
[10:51:45] [PASSED] drm_test_drm_bridge_alloc_get_put
[10:51:45] ================ [PASSED] drm_bridge_alloc =================
[10:51:45] ============= drm_cmdline_parser (40 subtests) =============
[10:51:45] [PASSED] drm_test_cmdline_force_d_only
[10:51:45] [PASSED] drm_test_cmdline_force_D_only_dvi
[10:51:45] [PASSED] drm_test_cmdline_force_D_only_hdmi
[10:51:45] [PASSED] drm_test_cmdline_force_D_only_not_digital
[10:51:45] [PASSED] drm_test_cmdline_force_e_only
[10:51:45] [PASSED] drm_test_cmdline_res
[10:51:45] [PASSED] drm_test_cmdline_res_vesa
[10:51:45] [PASSED] drm_test_cmdline_res_vesa_rblank
[10:51:45] [PASSED] drm_test_cmdline_res_rblank
[10:51:45] [PASSED] drm_test_cmdline_res_bpp
[10:51:45] [PASSED] drm_test_cmdline_res_refresh
[10:51:45] [PASSED] drm_test_cmdline_res_bpp_refresh
[10:51:45] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced
[10:51:45] [PASSED] drm_test_cmdline_res_bpp_refresh_margins
[10:51:45] [PASSED] drm_test_cmdline_res_bpp_refresh_force_off
[10:51:45] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on
[10:51:45] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_analog
[10:51:45] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_digital
[10:51:45] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced_margins_force_on
[10:51:45] [PASSED] drm_test_cmdline_res_margins_force_on
[10:51:45] [PASSED] drm_test_cmdline_res_vesa_margins
[10:51:45] [PASSED] drm_test_cmdline_name
[10:51:45] [PASSED] drm_test_cmdline_name_bpp
[10:51:45] [PASSED] drm_test_cmdline_name_option
[10:51:45] [PASSED] drm_test_cmdline_name_bpp_option
[10:51:45] [PASSED] drm_test_cmdline_rotate_0
[10:51:45] [PASSED] drm_test_cmdline_rotate_90
[10:51:45] [PASSED] drm_test_cmdline_rotate_180
[10:51:45] [PASSED] drm_test_cmdline_rotate_270
[10:51:45] [PASSED] drm_test_cmdline_hmirror
[10:51:45] [PASSED] drm_test_cmdline_vmirror
[10:51:45] [PASSED] drm_test_cmdline_margin_options
[10:51:45] [PASSED] drm_test_cmdline_multiple_options
[10:51:45] [PASSED] drm_test_cmdline_bpp_extra_and_option
[10:51:45] [PASSED] drm_test_cmdline_extra_and_option
[10:51:45] [PASSED] drm_test_cmdline_freestanding_options
[10:51:45] [PASSED] drm_test_cmdline_freestanding_force_e_and_options
[10:51:45] [PASSED] drm_test_cmdline_panel_orientation
[10:51:45] ================ drm_test_cmdline_invalid  =================
[10:51:45] [PASSED] margin_only
[10:51:45] [PASSED] interlace_only
[10:51:45] [PASSED] res_missing_x
[10:51:45] [PASSED] res_missing_y
[10:51:45] [PASSED] res_bad_y
[10:51:45] [PASSED] res_missing_y_bpp
[10:51:45] [PASSED] res_bad_bpp
[10:51:45] [PASSED] res_bad_refresh
[10:51:45] [PASSED] res_bpp_refresh_force_on_off
[10:51:45] [PASSED] res_invalid_mode
[10:51:45] [PASSED] res_bpp_wrong_place_mode
[10:51:45] [PASSED] name_bpp_refresh
[10:51:45] [PASSED] name_refresh
[10:51:45] [PASSED] name_refresh_wrong_mode
[10:51:45] [PASSED] name_refresh_invalid_mode
[10:51:45] [PASSED] rotate_multiple
[10:51:45] [PASSED] rotate_invalid_val
[10:51:45] [PASSED] rotate_truncated
[10:51:45] [PASSED] invalid_option
[10:51:45] [PASSED] invalid_tv_option
[10:51:45] [PASSED] truncated_tv_option
[10:51:45] ============ [PASSED] drm_test_cmdline_invalid =============
[10:51:45] =============== drm_test_cmdline_tv_options  ===============
[10:51:45] [PASSED] NTSC
[10:51:45] [PASSED] NTSC_443
[10:51:45] [PASSED] NTSC_J
[10:51:45] [PASSED] PAL
[10:51:45] [PASSED] PAL_M
[10:51:45] [PASSED] PAL_N
[10:51:45] [PASSED] SECAM
[10:51:45] [PASSED] MONO_525
[10:51:45] [PASSED] MONO_625
[10:51:45] =========== [PASSED] drm_test_cmdline_tv_options ===========
[10:51:45] =============== [PASSED] drm_cmdline_parser ================
[10:51:45] ========== drmm_connector_hdmi_init (20 subtests) ==========
[10:51:45] [PASSED] drm_test_connector_hdmi_init_valid
[10:51:45] [PASSED] drm_test_connector_hdmi_init_bpc_8
[10:51:45] [PASSED] drm_test_connector_hdmi_init_bpc_10
[10:51:45] [PASSED] drm_test_connector_hdmi_init_bpc_12
[10:51:45] [PASSED] drm_test_connector_hdmi_init_bpc_invalid
[10:51:45] [PASSED] drm_test_connector_hdmi_init_bpc_null
[10:51:45] [PASSED] drm_test_connector_hdmi_init_formats_empty
[10:51:45] [PASSED] drm_test_connector_hdmi_init_formats_no_rgb
[10:51:45] === drm_test_connector_hdmi_init_formats_yuv420_allowed  ===
[10:51:45] [PASSED] supported_formats=0x9 yuv420_allowed=1
[10:51:45] [PASSED] supported_formats=0x9 yuv420_allowed=0
[10:51:45] [PASSED] supported_formats=0x3 yuv420_allowed=1
[10:51:45] [PASSED] supported_formats=0x3 yuv420_allowed=0
[10:51:45] === [PASSED] drm_test_connector_hdmi_init_formats_yuv420_allowed ===
[10:51:45] [PASSED] drm_test_connector_hdmi_init_null_ddc
[10:51:45] [PASSED] drm_test_connector_hdmi_init_null_product
[10:51:45] [PASSED] drm_test_connector_hdmi_init_null_vendor
[10:51:45] [PASSED] drm_test_connector_hdmi_init_product_length_exact
[10:51:45] [PASSED] drm_test_connector_hdmi_init_product_length_too_long
[10:51:45] [PASSED] drm_test_connector_hdmi_init_product_valid
[10:51:45] [PASSED] drm_test_connector_hdmi_init_vendor_length_exact
[10:51:45] [PASSED] drm_test_connector_hdmi_init_vendor_length_too_long
[10:51:45] [PASSED] drm_test_connector_hdmi_init_vendor_valid
[10:51:45] ========= drm_test_connector_hdmi_init_type_valid  =========
[10:51:45] [PASSED] HDMI-A
[10:51:45] [PASSED] HDMI-B
[10:51:45] ===== [PASSED] drm_test_connector_hdmi_init_type_valid =====
[10:51:45] ======== drm_test_connector_hdmi_init_type_invalid  ========
[10:51:45] [PASSED] Unknown
[10:51:45] [PASSED] VGA
[10:51:45] [PASSED] DVI-I
[10:51:45] [PASSED] DVI-D
[10:51:45] [PASSED] DVI-A
[10:51:45] [PASSED] Composite
[10:51:45] [PASSED] SVIDEO
[10:51:45] [PASSED] LVDS
[10:51:45] [PASSED] Component
[10:51:45] [PASSED] DIN
[10:51:45] [PASSED] DP
[10:51:45] [PASSED] TV
[10:51:45] [PASSED] eDP
[10:51:45] [PASSED] Virtual
[10:51:45] [PASSED] DSI
[10:51:45] [PASSED] DPI
[10:51:45] [PASSED] Writeback
[10:51:45] [PASSED] SPI
[10:51:45] [PASSED] USB
[10:51:45] ==== [PASSED] drm_test_connector_hdmi_init_type_invalid ====
[10:51:45] ============ [PASSED] drmm_connector_hdmi_init =============
[10:51:45] ============= drmm_connector_init (3 subtests) =============
[10:51:45] [PASSED] drm_test_drmm_connector_init
[10:51:45] [PASSED] drm_test_drmm_connector_init_null_ddc
[10:51:45] ========= drm_test_drmm_connector_init_type_valid  =========
[10:51:45] [PASSED] Unknown
[10:51:45] [PASSED] VGA
[10:51:45] [PASSED] DVI-I
[10:51:45] [PASSED] DVI-D
[10:51:45] [PASSED] DVI-A
[10:51:45] [PASSED] Composite
[10:51:45] [PASSED] SVIDEO
[10:51:45] [PASSED] LVDS
[10:51:45] [PASSED] Component
[10:51:45] [PASSED] DIN
[10:51:45] [PASSED] DP
[10:51:45] [PASSED] HDMI-A
[10:51:45] [PASSED] HDMI-B
[10:51:45] [PASSED] TV
[10:51:45] [PASSED] eDP
[10:51:45] [PASSED] Virtual
[10:51:45] [PASSED] DSI
[10:51:45] [PASSED] DPI
[10:51:45] [PASSED] Writeback
[10:51:45] [PASSED] SPI
[10:51:45] [PASSED] USB
[10:51:45] ===== [PASSED] drm_test_drmm_connector_init_type_valid =====
[10:51:45] =============== [PASSED] drmm_connector_init ===============
[10:51:45] ========= drm_connector_dynamic_init (6 subtests) ==========
[10:51:45] [PASSED] drm_test_drm_connector_dynamic_init
[10:51:45] [PASSED] drm_test_drm_connector_dynamic_init_null_ddc
[10:51:45] [PASSED] drm_test_drm_connector_dynamic_init_not_added
[10:51:45] [PASSED] drm_test_drm_connector_dynamic_init_properties
[10:51:45] ===== drm_test_drm_connector_dynamic_init_type_valid  ======
[10:51:45] [PASSED] Unknown
[10:51:45] [PASSED] VGA
[10:51:45] [PASSED] DVI-I
[10:51:45] [PASSED] DVI-D
[10:51:45] [PASSED] DVI-A
[10:51:45] [PASSED] Composite
[10:51:45] [PASSED] SVIDEO
[10:51:45] [PASSED] LVDS
[10:51:45] [PASSED] Component
[10:51:45] [PASSED] DIN
[10:51:45] [PASSED] DP
[10:51:45] [PASSED] HDMI-A
[10:51:45] [PASSED] HDMI-B
[10:51:45] [PASSED] TV
[10:51:45] [PASSED] eDP
[10:51:45] [PASSED] Virtual
[10:51:45] [PASSED] DSI
[10:51:45] [PASSED] DPI
[10:51:45] [PASSED] Writeback
[10:51:45] [PASSED] SPI
[10:51:45] [PASSED] USB
[10:51:45] = [PASSED] drm_test_drm_connector_dynamic_init_type_valid ==
[10:51:45] ======== drm_test_drm_connector_dynamic_init_name  =========
[10:51:45] [PASSED] Unknown
[10:51:45] [PASSED] VGA
[10:51:45] [PASSED] DVI-I
[10:51:45] [PASSED] DVI-D
[10:51:45] [PASSED] DVI-A
[10:51:45] [PASSED] Composite
[10:51:45] [PASSED] SVIDEO
[10:51:45] [PASSED] LVDS
[10:51:45] [PASSED] Component
[10:51:45] [PASSED] DIN
[10:51:45] [PASSED] DP
[10:51:45] [PASSED] HDMI-A
[10:51:45] [PASSED] HDMI-B
[10:51:45] [PASSED] TV
[10:51:45] [PASSED] eDP
[10:51:45] [PASSED] Virtual
[10:51:45] [PASSED] DSI
[10:51:45] [PASSED] DPI
[10:51:45] [PASSED] Writeback
[10:51:45] [PASSED] SPI
[10:51:45] [PASSED] USB
[10:51:45] ==== [PASSED] drm_test_drm_connector_dynamic_init_name =====
[10:51:45] =========== [PASSED] drm_connector_dynamic_init ============
[10:51:45] ==== drm_connector_dynamic_register_early (4 subtests) =====
[10:51:45] [PASSED] drm_test_drm_connector_dynamic_register_early_on_list
[10:51:45] [PASSED] drm_test_drm_connector_dynamic_register_early_defer
[10:51:45] [PASSED] drm_test_drm_connector_dynamic_register_early_no_init
[10:51:45] [PASSED] drm_test_drm_connector_dynamic_register_early_no_mode_object
[10:51:45] ====== [PASSED] drm_connector_dynamic_register_early =======
[10:51:45] ======= drm_connector_dynamic_register (7 subtests) ========
[10:51:45] [PASSED] drm_test_drm_connector_dynamic_register_on_list
[10:51:45] [PASSED] drm_test_drm_connector_dynamic_register_no_defer
[10:51:45] [PASSED] drm_test_drm_connector_dynamic_register_no_init
[10:51:45] [PASSED] drm_test_drm_connector_dynamic_register_mode_object
[10:51:45] [PASSED] drm_test_drm_connector_dynamic_register_sysfs
[10:51:45] [PASSED] drm_test_drm_connector_dynamic_register_sysfs_name
[10:51:45] [PASSED] drm_test_drm_connector_dynamic_register_debugfs
[10:51:45] ========= [PASSED] drm_connector_dynamic_register ==========
[10:51:45] = drm_connector_attach_broadcast_rgb_property (2 subtests) =
[10:51:45] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property
[10:51:45] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property_hdmi_connector
[10:51:45] === [PASSED] drm_connector_attach_broadcast_rgb_property ===
[10:51:45] ========== drm_get_tv_mode_from_name (2 subtests) ==========
[10:51:45] ========== drm_test_get_tv_mode_from_name_valid  ===========
[10:51:45] [PASSED] NTSC
[10:51:45] [PASSED] NTSC-443
[10:51:45] [PASSED] NTSC-J
[10:51:45] [PASSED] PAL
[10:51:45] [PASSED] PAL-M
[10:51:45] [PASSED] PAL-N
[10:51:45] [PASSED] SECAM
[10:51:45] [PASSED] Mono
[10:51:45] ====== [PASSED] drm_test_get_tv_mode_from_name_valid =======
[10:51:45] [PASSED] drm_test_get_tv_mode_from_name_truncated
[10:51:45] ============ [PASSED] drm_get_tv_mode_from_name ============
[10:51:45] = drm_test_connector_hdmi_compute_mode_clock (12 subtests) =
[10:51:45] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb
[10:51:45] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc
[10:51:45] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc_vic_1
[10:51:45] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc
[10:51:45] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc_vic_1
[10:51:45] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_double
[10:51:45] = drm_test_connector_hdmi_compute_mode_clock_yuv420_valid  =
[10:51:45] [PASSED] VIC 96
[10:51:45] [PASSED] VIC 97
[10:51:45] [PASSED] VIC 101
[10:51:45] [PASSED] VIC 102
[10:51:45] [PASSED] VIC 106
[10:51:45] [PASSED] VIC 107
[10:51:45] === [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_valid ===
[10:51:45] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_10_bpc
[10:51:45] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_12_bpc
[10:51:45] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_8_bpc
[10:51:45] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_10_bpc
[10:51:45] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_12_bpc
[10:51:45] === [PASSED] drm_test_connector_hdmi_compute_mode_clock ====
[10:51:45] == drm_hdmi_connector_get_broadcast_rgb_name (2 subtests) ==
[10:51:45] === drm_test_drm_hdmi_connector_get_broadcast_rgb_name  ====
[10:51:45] [PASSED] Automatic
[10:51:45] [PASSED] Full
[10:51:45] [PASSED] Limited 16:235
[10:51:45] === [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name ===
[10:51:45] [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name_invalid
[10:51:45] ==== [PASSED] drm_hdmi_connector_get_broadcast_rgb_name ====
[10:51:45] == drm_hdmi_connector_get_output_format_name (2 subtests) ==
[10:51:45] === drm_test_drm_hdmi_connector_get_output_format_name  ====
[10:51:45] [PASSED] RGB
[10:51:45] [PASSED] YUV 4:2:0
[10:51:45] [PASSED] YUV 4:2:2
[10:51:45] [PASSED] YUV 4:4:4
[10:51:45] === [PASSED] drm_test_drm_hdmi_connector_get_output_format_name ===
[10:51:45] [PASSED] drm_test_drm_hdmi_connector_get_output_format_name_invalid
[10:51:45] ==== [PASSED] drm_hdmi_connector_get_output_format_name ====
[10:51:45] ============= drm_damage_helper (21 subtests) ==============
[10:51:45] [PASSED] drm_test_damage_iter_no_damage
[10:51:45] [PASSED] drm_test_damage_iter_no_damage_fractional_src
[10:51:45] [PASSED] drm_test_damage_iter_no_damage_src_moved
[10:51:45] [PASSED] drm_test_damage_iter_no_damage_fractional_src_moved
[10:51:45] [PASSED] drm_test_damage_iter_no_damage_not_visible
[10:51:45] [PASSED] drm_test_damage_iter_no_damage_no_crtc
[10:51:45] [PASSED] drm_test_damage_iter_no_damage_no_fb
[10:51:45] [PASSED] drm_test_damage_iter_simple_damage
[10:51:45] [PASSED] drm_test_damage_iter_single_damage
[10:51:45] [PASSED] drm_test_damage_iter_single_damage_intersect_src
[10:51:45] [PASSED] drm_test_damage_iter_single_damage_outside_src
[10:51:45] [PASSED] drm_test_damage_iter_single_damage_fractional_src
[10:51:45] [PASSED] drm_test_damage_iter_single_damage_intersect_fractional_src
[10:51:45] [PASSED] drm_test_damage_iter_single_damage_outside_fractional_src
[10:51:45] [PASSED] drm_test_damage_iter_single_damage_src_moved
[10:51:45] [PASSED] drm_test_damage_iter_single_damage_fractional_src_moved
[10:51:45] [PASSED] drm_test_damage_iter_damage
[10:51:45] [PASSED] drm_test_damage_iter_damage_one_intersect
[10:51:45] [PASSED] drm_test_damage_iter_damage_one_outside
[10:51:45] [PASSED] drm_test_damage_iter_damage_src_moved
[10:51:45] [PASSED] drm_test_damage_iter_damage_not_visible
[10:51:45] ================ [PASSED] drm_damage_helper ================
[10:51:45] ============== drm_dp_mst_helper (3 subtests) ==============
[10:51:45] ============== drm_test_dp_mst_calc_pbn_mode  ==============
[10:51:45] [PASSED] Clock 154000 BPP 30 DSC disabled
[10:51:45] [PASSED] Clock 234000 BPP 30 DSC disabled
[10:51:45] [PASSED] Clock 297000 BPP 24 DSC disabled
[10:51:45] [PASSED] Clock 332880 BPP 24 DSC enabled
[10:51:45] [PASSED] Clock 324540 BPP 24 DSC enabled
[10:51:45] ========== [PASSED] drm_test_dp_mst_calc_pbn_mode ==========
[10:51:45] ============== drm_test_dp_mst_calc_pbn_div  ===============
[10:51:45] [PASSED] Link rate 2000000 lane count 4
[10:51:45] [PASSED] Link rate 2000000 lane count 2
[10:51:45] [PASSED] Link rate 2000000 lane count 1
[10:51:45] [PASSED] Link rate 1350000 lane count 4
[10:51:45] [PASSED] Link rate 1350000 lane count 2
[10:51:45] [PASSED] Link rate 1350000 lane count 1
[10:51:45] [PASSED] Link rate 1000000 lane count 4
[10:51:45] [PASSED] Link rate 1000000 lane count 2
[10:51:45] [PASSED] Link rate 1000000 lane count 1
[10:51:45] [PASSED] Link rate 810000 lane count 4
[10:51:45] [PASSED] Link rate 810000 lane count 2
[10:51:45] [PASSED] Link rate 810000 lane count 1
[10:51:45] [PASSED] Link rate 540000 lane count 4
[10:51:45] [PASSED] Link rate 540000 lane count 2
[10:51:45] [PASSED] Link rate 540000 lane count 1
[10:51:45] [PASSED] Link rate 270000 lane count 4
[10:51:45] [PASSED] Link rate 270000 lane count 2
[10:51:45] [PASSED] Link rate 270000 lane count 1
[10:51:45] [PASSED] Link rate 162000 lane count 4
[10:51:45] [PASSED] Link rate 162000 lane count 2
[10:51:45] [PASSED] Link rate 162000 lane count 1
[10:51:45] ========== [PASSED] drm_test_dp_mst_calc_pbn_div ===========
[10:51:45] ========= drm_test_dp_mst_sideband_msg_req_decode  =========
[10:51:45] [PASSED] DP_ENUM_PATH_RESOURCES with port number
[10:51:45] [PASSED] DP_POWER_UP_PHY with port number
[10:51:45] [PASSED] DP_POWER_DOWN_PHY with port number
[10:51:45] [PASSED] DP_ALLOCATE_PAYLOAD with SDP stream sinks
[10:51:45] [PASSED] DP_ALLOCATE_PAYLOAD with port number
[10:51:45] [PASSED] DP_ALLOCATE_PAYLOAD with VCPI
[10:51:45] [PASSED] DP_ALLOCATE_PAYLOAD with PBN
[10:51:45] [PASSED] DP_QUERY_PAYLOAD with port number
[10:51:45] [PASSED] DP_QUERY_PAYLOAD with VCPI
[10:51:45] [PASSED] DP_REMOTE_DPCD_READ with port number
[10:51:45] [PASSED] DP_REMOTE_DPCD_READ with DPCD address
[10:51:45] [PASSED] DP_REMOTE_DPCD_READ with max number of bytes
[10:51:45] [PASSED] DP_REMOTE_DPCD_WRITE with port number
[10:51:45] [PASSED] DP_REMOTE_DPCD_WRITE with DPCD address
[10:51:45] [PASSED] DP_REMOTE_DPCD_WRITE with data array
[10:51:45] [PASSED] DP_REMOTE_I2C_READ with port number
[10:51:45] [PASSED] DP_REMOTE_I2C_READ with I2C device ID
[10:51:45] [PASSED] DP_REMOTE_I2C_READ with transactions array
[10:51:45] [PASSED] DP_REMOTE_I2C_WRITE with port number
[10:51:45] [PASSED] DP_REMOTE_I2C_WRITE with I2C device ID
[10:51:45] [PASSED] DP_REMOTE_I2C_WRITE with data array
[10:51:45] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream ID
[10:51:45] [PASSED] DP_QUERY_STREAM_ENC_STATUS with client ID
[10:51:45] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream event
[10:51:45] [PASSED] DP_QUERY_STREAM_ENC_STATUS with valid stream event
[10:51:45] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream behavior
[10:51:45] [PASSED] DP_QUERY_STREAM_ENC_STATUS with a valid stream behavior
[10:51:45] ===== [PASSED] drm_test_dp_mst_sideband_msg_req_decode =====
[10:51:45] ================ [PASSED] drm_dp_mst_helper ================
[10:51:45] ================== drm_exec (7 subtests) ===================
[10:51:45] [PASSED] sanitycheck
[10:51:45] [PASSED] test_lock
[10:51:45] [PASSED] test_lock_unlock
[10:51:45] [PASSED] test_duplicates
[10:51:45] [PASSED] test_prepare
[10:51:45] [PASSED] test_prepare_array
[10:51:45] [PASSED] test_multiple_loops
[10:51:45] ==================== [PASSED] drm_exec =====================
[10:51:45] =========== drm_format_helper_test (17 subtests) ===========
[10:51:45] ============== drm_test_fb_xrgb8888_to_gray8  ==============
[10:51:45] [PASSED] single_pixel_source_buffer
[10:51:45] [PASSED] single_pixel_clip_rectangle
[10:51:45] [PASSED] well_known_colors
[10:51:45] [PASSED] destination_pitch
[10:51:45] ========== [PASSED] drm_test_fb_xrgb8888_to_gray8 ==========
[10:51:45] ============= drm_test_fb_xrgb8888_to_rgb332  ==============
[10:51:45] [PASSED] single_pixel_source_buffer
[10:51:45] [PASSED] single_pixel_clip_rectangle
[10:51:45] [PASSED] well_known_colors
[10:51:45] [PASSED] destination_pitch
[10:51:45] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb332 ==========
[10:51:45] ============= drm_test_fb_xrgb8888_to_rgb565  ==============
[10:51:45] [PASSED] single_pixel_source_buffer
[10:51:45] [PASSED] single_pixel_clip_rectangle
[10:51:45] [PASSED] well_known_colors
[10:51:45] [PASSED] destination_pitch
[10:51:45] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb565 ==========
[10:51:45] ============ drm_test_fb_xrgb8888_to_xrgb1555  =============
[10:51:45] [PASSED] single_pixel_source_buffer
[10:51:45] [PASSED] single_pixel_clip_rectangle
[10:51:45] [PASSED] well_known_colors
[10:51:45] [PASSED] destination_pitch
[10:51:45] ======== [PASSED] drm_test_fb_xrgb8888_to_xrgb1555 =========
[10:51:45] ============ drm_test_fb_xrgb8888_to_argb1555  =============
[10:51:45] [PASSED] single_pixel_source_buffer
[10:51:45] [PASSED] single_pixel_clip_rectangle
[10:51:45] [PASSED] well_known_colors
[10:51:45] [PASSED] destination_pitch
[10:51:45] ======== [PASSED] drm_test_fb_xrgb8888_to_argb1555 =========
[10:51:45] ============ drm_test_fb_xrgb8888_to_rgba5551  =============
[10:51:45] [PASSED] single_pixel_source_buffer
[10:51:45] [PASSED] single_pixel_clip_rectangle
[10:51:45] [PASSED] well_known_colors
[10:51:45] [PASSED] destination_pitch
[10:51:45] ======== [PASSED] drm_test_fb_xrgb8888_to_rgba5551 =========
[10:51:45] ============= drm_test_fb_xrgb8888_to_rgb888  ==============
[10:51:45] [PASSED] single_pixel_source_buffer
[10:51:45] [PASSED] single_pixel_clip_rectangle
[10:51:45] [PASSED] well_known_colors
[10:51:45] [PASSED] destination_pitch
[10:51:45] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb888 ==========
[10:51:45] ============= drm_test_fb_xrgb8888_to_bgr888  ==============
[10:51:45] [PASSED] single_pixel_source_buffer
[10:51:45] [PASSED] single_pixel_clip_rectangle
[10:51:45] [PASSED] well_known_colors
[10:51:45] [PASSED] destination_pitch
[10:51:45] ========= [PASSED] drm_test_fb_xrgb8888_to_bgr888 ==========
[10:51:45] ============ drm_test_fb_xrgb8888_to_argb8888  =============
[10:51:45] [PASSED] single_pixel_source_buffer
[10:51:45] [PASSED] single_pixel_clip_rectangle
[10:51:45] [PASSED] well_known_colors
[10:51:45] [PASSED] destination_pitch
[10:51:45] ======== [PASSED] drm_test_fb_xrgb8888_to_argb8888 =========
[10:51:45] =========== drm_test_fb_xrgb8888_to_xrgb2101010  ===========
[10:51:45] [PASSED] single_pixel_source_buffer
[10:51:45] [PASSED] single_pixel_clip_rectangle
[10:51:45] [PASSED] well_known_colors
[10:51:45] [PASSED] destination_pitch
[10:51:45] ======= [PASSED] drm_test_fb_xrgb8888_to_xrgb2101010 =======
[10:51:45] =========== drm_test_fb_xrgb8888_to_argb2101010  ===========
[10:51:45] [PASSED] single_pixel_source_buffer
[10:51:45] [PASSED] single_pixel_clip_rectangle
[10:51:45] [PASSED] well_known_colors
[10:51:45] [PASSED] destination_pitch
[10:51:45] ======= [PASSED] drm_test_fb_xrgb8888_to_argb2101010 =======
[10:51:45] ============== drm_test_fb_xrgb8888_to_mono  ===============
[10:51:45] [PASSED] single_pixel_source_buffer
[10:51:45] [PASSED] single_pixel_clip_rectangle
[10:51:45] [PASSED] well_known_colors
[10:51:45] [PASSED] destination_pitch
[10:51:45] ========== [PASSED] drm_test_fb_xrgb8888_to_mono ===========
[10:51:45] ==================== drm_test_fb_swab  =====================
[10:51:45] [PASSED] single_pixel_source_buffer
[10:51:45] [PASSED] single_pixel_clip_rectangle
[10:51:45] [PASSED] well_known_colors
[10:51:45] [PASSED] destination_pitch
[10:51:45] ================ [PASSED] drm_test_fb_swab =================
[10:51:45] ============ drm_test_fb_xrgb8888_to_xbgr8888  =============
[10:51:45] [PASSED] single_pixel_source_buffer
[10:51:45] [PASSED] single_pixel_clip_rectangle
[10:51:45] [PASSED] well_known_colors
[10:51:45] [PASSED] destination_pitch
[10:51:45] ======== [PASSED] drm_test_fb_xrgb8888_to_xbgr8888 =========
[10:51:45] ============ drm_test_fb_xrgb8888_to_abgr8888  =============
[10:51:45] [PASSED] single_pixel_source_buffer
[10:51:45] [PASSED] single_pixel_clip_rectangle
[10:51:45] [PASSED] well_known_colors
[10:51:45] [PASSED] destination_pitch
[10:51:45] ======== [PASSED] drm_test_fb_xrgb8888_to_abgr8888 =========
[10:51:45] ================= drm_test_fb_clip_offset  =================
[10:51:45] [PASSED] pass through
[10:51:45] [PASSED] horizontal offset
[10:51:45] [PASSED] vertical offset
[10:51:45] [PASSED] horizontal and vertical offset
[10:51:45] [PASSED] horizontal offset (custom pitch)
[10:51:45] [PASSED] vertical offset (custom pitch)
[10:51:45] [PASSED] horizontal and vertical offset (custom pitch)
[10:51:45] ============= [PASSED] drm_test_fb_clip_offset =============
[10:51:45] =================== drm_test_fb_memcpy  ====================
[10:51:45] [PASSED] single_pixel_source_buffer: XR24 little-endian (0x34325258)
[10:51:45] [PASSED] single_pixel_source_buffer: XRA8 little-endian (0x38415258)
[10:51:45] [PASSED] single_pixel_source_buffer: YU24 little-endian (0x34325559)
[10:51:45] [PASSED] single_pixel_clip_rectangle: XB24 little-endian (0x34324258)
[10:51:45] [PASSED] single_pixel_clip_rectangle: XRA8 little-endian (0x38415258)
[10:51:45] [PASSED] single_pixel_clip_rectangle: YU24 little-endian (0x34325559)
[10:51:45] [PASSED] well_known_colors: XB24 little-endian (0x34324258)
[10:51:45] [PASSED] well_known_colors: XRA8 little-endian (0x38415258)
[10:51:45] [PASSED] well_known_colors: YU24 little-endian (0x34325559)
[10:51:45] [PASSED] destination_pitch: XB24 little-endian (0x34324258)
[10:51:45] [PASSED] destination_pitch: XRA8 little-endian (0x38415258)
[10:51:45] [PASSED] destination_pitch: YU24 little-endian (0x34325559)
[10:51:45] =============== [PASSED] drm_test_fb_memcpy ================
[10:51:45] ============= [PASSED] drm_format_helper_test ==============
[10:51:45] ================= drm_format (18 subtests) =================
[10:51:45] [PASSED] drm_test_format_block_width_invalid
[10:51:45] [PASSED] drm_test_format_block_width_one_plane
[10:51:45] [PASSED] drm_test_format_block_width_two_plane
[10:51:45] [PASSED] drm_test_format_block_width_three_plane
[10:51:45] [PASSED] drm_test_format_block_width_tiled
[10:51:45] [PASSED] drm_test_format_block_height_invalid
[10:51:45] [PASSED] drm_test_format_block_height_one_plane
[10:51:45] [PASSED] drm_test_format_block_height_two_plane
[10:51:45] [PASSED] drm_test_format_block_height_three_plane
[10:51:45] [PASSED] drm_test_format_block_height_tiled
[10:51:45] [PASSED] drm_test_format_min_pitch_invalid
[10:51:45] [PASSED] drm_test_format_min_pitch_one_plane_8bpp
[10:51:45] [PASSED] drm_test_format_min_pitch_one_plane_16bpp
[10:51:45] [PASSED] drm_test_format_min_pitch_one_plane_24bpp
[10:51:45] [PASSED] drm_test_format_min_pitch_one_plane_32bpp
[10:51:45] [PASSED] drm_test_format_min_pitch_two_plane
[10:51:45] [PASSED] drm_test_format_min_pitch_three_plane_8bpp
[10:51:45] [PASSED] drm_test_format_min_pitch_tiled
[10:51:45] =================== [PASSED] drm_format ====================
[10:51:45] ============== drm_framebuffer (10 subtests) ===============
[10:51:45] ========== drm_test_framebuffer_check_src_coords  ==========
[10:51:45] [PASSED] Success: source fits into fb
[10:51:45] [PASSED] Fail: overflowing fb with x-axis coordinate
[10:51:45] [PASSED] Fail: overflowing fb with y-axis coordinate
[10:51:45] [PASSED] Fail: overflowing fb with source width
[10:51:45] [PASSED] Fail: overflowing fb with source height
[10:51:45] ====== [PASSED] drm_test_framebuffer_check_src_coords ======
[10:51:45] [PASSED] drm_test_framebuffer_cleanup
[10:51:45] =============== drm_test_framebuffer_create  ===============
[10:51:45] [PASSED] ABGR8888 normal sizes
[10:51:45] [PASSED] ABGR8888 max sizes
[10:51:45] [PASSED] ABGR8888 pitch greater than min required
[10:51:45] [PASSED] ABGR8888 pitch less than min required
[10:51:45] [PASSED] ABGR8888 Invalid width
[10:51:45] [PASSED] ABGR8888 Invalid buffer handle
[10:51:45] [PASSED] No pixel format
[10:51:45] [PASSED] ABGR8888 Width 0
[10:51:45] [PASSED] ABGR8888 Height 0
[10:51:45] [PASSED] ABGR8888 Out of bound height * pitch combination
[10:51:45] [PASSED] ABGR8888 Large buffer offset
[10:51:45] [PASSED] ABGR8888 Buffer offset for inexistent plane
[10:51:45] [PASSED] ABGR8888 Invalid flag
[10:51:45] [PASSED] ABGR8888 Set DRM_MODE_FB_MODIFIERS without modifiers
[10:51:45] [PASSED] ABGR8888 Valid buffer modifier
[10:51:45] [PASSED] ABGR8888 Invalid buffer modifier(DRM_FORMAT_MOD_SAMSUNG_64_32_TILE)
[10:51:45] [PASSED] ABGR8888 Extra pitches without DRM_MODE_FB_MODIFIERS
[10:51:45] [PASSED] ABGR8888 Extra pitches with DRM_MODE_FB_MODIFIERS
[10:51:45] [PASSED] NV12 Normal sizes
[10:51:45] [PASSED] NV12 Max sizes
[10:51:45] [PASSED] NV12 Invalid pitch
[10:51:45] [PASSED] NV12 Invalid modifier/missing DRM_MODE_FB_MODIFIERS flag
[10:51:45] [PASSED] NV12 different  modifier per-plane
[10:51:45] [PASSED] NV12 with DRM_FORMAT_MOD_SAMSUNG_64_32_TILE
[10:51:45] [PASSED] NV12 Valid modifiers without DRM_MODE_FB_MODIFIERS
[10:51:45] [PASSED] NV12 Modifier for inexistent plane
[10:51:45] [PASSED] NV12 Handle for inexistent plane
[10:51:45] [PASSED] NV12 Handle for inexistent plane without DRM_MODE_FB_MODIFIERS
[10:51:45] [PASSED] YVU420 DRM_MODE_FB_MODIFIERS set without modifier
[10:51:45] [PASSED] YVU420 Normal sizes
[10:51:45] [PASSED] YVU420 Max sizes
[10:51:45] [PASSED] YVU420 Invalid pitch
[10:51:45] [PASSED] YVU420 Different pitches
[10:51:45] [PASSED] YVU420 Different buffer offsets/pitches
[10:51:45] [PASSED] YVU420 Modifier set just for plane 0, without DRM_MODE_FB_MODIFIERS
[10:51:45] [PASSED] YVU420 Modifier set just for planes 0, 1, without DRM_MODE_FB_MODIFIERS
[10:51:45] [PASSED] YVU420 Modifier set just for plane 0, 1, with DRM_MODE_FB_MODIFIERS
[10:51:45] [PASSED] YVU420 Valid modifier
[10:51:45] [PASSED] YVU420 Different modifiers per plane
[10:51:45] [PASSED] YVU420 Modifier for inexistent plane
[10:51:45] [PASSED] YUV420_10BIT Invalid modifier(DRM_FORMAT_MOD_LINEAR)
[10:51:45] [PASSED] X0L2 Normal sizes
[10:51:45] [PASSED] X0L2 Max sizes
[10:51:45] [PASSED] X0L2 Invalid pitch
[10:51:45] [PASSED] X0L2 Pitch greater than minimum required
[10:51:45] [PASSED] X0L2 Handle for inexistent plane
[10:51:45] [PASSED] X0L2 Offset for inexistent plane, without DRM_MODE_FB_MODIFIERS set
[10:51:45] [PASSED] X0L2 Modifier without DRM_MODE_FB_MODIFIERS set
[10:51:45] [PASSED] X0L2 Valid modifier
[10:51:45] [PASSED] X0L2 Modifier for inexistent plane
[10:51:45] =========== [PASSED] drm_test_framebuffer_create ===========
[10:51:45] [PASSED] drm_test_framebuffer_free
[10:51:45] [PASSED] drm_test_framebuffer_init
[10:51:45] [PASSED] drm_test_framebuffer_init_bad_format
[10:51:45] [PASSED] drm_test_framebuffer_init_dev_mismatch
[10:51:45] [PASSED] drm_test_framebuffer_lookup
[10:51:45] [PASSED] drm_test_framebuffer_lookup_inexistent
[10:51:45] [PASSED] drm_test_framebuffer_modifiers_not_supported
[10:51:45] ================= [PASSED] drm_framebuffer =================
[10:51:45] ================ drm_gem_shmem (8 subtests) ================
[10:51:45] [PASSED] drm_gem_shmem_test_obj_create
[10:51:45] [PASSED] drm_gem_shmem_test_obj_create_private
[10:51:45] [PASSED] drm_gem_shmem_test_pin_pages
[10:51:45] [PASSED] drm_gem_shmem_test_vmap
[10:51:45] [PASSED] drm_gem_shmem_test_get_sg_table
[10:51:45] [PASSED] drm_gem_shmem_test_get_pages_sgt
[10:51:45] [PASSED] drm_gem_shmem_test_madvise
[10:51:45] [PASSED] drm_gem_shmem_test_purge
[10:51:45] ================== [PASSED] drm_gem_shmem ==================
[10:51:45] === drm_atomic_helper_connector_hdmi_check (27 subtests) ===
[10:51:45] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode
[10:51:45] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode_vic_1
[10:51:45] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode
[10:51:45] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode_vic_1
[10:51:45] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode
[10:51:45] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode_vic_1
[10:51:45] ====== drm_test_check_broadcast_rgb_cea_mode_yuv420  =======
[10:51:45] [PASSED] Automatic
[10:51:45] [PASSED] Full
[10:51:45] [PASSED] Limited 16:235
[10:51:45] == [PASSED] drm_test_check_broadcast_rgb_cea_mode_yuv420 ===
[10:51:45] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_changed
[10:51:45] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_not_changed
[10:51:45] [PASSED] drm_test_check_disable_connector
[10:51:45] [PASSED] drm_test_check_hdmi_funcs_reject_rate
[10:51:45] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_rgb
[10:51:45] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_yuv420
[10:51:45] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_ignore_yuv422
[10:51:45] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_ignore_yuv420
[10:51:45] [PASSED] drm_test_check_driver_unsupported_fallback_yuv420
[10:51:45] [PASSED] drm_test_check_output_bpc_crtc_mode_changed
[10:51:45] [PASSED] drm_test_check_output_bpc_crtc_mode_not_changed
[10:51:45] [PASSED] drm_test_check_output_bpc_dvi
[10:51:45] [PASSED] drm_test_check_output_bpc_format_vic_1
[10:51:45] [PASSED] drm_test_check_output_bpc_format_display_8bpc_only
[10:51:45] [PASSED] drm_test_check_output_bpc_format_display_rgb_only
[10:51:45] [PASSED] drm_test_check_output_bpc_format_driver_8bpc_only
[10:51:45] [PASSED] drm_test_check_output_bpc_format_driver_rgb_only
[10:51:45] [PASSED] drm_test_check_tmds_char_rate_rgb_8bpc
[10:51:45] [PASSED] drm_test_check_tmds_char_rate_rgb_10bpc
[10:51:45] [PASSED] drm_test_check_tmds_char_rate_rgb_12bpc
[10:51:45] ===== [PASSED] drm_atomic_helper_connector_hdmi_check ======
[10:51:45] === drm_atomic_helper_connector_hdmi_reset (6 subtests) ====
[10:51:45] [PASSED] drm_test_check_broadcast_rgb_value
[10:51:45] [PASSED] drm_test_check_bpc_8_value
[10:51:45] [PASSED] drm_test_check_bpc_10_value
[10:51:45] [PASSED] drm_test_check_bpc_12_value
[10:51:45] [PASSED] drm_test_check_format_value
[10:51:45] [PASSED] drm_test_check_tmds_char_value
[10:51:45] ===== [PASSED] drm_atomic_helper_connector_hdmi_reset ======
[10:51:45] = drm_atomic_helper_connector_hdmi_mode_valid (4 subtests) =
[10:51:45] [PASSED] drm_test_check_mode_valid
[10:51:45] [PASSED] drm_test_check_mode_valid_reject
[10:51:45] [PASSED] drm_test_check_mode_valid_reject_rate
[10:51:45] [PASSED] drm_test_check_mode_valid_reject_max_clock
[10:51:45] === [PASSED] drm_atomic_helper_connector_hdmi_mode_valid ===
[10:51:45] = drm_atomic_helper_connector_hdmi_infoframes (5 subtests) =
[10:51:45] [PASSED] drm_test_check_infoframes
[10:51:45] [PASSED] drm_test_check_reject_avi_infoframe
[10:51:45] [PASSED] drm_test_check_reject_hdr_infoframe_bpc_8
[10:51:45] [PASSED] drm_test_check_reject_hdr_infoframe_bpc_10
[10:51:45] [PASSED] drm_test_check_reject_audio_infoframe
[10:51:45] === [PASSED] drm_atomic_helper_connector_hdmi_infoframes ===
[10:51:45] ================= drm_managed (2 subtests) =================
[10:51:45] [PASSED] drm_test_managed_release_action
[10:51:45] [PASSED] drm_test_managed_run_action
[10:51:45] =================== [PASSED] drm_managed ===================
[10:51:45] =================== drm_mm (6 subtests) ====================
[10:51:45] [PASSED] drm_test_mm_init
[10:51:45] [PASSED] drm_test_mm_debug
[10:51:45] [PASSED] drm_test_mm_align32
[10:51:45] [PASSED] drm_test_mm_align64
[10:51:45] [PASSED] drm_test_mm_lowest
[10:51:45] [PASSED] drm_test_mm_highest
[10:51:45] ===================== [PASSED] drm_mm ======================
[10:51:45] ============= drm_modes_analog_tv (5 subtests) =============
[10:51:45] [PASSED] drm_test_modes_analog_tv_mono_576i
[10:51:45] [PASSED] drm_test_modes_analog_tv_ntsc_480i
[10:51:45] [PASSED] drm_test_modes_analog_tv_ntsc_480i_inlined
[10:51:45] [PASSED] drm_test_modes_analog_tv_pal_576i
[10:51:45] [PASSED] drm_test_modes_analog_tv_pal_576i_inlined
[10:51:45] =============== [PASSED] drm_modes_analog_tv ===============
[10:51:45] ============== drm_plane_helper (2 subtests) ===============
[10:51:45] =============== drm_test_check_plane_state  ================
[10:51:45] [PASSED] clipping_simple
[10:51:45] [PASSED] clipping_rotate_reflect
[10:51:45] [PASSED] positioning_simple
[10:51:45] [PASSED] upscaling
[10:51:45] [PASSED] downscaling
[10:51:45] [PASSED] rounding1
[10:51:45] [PASSED] rounding2
[10:51:45] [PASSED] rounding3
[10:51:45] [PASSED] rounding4
[10:51:45] =========== [PASSED] drm_test_check_plane_state ============
[10:51:45] =========== drm_test_check_invalid_plane_state  ============
[10:51:45] [PASSED] positioning_invalid
[10:51:45] [PASSED] upscaling_invalid
[10:51:45] [PASSED] downscaling_invalid
[10:51:45] ======= [PASSED] drm_test_check_invalid_plane_state ========
[10:51:45] ================ [PASSED] drm_plane_helper =================
[10:51:45] ====== drm_connector_helper_tv_get_modes (1 subtest) =======
[10:51:45] ====== drm_test_connector_helper_tv_get_modes_check  =======
[10:51:45] [PASSED] None
[10:51:45] [PASSED] PAL
[10:51:45] [PASSED] NTSC
[10:51:45] [PASSED] Both, NTSC Default
[10:51:45] [PASSED] Both, PAL Default
[10:51:45] [PASSED] Both, NTSC Default, with PAL on command-line
[10:51:45] [PASSED] Both, PAL Default, with NTSC on command-line
[10:51:45] == [PASSED] drm_test_connector_helper_tv_get_modes_check ===
[10:51:45] ======== [PASSED] drm_connector_helper_tv_get_modes ========
[10:51:45] ================== drm_rect (9 subtests) ===================
[10:51:45] [PASSED] drm_test_rect_clip_scaled_div_by_zero
[10:51:45] [PASSED] drm_test_rect_clip_scaled_not_clipped
[10:51:45] [PASSED] drm_test_rect_clip_scaled_clipped
[10:51:45] [PASSED] drm_test_rect_clip_scaled_signed_vs_unsigned
[10:51:45] ================= drm_test_rect_intersect  =================
[10:51:45] [PASSED] top-left x bottom-right: 2x2+1+1 x 2x2+0+0
[10:51:45] [PASSED] top-right x bottom-left: 2x2+0+0 x 2x2+1-1
[10:51:45] [PASSED] bottom-left x top-right: 2x2+1-1 x 2x2+0+0
[10:51:45] [PASSED] bottom-right x top-left: 2x2+0+0 x 2x2+1+1
[10:51:45] [PASSED] right x left: 2x1+0+0 x 3x1+1+0
[10:51:45] [PASSED] left x right: 3x1+1+0 x 2x1+0+0
[10:51:45] [PASSED] up x bottom: 1x2+0+0 x 1x3+0-1
[10:51:45] [PASSED] bottom x up: 1x3+0-1 x 1x2+0+0
[10:51:45] [PASSED] touching corner: 1x1+0+0 x 2x2+1+1
[10:51:45] [PASSED] touching side: 1x1+0+0 x 1x1+1+0
[10:51:45] [PASSED] equal rects: 2x2+0+0 x 2x2+0+0
[10:51:45] [PASSED] inside another: 2x2+0+0 x 1x1+1+1
[10:51:45] [PASSED] far away: 1x1+0+0 x 1x1+3+6
[10:51:45] [PASSED] points intersecting: 0x0+5+10 x 0x0+5+10
[10:51:45] [PASSED] points not intersecting: 0x0+0+0 x 0x0+5+10
[10:51:45] ============= [PASSED] drm_test_rect_intersect =============
[10:51:45] ================ drm_test_rect_calc_hscale  ================
[10:51:45] [PASSED] normal use
[10:51:45] [PASSED] out of max range
[10:51:45] [PASSED] out of min range
[10:51:45] [PASSED] zero dst
[10:51:45] [PASSED] negative src
[10:51:45] [PASSED] negative dst
[10:51:45] ============ [PASSED] drm_test_rect_calc_hscale ============
[10:51:45] ================ drm_test_rect_calc_vscale  ================
[10:51:45] [PASSED] normal use
[10:51:45] [PASSED] out of max range
[10:51:45] [PASSED] out of min range
[10:51:45] [PASSED] zero dst
[10:51:45] [PASSED] negative src
[10:51:45] [PASSED] negative dst
stty: 'standard input': Inappropriate ioctl for device
[10:51:45] ============ [PASSED] drm_test_rect_calc_vscale ============
[10:51:45] ================== drm_test_rect_rotate  ===================
[10:51:45] [PASSED] reflect-x
[10:51:45] [PASSED] reflect-y
[10:51:45] [PASSED] rotate-0
[10:51:45] [PASSED] rotate-90
[10:51:45] [PASSED] rotate-180
[10:51:45] [PASSED] rotate-270
[10:51:45] ============== [PASSED] drm_test_rect_rotate ===============
[10:51:45] ================ drm_test_rect_rotate_inv  =================
[10:51:45] [PASSED] reflect-x
[10:51:45] [PASSED] reflect-y
[10:51:45] [PASSED] rotate-0
[10:51:45] [PASSED] rotate-90
[10:51:45] [PASSED] rotate-180
[10:51:45] [PASSED] rotate-270
[10:51:45] ============ [PASSED] drm_test_rect_rotate_inv =============
[10:51:45] ==================== [PASSED] drm_rect =====================
[10:51:45] ============ drm_sysfb_modeset_test (1 subtest) ============
[10:51:45] ============ drm_test_sysfb_build_fourcc_list  =============
[10:51:45] [PASSED] no native formats
[10:51:45] [PASSED] XRGB8888 as native format
[10:51:45] [PASSED] remove duplicates
[10:51:45] [PASSED] convert alpha formats
[10:51:45] [PASSED] random formats
[10:51:45] ======== [PASSED] drm_test_sysfb_build_fourcc_list =========
[10:51:45] ============= [PASSED] drm_sysfb_modeset_test ==============
[10:51:45] ================== drm_fixp (2 subtests) ===================
[10:51:45] [PASSED] drm_test_int2fixp
[10:51:45] [PASSED] drm_test_sm2fixp
[10:51:45] ==================== [PASSED] drm_fixp =====================
[10:51:45] ============================================================
[10:51:45] Testing complete. Ran 621 tests: passed: 621
[10:51:45] Elapsed time: 27.113s total, 1.668s configuring, 25.271s building, 0.172s running

+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/ttm/tests/.kunitconfig
[10:51:45] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[10:51:47] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48
[10:51:56] Starting KUnit Kernel (1/1)...
[10:51:56] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[10:51:56] ================= ttm_device (5 subtests) ==================
[10:51:56] [PASSED] ttm_device_init_basic
[10:51:56] [PASSED] ttm_device_init_multiple
[10:51:56] [PASSED] ttm_device_fini_basic
[10:51:56] [PASSED] ttm_device_init_no_vma_man
[10:51:56] ================== ttm_device_init_pools  ==================
[10:51:56] [PASSED] No DMA allocations, no DMA32 required
[10:51:56] [PASSED] DMA allocations, DMA32 required
[10:51:56] [PASSED] No DMA allocations, DMA32 required
[10:51:56] [PASSED] DMA allocations, no DMA32 required
[10:51:56] ============== [PASSED] ttm_device_init_pools ==============
[10:51:56] =================== [PASSED] ttm_device ====================
[10:51:56] ================== ttm_pool (8 subtests) ===================
[10:51:56] ================== ttm_pool_alloc_basic  ===================
[10:51:56] [PASSED] One page
[10:51:56] [PASSED] More than one page
[10:51:56] [PASSED] Above the allocation limit
[10:51:56] [PASSED] One page, with coherent DMA mappings enabled
[10:51:56] [PASSED] Above the allocation limit, with coherent DMA mappings enabled
[10:51:56] ============== [PASSED] ttm_pool_alloc_basic ===============
[10:51:56] ============== ttm_pool_alloc_basic_dma_addr  ==============
[10:51:56] [PASSED] One page
[10:51:56] [PASSED] More than one page
[10:51:56] [PASSED] Above the allocation limit
[10:51:56] [PASSED] One page, with coherent DMA mappings enabled
[10:51:56] [PASSED] Above the allocation limit, with coherent DMA mappings enabled
[10:51:56] ========== [PASSED] ttm_pool_alloc_basic_dma_addr ==========
[10:51:56] [PASSED] ttm_pool_alloc_order_caching_match
[10:51:56] [PASSED] ttm_pool_alloc_caching_mismatch
[10:51:56] [PASSED] ttm_pool_alloc_order_mismatch
[10:51:56] [PASSED] ttm_pool_free_dma_alloc
[10:51:56] [PASSED] ttm_pool_free_no_dma_alloc
[10:51:56] [PASSED] ttm_pool_fini_basic
[10:51:56] ==================== [PASSED] ttm_pool =====================
[10:51:56] ================ ttm_resource (8 subtests) =================
[10:51:56] ================= ttm_resource_init_basic  =================
[10:51:56] [PASSED] Init resource in TTM_PL_SYSTEM
[10:51:56] [PASSED] Init resource in TTM_PL_VRAM
[10:51:56] [PASSED] Init resource in a private placement
[10:51:56] [PASSED] Init resource in TTM_PL_SYSTEM, set placement flags
[10:51:56] ============= [PASSED] ttm_resource_init_basic =============
[10:51:56] [PASSED] ttm_resource_init_pinned
[10:51:56] [PASSED] ttm_resource_fini_basic
[10:51:56] [PASSED] ttm_resource_manager_init_basic
[10:51:56] [PASSED] ttm_resource_manager_usage_basic
[10:51:56] [PASSED] ttm_resource_manager_set_used_basic
[10:51:56] [PASSED] ttm_sys_man_alloc_basic
[10:51:56] [PASSED] ttm_sys_man_free_basic
[10:51:56] ================== [PASSED] ttm_resource ===================
[10:51:56] =================== ttm_tt (15 subtests) ===================
[10:51:56] ==================== ttm_tt_init_basic  ====================
[10:51:56] [PASSED] Page-aligned size
[10:51:56] [PASSED] Extra pages requested
[10:51:56] ================ [PASSED] ttm_tt_init_basic ================
[10:51:56] [PASSED] ttm_tt_init_misaligned
[10:51:56] [PASSED] ttm_tt_fini_basic
[10:51:56] [PASSED] ttm_tt_fini_sg
[10:51:56] [PASSED] ttm_tt_fini_shmem
[10:51:56] [PASSED] ttm_tt_create_basic
[10:51:56] [PASSED] ttm_tt_create_invalid_bo_type
[10:51:56] [PASSED] ttm_tt_create_ttm_exists
[10:51:56] [PASSED] ttm_tt_create_failed
[10:51:56] [PASSED] ttm_tt_destroy_basic
[10:51:56] [PASSED] ttm_tt_populate_null_ttm
[10:51:56] [PASSED] ttm_tt_populate_populated_ttm
[10:51:56] [PASSED] ttm_tt_unpopulate_basic
[10:51:56] [PASSED] ttm_tt_unpopulate_empty_ttm
[10:51:56] [PASSED] ttm_tt_swapin_basic
[10:51:56] ===================== [PASSED] ttm_tt ======================
[10:51:56] =================== ttm_bo (14 subtests) ===================
[10:51:56] =========== ttm_bo_reserve_optimistic_no_ticket  ===========
[10:51:56] [PASSED] Cannot be interrupted and sleeps
[10:51:56] [PASSED] Cannot be interrupted, locks straight away
[10:51:56] [PASSED] Can be interrupted, sleeps
[10:51:56] ======= [PASSED] ttm_bo_reserve_optimistic_no_ticket =======
[10:51:56] [PASSED] ttm_bo_reserve_locked_no_sleep
[10:51:56] [PASSED] ttm_bo_reserve_no_wait_ticket
[10:51:56] [PASSED] ttm_bo_reserve_double_resv
[10:51:56] [PASSED] ttm_bo_reserve_interrupted
[10:51:56] [PASSED] ttm_bo_reserve_deadlock
[10:51:56] [PASSED] ttm_bo_unreserve_basic
[10:51:56] [PASSED] ttm_bo_unreserve_pinned
[10:51:56] [PASSED] ttm_bo_unreserve_bulk
[10:51:56] [PASSED] ttm_bo_fini_basic
[10:51:56] [PASSED] ttm_bo_fini_shared_resv
[10:51:56] [PASSED] ttm_bo_pin_basic
[10:51:56] [PASSED] ttm_bo_pin_unpin_resource
[10:51:56] [PASSED] ttm_bo_multiple_pin_one_unpin
[10:51:56] ===================== [PASSED] ttm_bo ======================
[10:51:56] ============== ttm_bo_validate (21 subtests) ===============
[10:51:56] ============== ttm_bo_init_reserved_sys_man  ===============
[10:51:56] [PASSED] Buffer object for userspace
[10:51:56] [PASSED] Kernel buffer object
[10:51:56] [PASSED] Shared buffer object
[10:51:56] ========== [PASSED] ttm_bo_init_reserved_sys_man ===========
[10:51:56] ============== ttm_bo_init_reserved_mock_man  ==============
[10:51:56] [PASSED] Buffer object for userspace
[10:51:56] [PASSED] Kernel buffer object
[10:51:56] [PASSED] Shared buffer object
[10:51:56] ========== [PASSED] ttm_bo_init_reserved_mock_man ==========
[10:51:56] [PASSED] ttm_bo_init_reserved_resv
[10:51:56] ================== ttm_bo_validate_basic  ==================
[10:51:56] [PASSED] Buffer object for userspace
[10:51:56] [PASSED] Kernel buffer object
[10:51:56] [PASSED] Shared buffer object
[10:51:56] ============== [PASSED] ttm_bo_validate_basic ==============
[10:51:56] [PASSED] ttm_bo_validate_invalid_placement
[10:51:56] ============= ttm_bo_validate_same_placement  ==============
[10:51:56] [PASSED] System manager
[10:51:56] [PASSED] VRAM manager
[10:51:56] ========= [PASSED] ttm_bo_validate_same_placement ==========
[10:51:56] [PASSED] ttm_bo_validate_failed_alloc
[10:51:56] [PASSED] ttm_bo_validate_pinned
[10:51:56] [PASSED] ttm_bo_validate_busy_placement
[10:51:56] ================ ttm_bo_validate_multihop  =================
[10:51:56] [PASSED] Buffer object for userspace
[10:51:56] [PASSED] Kernel buffer object
[10:51:56] [PASSED] Shared buffer object
[10:51:56] ============ [PASSED] ttm_bo_validate_multihop =============
[10:51:56] ========== ttm_bo_validate_no_placement_signaled  ==========
[10:51:56] [PASSED] Buffer object in system domain, no page vector
[10:51:56] [PASSED] Buffer object in system domain with an existing page vector
[10:51:56] ====== [PASSED] ttm_bo_validate_no_placement_signaled ======
[10:51:56] ======== ttm_bo_validate_no_placement_not_signaled  ========
[10:51:56] [PASSED] Buffer object for userspace
[10:51:56] [PASSED] Kernel buffer object
[10:51:56] [PASSED] Shared buffer object
[10:51:56] ==== [PASSED] ttm_bo_validate_no_placement_not_signaled ====
[10:51:56] [PASSED] ttm_bo_validate_move_fence_signaled
[10:51:56] ========= ttm_bo_validate_move_fence_not_signaled  =========
[10:51:56] [PASSED] Waits for GPU
[10:51:56] [PASSED] Tries to lock straight away
[10:51:56] ===== [PASSED] ttm_bo_validate_move_fence_not_signaled =====
[10:51:56] [PASSED] ttm_bo_validate_happy_evict
[10:51:56] [PASSED] ttm_bo_validate_all_pinned_evict
[10:51:56] [PASSED] ttm_bo_validate_allowed_only_evict
[10:51:56] [PASSED] ttm_bo_validate_deleted_evict
[10:51:56] [PASSED] ttm_bo_validate_busy_domain_evict
[10:51:56] [PASSED] ttm_bo_validate_evict_gutting
[10:51:56] [PASSED] ttm_bo_validate_recrusive_evict
stty: 'standard input': Inappropriate ioctl for device
[10:51:56] ================= [PASSED] ttm_bo_validate =================
[10:51:56] ============================================================
[10:51:56] Testing complete. Ran 101 tests: passed: 101
[10:51:57] Elapsed time: 11.411s total, 1.691s configuring, 9.503s building, 0.186s running

+ cleanup
++ stat -c %u:%g /kernel
+ chown -R 1003:1003 /kernel



^ permalink raw reply	[flat|nested] 16+ messages in thread

* ✓ Xe.CI.BAT: success for drm/colorop: Keep colorop state consistent across atomic commits (rev2)
  2026-02-18  6:57 [PATCH 0/2] drm/colorop: Keep colorop state consistent across atomic commits Chaitanya Kumar Borah
                   ` (5 preceding siblings ...)
  2026-02-18 10:52 ` ✓ CI.KUnit: success for drm/colorop: Keep colorop state consistent across atomic commits (rev2) Patchwork
@ 2026-02-18 12:23 ` Patchwork
  2026-02-18 13:01 ` ✗ Xe.CI.FULL: failure " Patchwork
  2026-02-23 21:14 ` [PATCH 0/2] drm/colorop: Keep colorop state consistent across atomic commits Harry Wentland
  8 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2026-02-18 12:23 UTC (permalink / raw)
  To: Chaitanya Kumar Borah; +Cc: intel-xe

[-- Attachment #1: Type: text/plain, Size: 894 bytes --]

== Series Details ==

Series: drm/colorop: Keep colorop state consistent across atomic commits (rev2)
URL   : https://patchwork.freedesktop.org/series/161742/
State : success

== Summary ==

CI Bug Log - changes from xe-4572-fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d_BAT -> xe-pw-161742v2_BAT
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  

Participating hosts (14 -> 14)
------------------------------

  No changes in participating hosts


Changes
-------

  No changes found


Build changes
-------------

  * Linux: xe-4572-fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d -> xe-pw-161742v2

  IGT_8758: 8758
  xe-4572-fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d: fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d
  xe-pw-161742v2: 161742v2

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/index.html

[-- Attachment #2: Type: text/html, Size: 1442 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* ✗ Xe.CI.FULL: failure for drm/colorop: Keep colorop state consistent across atomic commits (rev2)
  2026-02-18  6:57 [PATCH 0/2] drm/colorop: Keep colorop state consistent across atomic commits Chaitanya Kumar Borah
                   ` (6 preceding siblings ...)
  2026-02-18 12:23 ` ✓ Xe.CI.BAT: " Patchwork
@ 2026-02-18 13:01 ` Patchwork
  2026-02-23 21:14 ` [PATCH 0/2] drm/colorop: Keep colorop state consistent across atomic commits Harry Wentland
  8 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2026-02-18 13:01 UTC (permalink / raw)
  To: Chaitanya Kumar Borah; +Cc: intel-xe

[-- Attachment #1: Type: text/plain, Size: 14331 bytes --]

== Series Details ==

Series: drm/colorop: Keep colorop state consistent across atomic commits (rev2)
URL   : https://patchwork.freedesktop.org/series/161742/
State : failure

== Summary ==

CI Bug Log - changes from xe-4572-fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d_FULL -> xe-pw-161742v2_FULL
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with xe-pw-161742v2_FULL absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in xe-pw-161742v2_FULL, please notify your bug team (I915-ci-infra@lists.freedesktop.org) to allow them
  to document this new failure mode, which will reduce false positives in CI.

  

Participating hosts (2 -> 2)
------------------------------

  No changes in participating hosts

Possible new issues
-------------------

  Here are the unknown changes that may have been introduced in xe-pw-161742v2_FULL:

### IGT changes ###

#### Possible regressions ####

  * igt@xe_exec_system_allocator@many-stride-mmap-new-race-nomemset:
    - shard-bmg:          NOTRUN -> [INCOMPLETE][1]
   [1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-6/igt@xe_exec_system_allocator@many-stride-mmap-new-race-nomemset.html

  
Known issues
------------

  Here are the changes found in xe-pw-161742v2_FULL that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@kms_bw@linear-tiling-1-displays-2560x1440p:
    - shard-bmg:          [PASS][2] -> [SKIP][3] ([Intel XE#367])
   [2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4572-fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d/shard-bmg-5/igt@kms_bw@linear-tiling-1-displays-2560x1440p.html
   [3]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-4/igt@kms_bw@linear-tiling-1-displays-2560x1440p.html

  * igt@kms_ccs@bad-aux-stride-4-tiled-mtl-rc-ccs-cc:
    - shard-bmg:          NOTRUN -> [SKIP][4] ([Intel XE#2887]) +2 other tests skip
   [4]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-6/igt@kms_ccs@bad-aux-stride-4-tiled-mtl-rc-ccs-cc.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs@pipe-d-hdmi-a-3:
    - shard-bmg:          NOTRUN -> [INCOMPLETE][5] ([Intel XE#7084])
   [5]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-10/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs@pipe-d-hdmi-a-3.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-lnl-ccs@pipe-b-dp-1:
    - shard-bmg:          NOTRUN -> [SKIP][6] ([Intel XE#2652] / [Intel XE#787]) +7 other tests skip
   [6]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-5/igt@kms_ccs@crc-primary-suspend-4-tiled-lnl-ccs@pipe-b-dp-1.html

  * igt@kms_chamelium_color@ctm-negative:
    - shard-bmg:          NOTRUN -> [SKIP][7] ([Intel XE#2325])
   [7]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-6/igt@kms_chamelium_color@ctm-negative.html

  * igt@kms_content_protection@atomic-dpms@pipe-a-dp-1:
    - shard-bmg:          NOTRUN -> [FAIL][8] ([Intel XE#3304]) +2 other tests fail
   [8]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-5/igt@kms_content_protection@atomic-dpms@pipe-a-dp-1.html

  * igt@kms_content_protection@legacy@pipe-a-dp-2:
    - shard-bmg:          NOTRUN -> [FAIL][9] ([Intel XE#1178] / [Intel XE#3304])
   [9]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-10/igt@kms_content_protection@legacy@pipe-a-dp-2.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling:
    - shard-bmg:          NOTRUN -> [SKIP][10] ([Intel XE#7178])
   [10]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-6/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling.html

  * igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-spr-indfb-draw-mmap-wc:
    - shard-bmg:          NOTRUN -> [SKIP][11] ([Intel XE#2311]) +3 other tests skip
   [11]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-6/igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-spr-indfb-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-blt:
    - shard-bmg:          NOTRUN -> [SKIP][12] ([Intel XE#4141])
   [12]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-rte:
    - shard-bmg:          NOTRUN -> [SKIP][13] ([Intel XE#2313]) +3 other tests skip
   [13]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-6/igt@kms_frontbuffer_tracking@fbcpsr-2p-rte.html

  * igt@kms_psr2_sf@psr2-cursor-plane-move-continuous-exceed-fully-sf:
    - shard-bmg:          NOTRUN -> [SKIP][14] ([Intel XE#1406] / [Intel XE#1489]) +1 other test skip
   [14]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-6/igt@kms_psr2_sf@psr2-cursor-plane-move-continuous-exceed-fully-sf.html

  * igt@kms_psr2_su@page_flip-xrgb8888:
    - shard-bmg:          NOTRUN -> [SKIP][15] ([Intel XE#1406] / [Intel XE#2387])
   [15]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-6/igt@kms_psr2_su@page_flip-xrgb8888.html

  * igt@kms_psr@fbc-psr2-primary-page-flip:
    - shard-bmg:          NOTRUN -> [SKIP][16] ([Intel XE#1406] / [Intel XE#2234] / [Intel XE#2850]) +1 other test skip
   [16]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-6/igt@kms_psr@fbc-psr2-primary-page-flip.html

  * igt@kms_rotation_crc@bad-pixel-format:
    - shard-bmg:          NOTRUN -> [SKIP][17] ([Intel XE#3414] / [Intel XE#3904])
   [17]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-6/igt@kms_rotation_crc@bad-pixel-format.html

  * igt@kms_vrr@flipline:
    - shard-bmg:          NOTRUN -> [SKIP][18] ([Intel XE#1499])
   [18]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-6/igt@kms_vrr@flipline.html

  * igt@xe_eudebug@basic-vm-bind:
    - shard-bmg:          NOTRUN -> [SKIP][19] ([Intel XE#4837])
   [19]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-6/igt@xe_eudebug@basic-vm-bind.html

  * igt@xe_exec_basic@multigpu-many-execqueues-many-vm-userptr-rebind:
    - shard-bmg:          NOTRUN -> [SKIP][20] ([Intel XE#2322])
   [20]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-6/igt@xe_exec_basic@multigpu-many-execqueues-many-vm-userptr-rebind.html

  * igt@xe_exec_fault_mode@once-multi-queue-userptr-rebind:
    - shard-bmg:          NOTRUN -> [SKIP][21] ([Intel XE#7136])
   [21]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-6/igt@xe_exec_fault_mode@once-multi-queue-userptr-rebind.html

  * igt@xe_exec_multi_queue@max-queues-basic-smem:
    - shard-bmg:          NOTRUN -> [SKIP][22] ([Intel XE#6874]) +4 other tests skip
   [22]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-6/igt@xe_exec_multi_queue@max-queues-basic-smem.html

  * igt@xe_media_fill@media-fill:
    - shard-bmg:          NOTRUN -> [SKIP][23] ([Intel XE#2459] / [Intel XE#2596])
   [23]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-6/igt@xe_media_fill@media-fill.html

  * igt@xe_query@multigpu-query-hwconfig:
    - shard-bmg:          NOTRUN -> [SKIP][24] ([Intel XE#944])
   [24]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-6/igt@xe_query@multigpu-query-hwconfig.html

  
#### Possible fixes ####

  * igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs@pipe-d-dp-2:
    - shard-bmg:          [INCOMPLETE][25] -> [PASS][26]
   [25]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4572-fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d/shard-bmg-4/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs@pipe-d-dp-2.html
   [26]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-10/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs@pipe-d-dp-2.html

  * igt@kms_color_pipeline@plane-ctm3x4@pipe-a-edp-1:
    - shard-lnl:          [FAIL][27] ([Intel XE#6968]) -> [PASS][28] +31 other tests pass
   [27]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4572-fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d/shard-lnl-8/igt@kms_color_pipeline@plane-ctm3x4@pipe-a-edp-1.html
   [28]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-lnl-6/igt@kms_color_pipeline@plane-ctm3x4@pipe-a-edp-1.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic:
    - shard-bmg:          [FAIL][29] ([Intel XE#4633]) -> [PASS][30]
   [29]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4572-fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d/shard-bmg-1/igt@kms_cursor_legacy@flip-vs-cursor-atomic.html
   [30]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-5/igt@kms_cursor_legacy@flip-vs-cursor-atomic.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible:
    - shard-lnl:          [FAIL][31] ([Intel XE#301]) -> [PASS][32] +3 other tests pass
   [31]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4572-fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d/shard-lnl-5/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
   [32]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-lnl-1/igt@kms_flip@flip-vs-expired-vblank-interruptible.html

  * igt@kms_hdr@invalid-hdr:
    - shard-bmg:          [SKIP][33] ([Intel XE#1503]) -> [PASS][34]
   [33]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4572-fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d/shard-bmg-2/igt@kms_hdr@invalid-hdr.html
   [34]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-1/igt@kms_hdr@invalid-hdr.html

  * igt@kms_vrr@max-min@pipe-a-edp-1:
    - shard-lnl:          [FAIL][35] ([Intel XE#4227]) -> [PASS][36] +1 other test pass
   [35]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4572-fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d/shard-lnl-1/igt@kms_vrr@max-min@pipe-a-edp-1.html
   [36]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-lnl-3/igt@kms_vrr@max-min@pipe-a-edp-1.html

  * igt@xe_pm_residency@aspm_link_residency:
    - shard-bmg:          [SKIP][37] ([Intel XE#7258]) -> [PASS][38]
   [37]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4572-fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d/shard-bmg-6/igt@xe_pm_residency@aspm_link_residency.html
   [38]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-10/igt@xe_pm_residency@aspm_link_residency.html

  
#### Warnings ####

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-blt:
    - shard-bmg:          [SKIP][39] ([Intel XE#4141]) -> [ABORT][40] ([Intel XE#5545])
   [39]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4572-fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d/shard-bmg-3/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-blt.html
   [40]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-2/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-blt.html

  * igt@kms_tiled_display@basic-test-pattern:
    - shard-bmg:          [SKIP][41] ([Intel XE#2426]) -> [FAIL][42] ([Intel XE#1729])
   [41]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-4572-fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d/shard-bmg-8/igt@kms_tiled_display@basic-test-pattern.html
   [42]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/shard-bmg-6/igt@kms_tiled_display@basic-test-pattern.html

  
  [Intel XE#1178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1178
  [Intel XE#1406]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1406
  [Intel XE#1489]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1489
  [Intel XE#1499]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1499
  [Intel XE#1503]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1503
  [Intel XE#1729]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1729
  [Intel XE#2234]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2234
  [Intel XE#2311]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2311
  [Intel XE#2313]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2313
  [Intel XE#2322]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2322
  [Intel XE#2325]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2325
  [Intel XE#2387]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2387
  [Intel XE#2426]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2426
  [Intel XE#2459]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2459
  [Intel XE#2596]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2596
  [Intel XE#2652]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2652
  [Intel XE#2850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2850
  [Intel XE#2887]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2887
  [Intel XE#301]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/301
  [Intel XE#3304]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3304
  [Intel XE#3414]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3414
  [Intel XE#367]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/367
  [Intel XE#3904]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3904
  [Intel XE#4141]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4141
  [Intel XE#4227]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4227
  [Intel XE#4633]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4633
  [Intel XE#4837]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4837
  [Intel XE#5545]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5545
  [Intel XE#6874]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6874
  [Intel XE#6968]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6968
  [Intel XE#7084]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7084
  [Intel XE#7136]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7136
  [Intel XE#7178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7178
  [Intel XE#7258]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7258
  [Intel XE#787]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/787
  [Intel XE#944]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/944


Build changes
-------------

  * Linux: xe-4572-fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d -> xe-pw-161742v2

  IGT_8758: 8758
  xe-4572-fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d: fc9512d31fa2c190f58c85dbdf7313d2d0ad4b0d
  xe-pw-161742v2: 161742v2

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161742v2/index.html

[-- Attachment #2: Type: text/html, Size: 15865 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* RE: [PATCH 1/2] drm/colorop: Preserve bypass value in duplicate_state()
  2026-02-18  6:57 ` [PATCH 1/2] drm/colorop: Preserve bypass value in duplicate_state() Chaitanya Kumar Borah
@ 2026-02-23 20:33   ` Shankar, Uma
  0 siblings, 0 replies; 16+ messages in thread
From: Shankar, Uma @ 2026-02-23 20:33 UTC (permalink / raw)
  To: Borah, Chaitanya Kumar, dri-devel@lists.freedesktop.org,
	intel-gfx@lists.freedesktop.org, intel-xe@lists.freedesktop.org
  Cc: contact@emersion.fr, alex.hung@amd.com, harry.wentland@amd.com,
	daniels@collabora.com, mwen@igalia.com, sebastian.wick@redhat.com,
	ville.syrjala@linux.intel.com, maarten.lankhorst@linux.intel.com,
	Nikula, Jani, louis.chauvet@bootlin.com, stable@vger.kernel.org



> -----Original Message-----
> From: Borah, Chaitanya Kumar <chaitanya.kumar.borah@intel.com>
> Sent: Wednesday, February 18, 2026 12:27 PM
> To: dri-devel@lists.freedesktop.org; intel-gfx@lists.freedesktop.org; intel-
> xe@lists.freedesktop.org
> Cc: contact@emersion.fr; alex.hung@amd.com; harry.wentland@amd.com;
> daniels@collabora.com; mwen@igalia.com; sebastian.wick@redhat.com;
> Shankar, Uma <uma.shankar@intel.com>; ville.syrjala@linux.intel.com;
> maarten.lankhorst@linux.intel.com; Nikula, Jani <jani.nikula@intel.com>;
> louis.chauvet@bootlin.com; stable@vger.kernel.org; Borah, Chaitanya Kumar
> <chaitanya.kumar.borah@intel.com>
> Subject: [PATCH 1/2] drm/colorop: Preserve bypass value in duplicate_state()
> 
> __drm_atomic_helper_colorop_duplicate_state() unconditionally sets state-
> >bypass = true after copying the existing state.
> 
> This override causes the new atomic state to no longer reflect the currently
> committed hardware state. Since the bypass property directly controls whether the
> colorop is active in hardware, resetting it to true can inadvertently disable an
> active colorop during a subsequent commit, particularly for internal driver commits
> where userspace does not touch the property.
> 
> Drop the unconditional assignment and preserve the duplicated bypass value.

Looks Good to me.
Reviewed-by: Uma Shankar <uma.shankar@intel.com>

> Fixes: 8c5ea1745f4c ("drm/colorop: Add BYPASS property")
> Cc: <stable@vger.kernel.org> #v6.19+
> Signed-off-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@intel.com>
> ---
>  drivers/gpu/drm/drm_colorop.c | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/drm_colorop.c b/drivers/gpu/drm/drm_colorop.c index
> aa19de769eb2..5037efcc3497 100644
> --- a/drivers/gpu/drm/drm_colorop.c
> +++ b/drivers/gpu/drm/drm_colorop.c
> @@ -466,8 +466,6 @@ static void
> __drm_atomic_helper_colorop_duplicate_state(struct drm_colorop *colo
> 
>  	if (state->data)
>  		drm_property_blob_get(state->data);
> -
> -	state->bypass = true;
>  }
> 
>  struct drm_colorop_state *
> --
> 2.25.1


^ permalink raw reply	[flat|nested] 16+ messages in thread

* RE: [PATCH 2/2] drm/atomic: Add affected colorops with affected planes
  2026-02-18  6:57 ` [PATCH 2/2] drm/atomic: Add affected colorops with affected planes Chaitanya Kumar Borah
@ 2026-02-23 20:37   ` Shankar, Uma
  2026-03-10 21:07     ` Borah, Chaitanya Kumar
  0 siblings, 1 reply; 16+ messages in thread
From: Shankar, Uma @ 2026-02-23 20:37 UTC (permalink / raw)
  To: Borah, Chaitanya Kumar, dri-devel@lists.freedesktop.org,
	intel-gfx@lists.freedesktop.org, intel-xe@lists.freedesktop.org
  Cc: contact@emersion.fr, alex.hung@amd.com, harry.wentland@amd.com,
	daniels@collabora.com, mwen@igalia.com, sebastian.wick@redhat.com,
	ville.syrjala@linux.intel.com, maarten.lankhorst@linux.intel.com,
	Nikula, Jani, louis.chauvet@bootlin.com, stable@vger.kernel.org



> -----Original Message-----
> From: Borah, Chaitanya Kumar <chaitanya.kumar.borah@intel.com>
> Sent: Wednesday, February 18, 2026 12:27 PM
> To: dri-devel@lists.freedesktop.org; intel-gfx@lists.freedesktop.org; intel-
> xe@lists.freedesktop.org
> Cc: contact@emersion.fr; alex.hung@amd.com; harry.wentland@amd.com;
> daniels@collabora.com; mwen@igalia.com; sebastian.wick@redhat.com;
> Shankar, Uma <uma.shankar@intel.com>; ville.syrjala@linux.intel.com;
> maarten.lankhorst@linux.intel.com; Nikula, Jani <jani.nikula@intel.com>;
> louis.chauvet@bootlin.com; stable@vger.kernel.org; Borah, Chaitanya Kumar
> <chaitanya.kumar.borah@intel.com>
> Subject: [PATCH 2/2] drm/atomic: Add affected colorops with affected planes
> 
> When drm_atomic_add_affected_planes() adds a plane to the atomic state, the
> associated colorops are not guaranteed to be included.
> This can leave colorop state out of the transaction when planes are pulled in
> implicitly (eg. during modeset or internal commits).
> 
> Also add affected colorops when adding affected planes to keep plane and color
> pipeline state consistent within the atomic transaction.

Even though colorop is an object in itself but practically it doesn't have any existence without
the plane. So to add to state along with plane seems logical. Also its good to handle this in
drm core than individual drivers.

The change looks good to me.
Reviewed-by: Uma Shankar <uma.shankar@intel.com>

> Fixes: 2afc3184f3b3 ("drm/plane: Add COLOR PIPELINE property")
> Cc: <stable@vger.kernel.org> #v6.19+
> Signed-off-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@intel.com>
> ---
>  drivers/gpu/drm/drm_atomic.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c index
> e3029c8f02e5..8bcd76aaeb6a 100644
> --- a/drivers/gpu/drm/drm_atomic.c
> +++ b/drivers/gpu/drm/drm_atomic.c
> @@ -1588,6 +1588,7 @@ drm_atomic_add_affected_planes(struct
> drm_atomic_state *state,
>  	const struct drm_crtc_state *old_crtc_state =
>  		drm_atomic_get_old_crtc_state(state, crtc);
>  	struct drm_plane *plane;
> +	int ret;
> 
>  	WARN_ON(!drm_atomic_get_new_crtc_state(state, crtc));
> 
> @@ -1601,6 +1602,10 @@ drm_atomic_add_affected_planes(struct
> drm_atomic_state *state,
> 
>  		if (IS_ERR(plane_state))
>  			return PTR_ERR(plane_state);
> +
> +		ret = drm_atomic_add_affected_colorops(state, plane);
> +		if (ret)
> +			return ret;
>  	}
>  	return 0;
>  }
> --
> 2.25.1


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 0/2] drm/colorop: Keep colorop state consistent across atomic commits
  2026-02-18  6:57 [PATCH 0/2] drm/colorop: Keep colorop state consistent across atomic commits Chaitanya Kumar Borah
                   ` (7 preceding siblings ...)
  2026-02-18 13:01 ` ✗ Xe.CI.FULL: failure " Patchwork
@ 2026-02-23 21:14 ` Harry Wentland
  2026-02-24  8:59   ` Shankar, Uma
  2026-02-26  5:59   ` Borah, Chaitanya Kumar
  8 siblings, 2 replies; 16+ messages in thread
From: Harry Wentland @ 2026-02-23 21:14 UTC (permalink / raw)
  To: Chaitanya Kumar Borah, dri-devel, intel-gfx, intel-xe
  Cc: contact, alex.hung, daniels, mwen, sebastian.wick, uma.shankar,
	ville.syrjala, maarten.lankhorst, jani.nikula, louis.chauvet,
	stable

On 2026-02-18 01:57, Chaitanya Kumar Borah wrote:
> This series aims to keep colorop state consistent across atomic
> transactions by ensuring it accurately reflects committed hardware
> state and remains part of the atomic update whenever its associated
> plane is involved.
> 
> It contains two changes:
> - Preserves the bypass value in duplicated colorop state.
> 
> _drm_atomic_helper_colorop_duplicate_state() unconditionally reset
> bypass to true, which means the duplicated state no longer reflects the
> committed hardware state. Since bypass directly controls whether the
> colorop is active in hardware, this can lead to an unintended disable
> during subsequent commits.
> 
> This could potentially be a problem also for colorops where bypass value
> is immutably false.
> 
> Conceptually, I consider 'bypass' to behave similar to 'visible' in plane 
> state - it represents current HW state and should therefore be preserved
> across duplication.
> 
> - Add affected colorops with affected plane
> 
> Colorops are unique in the DRM model. While they are DRM objects with their
> own states, they are logically attached to a plane and exposed through
> a plane property. In some sense, they share the same hierarchy as CRTC and
> planes while following a different 'ownership' model.
> 
> Given that enabling a CRTC pulls in all its affected planes into the atomic
> state, it follows that when a plane is added, its associated colorops are
> also included. Otherwise, during modesets or internal commits, colorop state
> may be missing from the transaction, resulting in inconsistent or incomplete
> state updates.
> 

That tends to reflect my thinking when I wrote the colorop stuff.

> That said, I do have a concern about potentially inflating the atomic
> state by automatically pulling in colorops from the core. It is not
> entirely clear to me whether inclusion of affected colorops should be
> handled in core, or left to individual drivers.
> 

Could this lead drivers to reprogram possibly expensive colorops
when they didn't change? It won't be an issue for amdgpu since we
have another level of state tracking, but for drivers that strictly
follow the atomic model it might lead to issues.

On the other hand it makes colorop handling less error-prone in amdgpu,
and possibly fixes a bug I've come across where we get confused if an
active colorop isn't part of the state.

Harry

> My understanding of the atomic framework is still evolving, so
> I would appreciate feedback from those more familiar with the intended
> design direction.
> 
> ==
> Chaitanya
> 
> P.S/Background/TL;DR:
> 
> I discovered inconsistency with the colorop state while analysing CRC mismatches
> in kms_color_pipeline test cases[1]. Visual inspection reveals that while CRC is
> being collected degamma block has been reset. This was traced back to the internal
> commit that the driver does to disable PSR2 and selective fetch for CRC collection.
> 
> crtc_crc_open
>     -> intel_crtc_set_crc_source
>         -> intel_crtc_crc_setup_workarounds
>             -> drm_atomic_commit
> 
> During this flow colorop states are never added to the atomic state which in turn
> makes intel_plane_color_copy_uapi_to_hw_state() disable the colorops.
> 
> If we add the colorops, to the atomic state, the problem still persisted because
> while duplicating the colorop state, 'bypass' was getting reset to true.
> 
> The two changes made in this series fixes the issue.
> 
> [1] https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_18001/shard-mtlp-6/igt@kms_color_pipeline@plane-lut1d.html
> 
> Cc: Simon Ser <contact@emersion.fr>
> Cc: Alex Hung <alex.hung@amd.com>
> Cc: Harry Wentland <harry.wentland@amd.com>
> Cc: Daniel Stone <daniels@collabora.com>
> Cc: Melissa Wen <mwen@igalia.com>
> Cc: Sebastian Wick <sebastian.wick@redhat.com>
> Cc: Alex Hung <alex.hung@amd.com>
> Cc: Uma Shankar <uma.shankar@intel.com>
> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> Cc: Jani Nikula <jani.nikula@intel.com>
> Cc: Louis Chauvet <louis.chauvet@bootlin.com>
> Cc: <stable@vger.kernel.org> #v6.19+
> 
> Chaitanya Kumar Borah (2):
>   drm/colorop: Preserve bypass value in duplicate_state()
>   drm/atomic: Add affected colorops with affected planes
> 
>  drivers/gpu/drm/drm_atomic.c  | 5 +++++
>  drivers/gpu/drm/drm_colorop.c | 2 --
>  2 files changed, 5 insertions(+), 2 deletions(-)
> 


^ permalink raw reply	[flat|nested] 16+ messages in thread

* RE: [PATCH 0/2] drm/colorop: Keep colorop state consistent across atomic commits
  2026-02-23 21:14 ` [PATCH 0/2] drm/colorop: Keep colorop state consistent across atomic commits Harry Wentland
@ 2026-02-24  8:59   ` Shankar, Uma
  2026-02-26  5:59   ` Borah, Chaitanya Kumar
  1 sibling, 0 replies; 16+ messages in thread
From: Shankar, Uma @ 2026-02-24  8:59 UTC (permalink / raw)
  To: Harry Wentland, Borah, Chaitanya Kumar,
	dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org,
	intel-xe@lists.freedesktop.org
  Cc: contact@emersion.fr, alex.hung@amd.com, daniels@collabora.com,
	mwen@igalia.com, sebastian.wick@redhat.com,
	ville.syrjala@linux.intel.com, maarten.lankhorst@linux.intel.com,
	Nikula, Jani, louis.chauvet@bootlin.com, stable@vger.kernel.org



> -----Original Message-----
> From: Harry Wentland <harry.wentland@amd.com>
> Sent: Tuesday, February 24, 2026 2:44 AM
> To: Borah, Chaitanya Kumar <chaitanya.kumar.borah@intel.com>; dri-
> devel@lists.freedesktop.org; intel-gfx@lists.freedesktop.org; intel-
> xe@lists.freedesktop.org
> Cc: contact@emersion.fr; alex.hung@amd.com; daniels@collabora.com;
> mwen@igalia.com; sebastian.wick@redhat.com; Shankar, Uma
> <uma.shankar@intel.com>; ville.syrjala@linux.intel.com;
> maarten.lankhorst@linux.intel.com; Nikula, Jani <jani.nikula@intel.com>;
> louis.chauvet@bootlin.com; stable@vger.kernel.org
> Subject: Re: [PATCH 0/2] drm/colorop: Keep colorop state consistent across
> atomic commits
> 
> On 2026-02-18 01:57, Chaitanya Kumar Borah wrote:
> > This series aims to keep colorop state consistent across atomic
> > transactions by ensuring it accurately reflects committed hardware
> > state and remains part of the atomic update whenever its associated
> > plane is involved.
> >
> > It contains two changes:
> > - Preserves the bypass value in duplicated colorop state.
> >
> > _drm_atomic_helper_colorop_duplicate_state() unconditionally reset
> > bypass to true, which means the duplicated state no longer reflects
> > the committed hardware state. Since bypass directly controls whether
> > the colorop is active in hardware, this can lead to an unintended
> > disable during subsequent commits.
> >
> > This could potentially be a problem also for colorops where bypass
> > value is immutably false.
> >
> > Conceptually, I consider 'bypass' to behave similar to 'visible' in
> > plane state - it represents current HW state and should therefore be
> > preserved across duplication.
> >
> > - Add affected colorops with affected plane
> >
> > Colorops are unique in the DRM model. While they are DRM objects with
> > their own states, they are logically attached to a plane and exposed
> > through a plane property. In some sense, they share the same hierarchy
> > as CRTC and planes while following a different 'ownership' model.
> >
> > Given that enabling a CRTC pulls in all its affected planes into the
> > atomic state, it follows that when a plane is added, its associated
> > colorops are also included. Otherwise, during modesets or internal
> > commits, colorop state may be missing from the transaction, resulting
> > in inconsistent or incomplete state updates.
> >
> 
> That tends to reflect my thinking when I wrote the colorop stuff.
> 
> > That said, I do have a concern about potentially inflating the atomic
> > state by automatically pulling in colorops from the core. It is not
> > entirely clear to me whether inclusion of affected colorops should be
> > handled in core, or left to individual drivers.
> >
> 
> Could this lead drivers to reprogram possibly expensive colorops when they didn't
> change? It won't be an issue for amdgpu since we have another level of state
> tracking, but for drivers that strictly follow the atomic model it might lead to
> issues.

I think this will be modeset path where impact or latency will be less as compared to
a flip operation.  However, individual drivers can check respective state and skip update.

Regards,
Uma Shankar

> On the other hand it makes colorop handling less error-prone in amdgpu, and
> possibly fixes a bug I've come across where we get confused if an active colorop
> isn't part of the state.
> 
> Harry
> 
> > My understanding of the atomic framework is still evolving, so I would
> > appreciate feedback from those more familiar with the intended design
> > direction.
> >
> > ==
> > Chaitanya
> >
> > P.S/Background/TL;DR:
> >
> > I discovered inconsistency with the colorop state while analysing CRC
> > mismatches in kms_color_pipeline test cases[1]. Visual inspection
> > reveals that while CRC is being collected degamma block has been
> > reset. This was traced back to the internal commit that the driver does to disable
> PSR2 and selective fetch for CRC collection.
> >
> > crtc_crc_open
> >     -> intel_crtc_set_crc_source
> >         -> intel_crtc_crc_setup_workarounds
> >             -> drm_atomic_commit
> >
> > During this flow colorop states are never added to the atomic state
> > which in turn makes intel_plane_color_copy_uapi_to_hw_state() disable the
> colorops.
> >
> > If we add the colorops, to the atomic state, the problem still
> > persisted because while duplicating the colorop state, 'bypass' was getting reset
> to true.
> >
> > The two changes made in this series fixes the issue.
> >
> > [1]
> > https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_18001/shard-mtlp-6/igt
> > @kms_color_pipeline@plane-lut1d.html
> >
> > Cc: Simon Ser <contact@emersion.fr>
> > Cc: Alex Hung <alex.hung@amd.com>
> > Cc: Harry Wentland <harry.wentland@amd.com>
> > Cc: Daniel Stone <daniels@collabora.com>
> > Cc: Melissa Wen <mwen@igalia.com>
> > Cc: Sebastian Wick <sebastian.wick@redhat.com>
> > Cc: Alex Hung <alex.hung@amd.com>
> > Cc: Uma Shankar <uma.shankar@intel.com>
> > Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> > Cc: Jani Nikula <jani.nikula@intel.com>
> > Cc: Louis Chauvet <louis.chauvet@bootlin.com>
> > Cc: <stable@vger.kernel.org> #v6.19+
> >
> > Chaitanya Kumar Borah (2):
> >   drm/colorop: Preserve bypass value in duplicate_state()
> >   drm/atomic: Add affected colorops with affected planes
> >
> >  drivers/gpu/drm/drm_atomic.c  | 5 +++++
> > drivers/gpu/drm/drm_colorop.c | 2 --
> >  2 files changed, 5 insertions(+), 2 deletions(-)
> >


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 0/2] drm/colorop: Keep colorop state consistent across atomic commits
  2026-02-23 21:14 ` [PATCH 0/2] drm/colorop: Keep colorop state consistent across atomic commits Harry Wentland
  2026-02-24  8:59   ` Shankar, Uma
@ 2026-02-26  5:59   ` Borah, Chaitanya Kumar
  2026-03-10 21:00     ` Borah, Chaitanya Kumar
  1 sibling, 1 reply; 16+ messages in thread
From: Borah, Chaitanya Kumar @ 2026-02-26  5:59 UTC (permalink / raw)
  To: Harry Wentland, dri-devel, intel-gfx, intel-xe
  Cc: contact, alex.hung, daniels, mwen, sebastian.wick, uma.shankar,
	ville.syrjala, maarten.lankhorst, jani.nikula, louis.chauvet,
	stable

Thank you Harry for looking into it.

On 2/24/2026 2:44 AM, Harry Wentland wrote:
> On 2026-02-18 01:57, Chaitanya Kumar Borah wrote:
>> This series aims to keep colorop state consistent across atomic
>> transactions by ensuring it accurately reflects committed hardware
>> state and remains part of the atomic update whenever its associated
>> plane is involved.
>>
>> It contains two changes:
>> - Preserves the bypass value in duplicated colorop state.
>>
>> _drm_atomic_helper_colorop_duplicate_state() unconditionally reset
>> bypass to true, which means the duplicated state no longer reflects the
>> committed hardware state. Since bypass directly controls whether the
>> colorop is active in hardware, this can lead to an unintended disable
>> during subsequent commits.
>>
>> This could potentially be a problem also for colorops where bypass value
>> is immutably false.
>>
>> Conceptually, I consider 'bypass' to behave similar to 'visible' in plane
>> state - it represents current HW state and should therefore be preserved
>> across duplication.
>>
>> - Add affected colorops with affected plane
>>
>> Colorops are unique in the DRM model. While they are DRM objects with their
>> own states, they are logically attached to a plane and exposed through
>> a plane property. In some sense, they share the same hierarchy as CRTC and
>> planes while following a different 'ownership' model.
>>
>> Given that enabling a CRTC pulls in all its affected planes into the atomic
>> state, it follows that when a plane is added, its associated colorops are
>> also included. Otherwise, during modesets or internal commits, colorop state
>> may be missing from the transaction, resulting in inconsistent or incomplete
>> state updates.
>>
> 
> That tends to reflect my thinking when I wrote the colorop stuff.
> 
>> That said, I do have a concern about potentially inflating the atomic
>> state by automatically pulling in colorops from the core. It is not
>> entirely clear to me whether inclusion of affected colorops should be
>> handled in core, or left to individual drivers.
>>
> 
> Could this lead drivers to reprogram possibly expensive colorops
> when they didn't change? It won't be an issue for amdgpu since we
> have another level of state tracking, but for drivers that strictly
> follow the atomic model it might lead to issues.
> 

For xe/i915 too, this should be something that we can handle in 
atomic_check().

I guess the real question is whether this violates the atomic design 
contract. As far as I understand, when we pull in affected planes for a 
CRTC, we don’t actually verify whether any plane state has changed.
So by that analogy, should this be acceptable as well?

> On the other hand it makes colorop handling less error-prone in amdgpu,
> and possibly fixes a bug I've come across where we get confused if an
> active colorop isn't part of the state.
> 
> Harry
> 
>> My understanding of the atomic framework is still evolving, so
>> I would appreciate feedback from those more familiar with the intended
>> design direction.
>>
>> ==
>> Chaitanya
>>
>> P.S/Background/TL;DR:
>>
>> I discovered inconsistency with the colorop state while analysing CRC mismatches
>> in kms_color_pipeline test cases[1]. Visual inspection reveals that while CRC is
>> being collected degamma block has been reset. This was traced back to the internal
>> commit that the driver does to disable PSR2 and selective fetch for CRC collection.
>>
>> crtc_crc_open
>>      -> intel_crtc_set_crc_source
>>          -> intel_crtc_crc_setup_workarounds
>>              -> drm_atomic_commit
>>
>> During this flow colorop states are never added to the atomic state which in turn
>> makes intel_plane_color_copy_uapi_to_hw_state() disable the colorops.
>>
>> If we add the colorops, to the atomic state, the problem still persisted because
>> while duplicating the colorop state, 'bypass' was getting reset to true.
>>
>> The two changes made in this series fixes the issue.
>>
>> [1] https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_18001/shard-mtlp-6/igt@kms_color_pipeline@plane-lut1d.html
>>
>> Cc: Simon Ser <contact@emersion.fr>
>> Cc: Alex Hung <alex.hung@amd.com>
>> Cc: Harry Wentland <harry.wentland@amd.com>
>> Cc: Daniel Stone <daniels@collabora.com>
>> Cc: Melissa Wen <mwen@igalia.com>
>> Cc: Sebastian Wick <sebastian.wick@redhat.com>
>> Cc: Alex Hung <alex.hung@amd.com>
>> Cc: Uma Shankar <uma.shankar@intel.com>
>> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
>> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
>> Cc: Jani Nikula <jani.nikula@intel.com>
>> Cc: Louis Chauvet <louis.chauvet@bootlin.com>
>> Cc: <stable@vger.kernel.org> #v6.19+
>>
>> Chaitanya Kumar Borah (2):
>>    drm/colorop: Preserve bypass value in duplicate_state()
>>    drm/atomic: Add affected colorops with affected planes
>>
>>   drivers/gpu/drm/drm_atomic.c  | 5 +++++
>>   drivers/gpu/drm/drm_colorop.c | 2 --
>>   2 files changed, 5 insertions(+), 2 deletions(-)
>>
> 


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 0/2] drm/colorop: Keep colorop state consistent across atomic commits
  2026-02-26  5:59   ` Borah, Chaitanya Kumar
@ 2026-03-10 21:00     ` Borah, Chaitanya Kumar
  0 siblings, 0 replies; 16+ messages in thread
From: Borah, Chaitanya Kumar @ 2026-03-10 21:00 UTC (permalink / raw)
  To: Harry Wentland, dri-devel, intel-gfx, intel-xe
  Cc: contact, alex.hung, daniels, mwen, sebastian.wick, uma.shankar,
	ville.syrjala, maarten.lankhorst, jani.nikula, louis.chauvet,
	stable



On 2/26/2026 11:29 AM, Borah, Chaitanya Kumar wrote:
> Thank you Harry for looking into it.
> 
> On 2/24/2026 2:44 AM, Harry Wentland wrote:
>> On 2026-02-18 01:57, Chaitanya Kumar Borah wrote:
>>> This series aims to keep colorop state consistent across atomic
>>> transactions by ensuring it accurately reflects committed hardware
>>> state and remains part of the atomic update whenever its associated
>>> plane is involved.
>>>
>>> It contains two changes:
>>> - Preserves the bypass value in duplicated colorop state.
>>>
>>> _drm_atomic_helper_colorop_duplicate_state() unconditionally reset
>>> bypass to true, which means the duplicated state no longer reflects the
>>> committed hardware state. Since bypass directly controls whether the
>>> colorop is active in hardware, this can lead to an unintended disable
>>> during subsequent commits.
>>>
>>> This could potentially be a problem also for colorops where bypass value
>>> is immutably false.
>>>
>>> Conceptually, I consider 'bypass' to behave similar to 'visible' in 
>>> plane
>>> state - it represents current HW state and should therefore be preserved
>>> across duplication.
>>>
>>> - Add affected colorops with affected plane
>>>
>>> Colorops are unique in the DRM model. While they are DRM objects with 
>>> their
>>> own states, they are logically attached to a plane and exposed through
>>> a plane property. In some sense, they share the same hierarchy as 
>>> CRTC and
>>> planes while following a different 'ownership' model.
>>>
>>> Given that enabling a CRTC pulls in all its affected planes into the 
>>> atomic
>>> state, it follows that when a plane is added, its associated colorops 
>>> are
>>> also included. Otherwise, during modesets or internal commits, 
>>> colorop state
>>> may be missing from the transaction, resulting in inconsistent or 
>>> incomplete
>>> state updates.
>>>
>>
>> That tends to reflect my thinking when I wrote the colorop stuff.
>>
>>> That said, I do have a concern about potentially inflating the atomic
>>> state by automatically pulling in colorops from the core. It is not
>>> entirely clear to me whether inclusion of affected colorops should be
>>> handled in core, or left to individual drivers.
>>>
>>
>> Could this lead drivers to reprogram possibly expensive colorops
>> when they didn't change? It won't be an issue for amdgpu since we
>> have another level of state tracking, but for drivers that strictly
>> follow the atomic model it might lead to issues.
>>
> 
> For xe/i915 too, this should be something that we can handle in 
> atomic_check().
> 
> I guess the real question is whether this violates the atomic design 
> contract. As far as I understand, when we pull in affected planes for a 
> CRTC, we don’t actually verify whether any plane state has changed.
> So by that analogy, should this be acceptable as well?
> 

One downside of adding colorops indiscriminately is lot of logs.

[drm:drm_atomic_get_colorop_state] Added [COLOROP:288:1] 
ffff88810db07240 state to ffff88810e040800

So I created a version where we add only if a color pipeline is selected.

https://lore.kernel.org/intel-gfx/20260310113238.3495981-3-chaitanya.kumar.borah@intel.com/T/#u

Harry, please let me know if this approach still work for you.

It would be good to hear others’ opinions on this as well.

>> On the other hand it makes colorop handling less error-prone in amdgpu,
>> and possibly fixes a bug I've come across where we get confused if an
>> active colorop isn't part of the state.
>>
>> Harry
>>
>>> My understanding of the atomic framework is still evolving, so
>>> I would appreciate feedback from those more familiar with the intended
>>> design direction.
>>>
>>> ==
>>> Chaitanya
>>>
>>> P.S/Background/TL;DR:
>>>
>>> I discovered inconsistency with the colorop state while analysing CRC 
>>> mismatches
>>> in kms_color_pipeline test cases[1]. Visual inspection reveals that 
>>> while CRC is
>>> being collected degamma block has been reset. This was traced back to 
>>> the internal
>>> commit that the driver does to disable PSR2 and selective fetch for 
>>> CRC collection.
>>>
>>> crtc_crc_open
>>>      -> intel_crtc_set_crc_source
>>>          -> intel_crtc_crc_setup_workarounds
>>>              -> drm_atomic_commit
>>>
>>> During this flow colorop states are never added to the atomic state 
>>> which in turn
>>> makes intel_plane_color_copy_uapi_to_hw_state() disable the colorops.
>>>
>>> If we add the colorops, to the atomic state, the problem still 
>>> persisted because
>>> while duplicating the colorop state, 'bypass' was getting reset to true.
>>>
>>> The two changes made in this series fixes the issue.
>>>
>>> [1] https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_18001/shard- 
>>> mtlp-6/igt@kms_color_pipeline@plane-lut1d.html
>>>
>>> Cc: Simon Ser <contact@emersion.fr>
>>> Cc: Alex Hung <alex.hung@amd.com>
>>> Cc: Harry Wentland <harry.wentland@amd.com>
>>> Cc: Daniel Stone <daniels@collabora.com>
>>> Cc: Melissa Wen <mwen@igalia.com>
>>> Cc: Sebastian Wick <sebastian.wick@redhat.com>
>>> Cc: Alex Hung <alex.hung@amd.com>
>>> Cc: Uma Shankar <uma.shankar@intel.com>
>>> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
>>> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
>>> Cc: Jani Nikula <jani.nikula@intel.com>
>>> Cc: Louis Chauvet <louis.chauvet@bootlin.com>
>>> Cc: <stable@vger.kernel.org> #v6.19+
>>>
>>> Chaitanya Kumar Borah (2):
>>>    drm/colorop: Preserve bypass value in duplicate_state()
>>>    drm/atomic: Add affected colorops with affected planes
>>>
>>>   drivers/gpu/drm/drm_atomic.c  | 5 +++++
>>>   drivers/gpu/drm/drm_colorop.c | 2 --
>>>   2 files changed, 5 insertions(+), 2 deletions(-)
>>>
>>
> 


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 2/2] drm/atomic: Add affected colorops with affected planes
  2026-02-23 20:37   ` Shankar, Uma
@ 2026-03-10 21:07     ` Borah, Chaitanya Kumar
  0 siblings, 0 replies; 16+ messages in thread
From: Borah, Chaitanya Kumar @ 2026-03-10 21:07 UTC (permalink / raw)
  To: Shankar, Uma, dri-devel@lists.freedesktop.org,
	intel-gfx@lists.freedesktop.org, intel-xe@lists.freedesktop.org
  Cc: contact@emersion.fr, alex.hung@amd.com, harry.wentland@amd.com,
	daniels@collabora.com, mwen@igalia.com, sebastian.wick@redhat.com,
	ville.syrjala@linux.intel.com, maarten.lankhorst@linux.intel.com,
	Nikula, Jani, louis.chauvet@bootlin.com, stable@vger.kernel.org



On 2/24/2026 2:07 AM, Shankar, Uma wrote:
>> Subject: [PATCH 2/2] drm/atomic: Add affected colorops with affected planes
>>
>> When drm_atomic_add_affected_planes() adds a plane to the atomic state, the
>> associated colorops are not guaranteed to be included.
>> This can leave colorop state out of the transaction when planes are pulled in
>> implicitly (eg. during modeset or internal commits).
>>
>> Also add affected colorops when adding affected planes to keep plane and color
>> pipeline state consistent within the atomic transaction.
> Even though colorop is an object in itself but practically it doesn't have any existence without
> the plane. So to add to state along with plane seems logical. Also its good to handle this in
> drm core than individual drivers.
> 
> The change looks good to me.
> Reviewed-by: Uma Shankar<uma.shankar@intel.com>

Thank you, Uma, for the review.

I have sent another version of the patch where the colorops are added 
only when pipeline is enabled. This avoids flooding of following logs 
when pipeline is disabled.


  [drm:drm_atomic_get_colorop_state] Added [COLOROP:288:1] 
ffff88810db07240 state to ffff88810e040800

Let me know if this looks good for you.

==
Chaitanya

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2026-03-10 21:07 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-02-18  6:57 [PATCH 0/2] drm/colorop: Keep colorop state consistent across atomic commits Chaitanya Kumar Borah
2026-02-18  6:57 ` [PATCH 1/2] drm/colorop: Preserve bypass value in duplicate_state() Chaitanya Kumar Borah
2026-02-23 20:33   ` Shankar, Uma
2026-02-18  6:57 ` [PATCH 2/2] drm/atomic: Add affected colorops with affected planes Chaitanya Kumar Borah
2026-02-23 20:37   ` Shankar, Uma
2026-03-10 21:07     ` Borah, Chaitanya Kumar
2026-02-18  7:42 ` ✓ CI.KUnit: success for drm/colorop: Keep colorop state consistent across atomic commits Patchwork
2026-02-18  8:15 ` ✓ Xe.CI.BAT: " Patchwork
2026-02-18  8:32 ` ✓ Xe.CI.FULL: " Patchwork
2026-02-18 10:52 ` ✓ CI.KUnit: success for drm/colorop: Keep colorop state consistent across atomic commits (rev2) Patchwork
2026-02-18 12:23 ` ✓ Xe.CI.BAT: " Patchwork
2026-02-18 13:01 ` ✗ Xe.CI.FULL: failure " Patchwork
2026-02-23 21:14 ` [PATCH 0/2] drm/colorop: Keep colorop state consistent across atomic commits Harry Wentland
2026-02-24  8:59   ` Shankar, Uma
2026-02-26  5:59   ` Borah, Chaitanya Kumar
2026-03-10 21:00     ` Borah, Chaitanya Kumar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox