Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] drm/xe: Disable stolen memory for driver allocations.
@ 2026-06-30 13:55 Maarten Lankhorst
  2026-06-30 13:55 ` [PATCH 1/3] drm/xe: Avoid using stolen memory for DPT Maarten Lankhorst
                   ` (5 more replies)
  0 siblings, 6 replies; 13+ messages in thread
From: Maarten Lankhorst @ 2026-06-30 13:55 UTC (permalink / raw)
  To: intel-xe; +Cc: dri-devel, Maarten Lankhorst

Using stolen memory has effect on system stability on integrated at high load,
and causes increased latency waking up from media C6 state.

Only use stolen memory when needed, which is for GSC firmware and FBC.

Link: https://gitlab.freedesktop.org/drm/xe/kernel/-/work_items/7513

Maarten Lankhorst (3):
  drm/xe: Avoid using stolen memory for DPT.
  drm/xe/display: Avoid using stolen memory for framebuffer when media
    gt exists.
  drm/xe/display: Do not allocate into stolen for new framebuffers.

 drivers/gpu/drm/xe/display/xe_display_bo.c | 40 +++++++---------------
 drivers/gpu/drm/xe/display/xe_fb_pin.c     | 33 +++++-------------
 2 files changed, 21 insertions(+), 52 deletions(-)

-- 
2.53.0


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

* [PATCH 1/3] drm/xe: Avoid using stolen memory for DPT.
  2026-06-30 13:55 [PATCH 0/3] drm/xe: Disable stolen memory for driver allocations Maarten Lankhorst
@ 2026-06-30 13:55 ` Maarten Lankhorst
  2026-06-30 14:10   ` Matthew Auld
  2026-06-30 13:55 ` [PATCH 2/3] drm/xe/display: Avoid using stolen memory for framebuffer when media gt exists Maarten Lankhorst
                   ` (4 subsequent siblings)
  5 siblings, 1 reply; 13+ messages in thread
From: Maarten Lankhorst @ 2026-06-30 13:55 UTC (permalink / raw)
  To: intel-xe; +Cc: dri-devel, Maarten Lankhorst

On systems with media GT, extra latency is added when accessing stolen
memory when the GT is in MC6. Since we additionally aren't counting how
much memory is used for stolen and we could in theory fill up the
entire stolen area with DPT's, avoid using stolen and only use the
default memory region.

Additionally, this may also result in random system hangs under load.

Link: https://gitlab.freedesktop.org/drm/xe/kernel/-/work_items/7513
Signed-off-by: Maarten Lankhorst <dev@lankhorst.se>
---
 drivers/gpu/drm/xe/display/xe_fb_pin.c | 33 +++++++-------------------
 1 file changed, 8 insertions(+), 25 deletions(-)

diff --git a/drivers/gpu/drm/xe/display/xe_fb_pin.c b/drivers/gpu/drm/xe/display/xe_fb_pin.c
index 5f4a0cd8deca0..73469ea5f333d 100644
--- a/drivers/gpu/drm/xe/display/xe_fb_pin.c
+++ b/drivers/gpu/drm/xe/display/xe_fb_pin.c
@@ -164,31 +164,14 @@ static int __xe_pin_fb_vma_dpt(struct drm_gem_object *obj,
 		dpt_size = ALIGN(intel_rotation_info_size(&view->rotated) * 8,
 				 XE_PAGE_SIZE);
 
-	if (IS_DGFX(xe))
-		dpt = xe_bo_create_pin_map_at_novm(xe, tile0,
-						   dpt_size, ~0ull,
-						   ttm_bo_type_kernel,
-						   XE_BO_FLAG_VRAM0 |
-						   XE_BO_FLAG_GGTT |
-						   XE_BO_FLAG_PAGETABLE,
-						   pin_params->alignment, false);
-	else
-		dpt = xe_bo_create_pin_map_at_novm(xe, tile0,
-						   dpt_size,  ~0ull,
-						   ttm_bo_type_kernel,
-						   XE_BO_FLAG_STOLEN |
-						   XE_BO_FLAG_GGTT |
-						   XE_BO_FLAG_PAGETABLE,
-						   pin_params->alignment, false);
-	if (IS_ERR(dpt))
-		dpt = xe_bo_create_pin_map_at_novm(xe, tile0,
-						   dpt_size,  ~0ull,
-						   ttm_bo_type_kernel,
-						   XE_BO_FLAG_SYSTEM |
-						   XE_BO_FLAG_GGTT |
-						   XE_BO_FLAG_PAGETABLE |
-						   XE_BO_FLAG_FORCE_WC,
-						   pin_params->alignment, false);
+	dpt = xe_bo_create_pin_map_at_novm(xe, tile0,
+					   dpt_size,  ~0ull,
+					   ttm_bo_type_kernel,
+					   XE_BO_FLAG_VRAM_IF_DGFX(tile0) |
+					   XE_BO_FLAG_GGTT |
+					   XE_BO_FLAG_PAGETABLE |
+					   XE_BO_FLAG_FORCE_WC,
+					   pin_params->alignment, false);
 	if (IS_ERR(dpt))
 		return PTR_ERR(dpt);
 
-- 
2.53.0


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

* [PATCH 2/3] drm/xe/display: Avoid using stolen memory for framebuffer when media gt exists.
  2026-06-30 13:55 [PATCH 0/3] drm/xe: Disable stolen memory for driver allocations Maarten Lankhorst
  2026-06-30 13:55 ` [PATCH 1/3] drm/xe: Avoid using stolen memory for DPT Maarten Lankhorst
@ 2026-06-30 13:55 ` Maarten Lankhorst
  2026-07-01 10:27   ` Matthew Auld
  2026-06-30 13:55 ` [PATCH 3/3] drm/xe/display: Do not allocate into stolen for new framebuffers Maarten Lankhorst
                   ` (3 subsequent siblings)
  5 siblings, 1 reply; 13+ messages in thread
From: Maarten Lankhorst @ 2026-06-30 13:55 UTC (permalink / raw)
  To: intel-xe; +Cc: dri-devel, Maarten Lankhorst

On systems with media GT, extra latency is added when accessing stolen
memory when the GT is in MC6.

Simply disable allocating stolen memory for framebuffers when media gt
is found.

Link: https://gitlab.freedesktop.org/drm/xe/kernel/-/work_items/7513
Signed-off-by: Maarten Lankhorst <dev@lankhorst.se>
---
 drivers/gpu/drm/xe/display/xe_display_bo.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/drivers/gpu/drm/xe/display/xe_display_bo.c b/drivers/gpu/drm/xe/display/xe_display_bo.c
index 8953da0136dcb..677ae3af9ac0c 100644
--- a/drivers/gpu/drm/xe/display/xe_display_bo.c
+++ b/drivers/gpu/drm/xe/display/xe_display_bo.c
@@ -131,6 +131,13 @@ bool xe_display_bo_fbdev_prefer_stolen(struct xe_device *xe, unsigned int size)
 	if (IS_DGFX(xe))
 		return false;
 
+	/*
+	 * Avoid stolen memory when the media_gt exists,
+	 * because a lot of latency is added when media gt is in MC6
+	 */
+	if (xe_device_get_root_tile(xe)->media_gt)
+		return false;
+
 	if (XE_DEVICE_WA(xe, 22019338487_display))
 		return false;
 
-- 
2.53.0


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

* [PATCH 3/3] drm/xe/display: Do not allocate into stolen for new framebuffers.
  2026-06-30 13:55 [PATCH 0/3] drm/xe: Disable stolen memory for driver allocations Maarten Lankhorst
  2026-06-30 13:55 ` [PATCH 1/3] drm/xe: Avoid using stolen memory for DPT Maarten Lankhorst
  2026-06-30 13:55 ` [PATCH 2/3] drm/xe/display: Avoid using stolen memory for framebuffer when media gt exists Maarten Lankhorst
@ 2026-06-30 13:55 ` Maarten Lankhorst
  2026-07-01 10:33   ` Matthew Auld
  2026-06-30 14:25 ` ✓ CI.KUnit: success for drm/xe: Disable stolen memory for driver allocations Patchwork
                   ` (2 subsequent siblings)
  5 siblings, 1 reply; 13+ messages in thread
From: Maarten Lankhorst @ 2026-06-30 13:55 UTC (permalink / raw)
  To: intel-xe; +Cc: dri-devel, Maarten Lankhorst

Prefer to use system memory for global framebuffers, and reserve
the space for FBC use only.

Now that multiple CRTC's can use FBC's, the simple heuristic
of using less than half of stolen is no longer sufficient.

Link: https://gitlab.freedesktop.org/drm/xe/kernel/-/work_items/7513
Signed-off-by: Maarten Lankhorst <dev@lankhorst.se>
---
 drivers/gpu/drm/xe/display/xe_display_bo.c | 33 ++++------------------
 1 file changed, 6 insertions(+), 27 deletions(-)

diff --git a/drivers/gpu/drm/xe/display/xe_display_bo.c b/drivers/gpu/drm/xe/display/xe_display_bo.c
index 677ae3af9ac0c..04d4204b37a53 100644
--- a/drivers/gpu/drm/xe/display/xe_display_bo.c
+++ b/drivers/gpu/drm/xe/display/xe_display_bo.c
@@ -154,33 +154,12 @@ static struct drm_gem_object *xe_display_bo_fbdev_create(struct drm_device *drm,
 	struct xe_device *xe = to_xe_device(drm);
 	struct xe_bo *obj;
 
-	obj = ERR_PTR(-ENODEV);
-
-	if (xe_display_bo_fbdev_prefer_stolen(xe, size)) {
-		obj = xe_bo_create_pin_map_novm(xe, xe_device_get_root_tile(xe),
-						size,
-						ttm_bo_type_kernel,
-						XE_BO_FLAG_FORCE_WC |
-						XE_BO_FLAG_STOLEN |
-						XE_BO_FLAG_GGTT,
-						false);
-		if (!IS_ERR(obj))
-			drm_info(&xe->drm, "Allocated fbdev into stolen\n");
-		else
-			drm_info(&xe->drm, "Allocated fbdev into stolen failed: %li\n", PTR_ERR(obj));
-	} else {
-		drm_info(&xe->drm, "Allocating fbdev: Stolen memory not preferred.\n");
-	}
-
-	if (IS_ERR(obj)) {
-		obj = xe_bo_create_pin_map_novm(xe, xe_device_get_root_tile(xe), size,
-						ttm_bo_type_kernel,
-						XE_BO_FLAG_FORCE_WC |
-						XE_BO_FLAG_VRAM_IF_DGFX(xe_device_get_root_tile(xe)) |
-						XE_BO_FLAG_GGTT,
-						false);
-	}
-
+	obj = xe_bo_create_pin_map_novm(xe, xe_device_get_root_tile(xe), size,
+					ttm_bo_type_kernel,
+					XE_BO_FLAG_FORCE_WC |
+					XE_BO_FLAG_VRAM_IF_DGFX(xe_device_get_root_tile(xe)) |
+					XE_BO_FLAG_GGTT,
+					false);
 	if (IS_ERR(obj)) {
 		drm_err(&xe->drm, "failed to allocate framebuffer (%pe)\n", obj);
 		return ERR_PTR(-ENOMEM);
-- 
2.53.0


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

* Re: [PATCH 1/3] drm/xe: Avoid using stolen memory for DPT.
  2026-06-30 13:55 ` [PATCH 1/3] drm/xe: Avoid using stolen memory for DPT Maarten Lankhorst
@ 2026-06-30 14:10   ` Matthew Auld
  2026-07-01 10:14     ` Maarten Lankhorst
  0 siblings, 1 reply; 13+ messages in thread
From: Matthew Auld @ 2026-06-30 14:10 UTC (permalink / raw)
  To: Maarten Lankhorst, intel-xe; +Cc: dri-devel

On 30/06/2026 14:55, Maarten Lankhorst wrote:
> On systems with media GT, extra latency is added when accessing stolen
> memory when the GT is in MC6. Since we additionally aren't counting how
> much memory is used for stolen and we could in theory fill up the
> entire stolen area with DPT's, avoid using stolen and only use the
> default memory region.
> 
> Additionally, this may also result in random system hangs under load.
> 
> Link: https://gitlab.freedesktop.org/drm/xe/kernel/-/work_items/7513
> Signed-off-by: Maarten Lankhorst <dev@lankhorst.se>

Fixes: 775d0adc01a5 ("drm/xe/fbdev: Limit the usage of stolen for LNL+")
Cc: <stable@vger.kernel.org> # v6.12+

?

> ---
>   drivers/gpu/drm/xe/display/xe_fb_pin.c | 33 +++++++-------------------
>   1 file changed, 8 insertions(+), 25 deletions(-)
> 
> diff --git a/drivers/gpu/drm/xe/display/xe_fb_pin.c b/drivers/gpu/drm/xe/display/xe_fb_pin.c
> index 5f4a0cd8deca0..73469ea5f333d 100644
> --- a/drivers/gpu/drm/xe/display/xe_fb_pin.c
> +++ b/drivers/gpu/drm/xe/display/xe_fb_pin.c
> @@ -164,31 +164,14 @@ static int __xe_pin_fb_vma_dpt(struct drm_gem_object *obj,
>   		dpt_size = ALIGN(intel_rotation_info_size(&view->rotated) * 8,
>   				 XE_PAGE_SIZE);
>   
> -	if (IS_DGFX(xe))
> -		dpt = xe_bo_create_pin_map_at_novm(xe, tile0,
> -						   dpt_size, ~0ull,
> -						   ttm_bo_type_kernel,
> -						   XE_BO_FLAG_VRAM0 |
> -						   XE_BO_FLAG_GGTT |
> -						   XE_BO_FLAG_PAGETABLE,
> -						   pin_params->alignment, false);
> -	else
> -		dpt = xe_bo_create_pin_map_at_novm(xe, tile0,
> -						   dpt_size,  ~0ull,
> -						   ttm_bo_type_kernel,
> -						   XE_BO_FLAG_STOLEN |
> -						   XE_BO_FLAG_GGTT |
> -						   XE_BO_FLAG_PAGETABLE,
> -						   pin_params->alignment, false);
> -	if (IS_ERR(dpt))
> -		dpt = xe_bo_create_pin_map_at_novm(xe, tile0,
> -						   dpt_size,  ~0ull,
> -						   ttm_bo_type_kernel,
> -						   XE_BO_FLAG_SYSTEM |
> -						   XE_BO_FLAG_GGTT |
> -						   XE_BO_FLAG_PAGETABLE |
> -						   XE_BO_FLAG_FORCE_WC,
> -						   pin_params->alignment, false);

Technically this changes the behaviour for dgpu, where it looks like it 
will fall back to system memory? Surprised that would even work though, 
and not get a bunch of pipe errors? I would assume VRAM is a requirement.

Either keeping the same behaviour, or updating the commit to mention 
this change, or splitting that out (maybe needs a separate fixes?),
Reviewed-by: Matthew Auld <matthew.auld@intel.com>

> +	dpt = xe_bo_create_pin_map_at_novm(xe, tile0,
> +					   dpt_size,  ~0ull,
> +					   ttm_bo_type_kernel,
> +					   XE_BO_FLAG_VRAM_IF_DGFX(tile0) |
> +					   XE_BO_FLAG_GGTT |
> +					   XE_BO_FLAG_PAGETABLE |
> +					   XE_BO_FLAG_FORCE_WC,
> +					   pin_params->alignment, false);
>   	if (IS_ERR(dpt))
>   		return PTR_ERR(dpt);
>   


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

* ✓ CI.KUnit: success for drm/xe: Disable stolen memory for driver allocations.
  2026-06-30 13:55 [PATCH 0/3] drm/xe: Disable stolen memory for driver allocations Maarten Lankhorst
                   ` (2 preceding siblings ...)
  2026-06-30 13:55 ` [PATCH 3/3] drm/xe/display: Do not allocate into stolen for new framebuffers Maarten Lankhorst
@ 2026-06-30 14:25 ` Patchwork
  2026-06-30 14:59 ` ✓ Xe.CI.BAT: " Patchwork
  2026-07-01  6:40 ` ✓ Xe.CI.FULL: " Patchwork
  5 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2026-06-30 14:25 UTC (permalink / raw)
  To: Maarten Lankhorst; +Cc: intel-xe

== Series Details ==

Series: drm/xe: Disable stolen memory for driver allocations.
URL   : https://patchwork.freedesktop.org/series/169514/
State : success

== Summary ==

+ trap cleanup EXIT
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/xe/.kunitconfig
[14:23:43] Configuring KUnit Kernel ...
Generating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[14:23:48] 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
../drivers/gpu/drm/xe/xe_pt.c:1418:13: warning: ‘xe_pt_svm_userptr_notifier_lock’ defined but not used [-Wunused-function]
 1418 | static void xe_pt_svm_userptr_notifier_lock(struct xe_vm *vm)
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

[14:24:20] Starting KUnit Kernel (1/1)...
[14:24:20] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[14:24:21] ================== guc_buf (11 subtests) ===================
[14:24:21] [PASSED] test_smallest
[14:24:21] [PASSED] test_largest
[14:24:21] [PASSED] test_granular
[14:24:21] [PASSED] test_unique
[14:24:21] [PASSED] test_overlap
[14:24:21] [PASSED] test_reusable
[14:24:21] [PASSED] test_too_big
[14:24:21] [PASSED] test_flush
[14:24:21] [PASSED] test_lookup
[14:24:21] [PASSED] test_data
[14:24:21] [PASSED] test_class
[14:24:21] ===================== [PASSED] guc_buf =====================
[14:24:21] =================== guc_dbm (7 subtests) ===================
[14:24:21] [PASSED] test_empty
[14:24:21] [PASSED] test_default
[14:24:21] ======================== test_size  ========================
[14:24:21] [PASSED] 4
[14:24:21] [PASSED] 8
[14:24:21] [PASSED] 32
[14:24:21] [PASSED] 256
[14:24:21] ==================== [PASSED] test_size ====================
[14:24:21] ======================= test_reuse  ========================
[14:24:21] [PASSED] 4
[14:24:21] [PASSED] 8
[14:24:21] [PASSED] 32
[14:24:21] [PASSED] 256
[14:24:21] =================== [PASSED] test_reuse ====================
[14:24:21] =================== test_range_overlap  ====================
[14:24:21] [PASSED] 4
[14:24:21] [PASSED] 8
[14:24:21] [PASSED] 32
[14:24:21] [PASSED] 256
[14:24:21] =============== [PASSED] test_range_overlap ================
[14:24:21] =================== test_range_compact  ====================
[14:24:21] [PASSED] 4
[14:24:21] [PASSED] 8
[14:24:21] [PASSED] 32
[14:24:21] [PASSED] 256
[14:24:21] =============== [PASSED] test_range_compact ================
[14:24:21] ==================== test_range_spare  =====================
[14:24:21] [PASSED] 4
[14:24:21] [PASSED] 8
[14:24:21] [PASSED] 32
[14:24:21] [PASSED] 256
[14:24:21] ================ [PASSED] test_range_spare =================
[14:24:21] ===================== [PASSED] guc_dbm =====================
[14:24:21] =================== guc_idm (6 subtests) ===================
[14:24:21] [PASSED] bad_init
[14:24:21] [PASSED] no_init
[14:24:21] [PASSED] init_fini
[14:24:21] [PASSED] check_used
[14:24:21] [PASSED] check_quota
[14:24:21] [PASSED] check_all
[14:24:21] ===================== [PASSED] guc_idm =====================
[14:24:21] ================== no_relay (3 subtests) ===================
[14:24:21] [PASSED] xe_drops_guc2pf_if_not_ready
[14:24:21] [PASSED] xe_drops_guc2vf_if_not_ready
[14:24:21] [PASSED] xe_rejects_send_if_not_ready
[14:24:21] ==================== [PASSED] no_relay =====================
[14:24:21] ================== pf_relay (14 subtests) ==================
[14:24:21] [PASSED] pf_rejects_guc2pf_too_short
[14:24:21] [PASSED] pf_rejects_guc2pf_too_long
[14:24:21] [PASSED] pf_rejects_guc2pf_no_payload
[14:24:21] [PASSED] pf_fails_no_payload
[14:24:21] [PASSED] pf_fails_bad_origin
[14:24:21] [PASSED] pf_fails_bad_type
[14:24:21] [PASSED] pf_txn_reports_error
[14:24:21] [PASSED] pf_txn_sends_pf2guc
[14:24:21] [PASSED] pf_sends_pf2guc
[14:24:21] [SKIPPED] pf_loopback_nop (requires CONFIG_DRM_XE_DEBUG_SRIOV)
[14:24:21] [SKIPPED] pf_loopback_echo (requires CONFIG_DRM_XE_DEBUG_SRIOV)
[14:24:21] [SKIPPED] pf_loopback_fail (requires CONFIG_DRM_XE_DEBUG_SRIOV)
[14:24:21] [SKIPPED] pf_loopback_busy (requires CONFIG_DRM_XE_DEBUG_SRIOV)
[14:24:21] [SKIPPED] pf_loopback_retry (requires CONFIG_DRM_XE_DEBUG_SRIOV)
[14:24:21] ==================== [PASSED] pf_relay =====================
[14:24:21] ================== vf_relay (3 subtests) ===================
[14:24:21] [PASSED] vf_rejects_guc2vf_too_short
[14:24:21] [PASSED] vf_rejects_guc2vf_too_long
[14:24:21] [PASSED] vf_rejects_guc2vf_no_payload
[14:24:21] ==================== [PASSED] vf_relay =====================
[14:24:21] ================ pf_gt_config (9 subtests) =================
[14:24:21] [PASSED] fair_contexts_1vf
[14:24:21] [PASSED] fair_doorbells_1vf
[14:24:21] [PASSED] fair_ggtt_1vf
[14:24:21] ====================== fair_vram_1vf  ======================
[14:24:21] [PASSED] 3.50 GiB
[14:24:21] [PASSED] 11.5 GiB
[14:24:21] [PASSED] 15.5 GiB
[14:24:21] [PASSED] 31.5 GiB
[14:24:21] [PASSED] 63.5 GiB
[14:24:21] [PASSED] 1.91 GiB
[14:24:21] ================== [PASSED] fair_vram_1vf ==================
[14:24:21] ================ fair_vram_1vf_admin_only  =================
[14:24:21] [PASSED] 3.50 GiB
[14:24:21] [PASSED] 11.5 GiB
[14:24:21] [PASSED] 15.5 GiB
[14:24:21] [PASSED] 31.5 GiB
[14:24:21] [PASSED] 63.5 GiB
[14:24:21] [PASSED] 1.91 GiB
[14:24:21] ============ [PASSED] fair_vram_1vf_admin_only =============
[14:24:21] ====================== fair_contexts  ======================
[14:24:21] [PASSED] 1 VF
[14:24:21] [PASSED] 2 VFs
[14:24:21] [PASSED] 3 VFs
[14:24:21] [PASSED] 4 VFs
[14:24:21] [PASSED] 5 VFs
[14:24:21] [PASSED] 6 VFs
[14:24:21] [PASSED] 7 VFs
[14:24:21] [PASSED] 8 VFs
[14:24:21] [PASSED] 9 VFs
[14:24:21] [PASSED] 10 VFs
[14:24:21] [PASSED] 11 VFs
[14:24:21] [PASSED] 12 VFs
[14:24:21] [PASSED] 13 VFs
[14:24:21] [PASSED] 14 VFs
[14:24:21] [PASSED] 15 VFs
[14:24:21] [PASSED] 16 VFs
[14:24:21] [PASSED] 17 VFs
[14:24:21] [PASSED] 18 VFs
[14:24:21] [PASSED] 19 VFs
[14:24:21] [PASSED] 20 VFs
[14:24:21] [PASSED] 21 VFs
[14:24:21] [PASSED] 22 VFs
[14:24:21] [PASSED] 23 VFs
[14:24:21] [PASSED] 24 VFs
[14:24:21] [PASSED] 25 VFs
[14:24:21] [PASSED] 26 VFs
[14:24:21] [PASSED] 27 VFs
[14:24:21] [PASSED] 28 VFs
[14:24:21] [PASSED] 29 VFs
[14:24:21] [PASSED] 30 VFs
[14:24:21] [PASSED] 31 VFs
[14:24:21] [PASSED] 32 VFs
[14:24:21] [PASSED] 33 VFs
[14:24:21] [PASSED] 34 VFs
[14:24:21] [PASSED] 35 VFs
[14:24:21] [PASSED] 36 VFs
[14:24:21] [PASSED] 37 VFs
[14:24:21] [PASSED] 38 VFs
[14:24:21] [PASSED] 39 VFs
[14:24:21] [PASSED] 40 VFs
[14:24:21] [PASSED] 41 VFs
[14:24:21] [PASSED] 42 VFs
[14:24:21] [PASSED] 43 VFs
[14:24:21] [PASSED] 44 VFs
[14:24:21] [PASSED] 45 VFs
[14:24:21] [PASSED] 46 VFs
[14:24:21] [PASSED] 47 VFs
[14:24:21] [PASSED] 48 VFs
[14:24:21] [PASSED] 49 VFs
[14:24:21] [PASSED] 50 VFs
[14:24:21] [PASSED] 51 VFs
[14:24:21] [PASSED] 52 VFs
[14:24:21] [PASSED] 53 VFs
[14:24:21] [PASSED] 54 VFs
[14:24:21] [PASSED] 55 VFs
[14:24:21] [PASSED] 56 VFs
[14:24:21] [PASSED] 57 VFs
[14:24:21] [PASSED] 58 VFs
[14:24:21] [PASSED] 59 VFs
[14:24:21] [PASSED] 60 VFs
[14:24:21] [PASSED] 61 VFs
[14:24:21] [PASSED] 62 VFs
[14:24:21] [PASSED] 63 VFs
[14:24:21] ================== [PASSED] fair_contexts ==================
[14:24:21] ===================== fair_doorbells  ======================
[14:24:21] [PASSED] 1 VF
[14:24:21] [PASSED] 2 VFs
[14:24:21] [PASSED] 3 VFs
[14:24:21] [PASSED] 4 VFs
[14:24:21] [PASSED] 5 VFs
[14:24:21] [PASSED] 6 VFs
[14:24:21] [PASSED] 7 VFs
[14:24:21] [PASSED] 8 VFs
[14:24:21] [PASSED] 9 VFs
[14:24:21] [PASSED] 10 VFs
[14:24:21] [PASSED] 11 VFs
[14:24:21] [PASSED] 12 VFs
[14:24:21] [PASSED] 13 VFs
[14:24:21] [PASSED] 14 VFs
[14:24:21] [PASSED] 15 VFs
[14:24:21] [PASSED] 16 VFs
[14:24:21] [PASSED] 17 VFs
[14:24:21] [PASSED] 18 VFs
[14:24:21] [PASSED] 19 VFs
[14:24:21] [PASSED] 20 VFs
[14:24:21] [PASSED] 21 VFs
[14:24:21] [PASSED] 22 VFs
[14:24:21] [PASSED] 23 VFs
[14:24:21] [PASSED] 24 VFs
[14:24:21] [PASSED] 25 VFs
[14:24:21] [PASSED] 26 VFs
[14:24:21] [PASSED] 27 VFs
[14:24:21] [PASSED] 28 VFs
[14:24:21] [PASSED] 29 VFs
[14:24:21] [PASSED] 30 VFs
[14:24:21] [PASSED] 31 VFs
[14:24:21] [PASSED] 32 VFs
[14:24:21] [PASSED] 33 VFs
[14:24:21] [PASSED] 34 VFs
[14:24:21] [PASSED] 35 VFs
[14:24:21] [PASSED] 36 VFs
[14:24:21] [PASSED] 37 VFs
[14:24:21] [PASSED] 38 VFs
[14:24:21] [PASSED] 39 VFs
[14:24:21] [PASSED] 40 VFs
[14:24:21] [PASSED] 41 VFs
[14:24:21] [PASSED] 42 VFs
[14:24:21] [PASSED] 43 VFs
[14:24:21] [PASSED] 44 VFs
[14:24:21] [PASSED] 45 VFs
[14:24:21] [PASSED] 46 VFs
[14:24:21] [PASSED] 47 VFs
[14:24:21] [PASSED] 48 VFs
[14:24:21] [PASSED] 49 VFs
[14:24:21] [PASSED] 50 VFs
[14:24:21] [PASSED] 51 VFs
[14:24:21] [PASSED] 52 VFs
[14:24:21] [PASSED] 53 VFs
[14:24:21] [PASSED] 54 VFs
[14:24:21] [PASSED] 55 VFs
[14:24:21] [PASSED] 56 VFs
[14:24:21] [PASSED] 57 VFs
[14:24:21] [PASSED] 58 VFs
[14:24:21] [PASSED] 59 VFs
[14:24:21] [PASSED] 60 VFs
[14:24:21] [PASSED] 61 VFs
[14:24:21] [PASSED] 62 VFs
[14:24:21] [PASSED] 63 VFs
[14:24:21] ================= [PASSED] fair_doorbells ==================
[14:24:21] ======================== fair_ggtt  ========================
[14:24:21] [PASSED] 1 VF
[14:24:21] [PASSED] 2 VFs
[14:24:21] [PASSED] 3 VFs
[14:24:21] [PASSED] 4 VFs
[14:24:21] [PASSED] 5 VFs
[14:24:21] [PASSED] 6 VFs
[14:24:21] [PASSED] 7 VFs
[14:24:21] [PASSED] 8 VFs
[14:24:21] [PASSED] 9 VFs
[14:24:21] [PASSED] 10 VFs
[14:24:21] [PASSED] 11 VFs
[14:24:21] [PASSED] 12 VFs
[14:24:21] [PASSED] 13 VFs
[14:24:21] [PASSED] 14 VFs
[14:24:21] [PASSED] 15 VFs
[14:24:21] [PASSED] 16 VFs
[14:24:21] [PASSED] 17 VFs
[14:24:21] [PASSED] 18 VFs
[14:24:21] [PASSED] 19 VFs
[14:24:21] [PASSED] 20 VFs
[14:24:21] [PASSED] 21 VFs
[14:24:21] [PASSED] 22 VFs
[14:24:21] [PASSED] 23 VFs
[14:24:21] [PASSED] 24 VFs
[14:24:21] [PASSED] 25 VFs
[14:24:21] [PASSED] 26 VFs
[14:24:21] [PASSED] 27 VFs
[14:24:21] [PASSED] 28 VFs
[14:24:21] [PASSED] 29 VFs
[14:24:21] [PASSED] 30 VFs
[14:24:21] [PASSED] 31 VFs
[14:24:21] [PASSED] 32 VFs
[14:24:21] [PASSED] 33 VFs
[14:24:21] [PASSED] 34 VFs
[14:24:21] [PASSED] 35 VFs
[14:24:21] [PASSED] 36 VFs
[14:24:21] [PASSED] 37 VFs
[14:24:21] [PASSED] 38 VFs
[14:24:21] [PASSED] 39 VFs
[14:24:21] [PASSED] 40 VFs
[14:24:21] [PASSED] 41 VFs
[14:24:21] [PASSED] 42 VFs
[14:24:21] [PASSED] 43 VFs
[14:24:21] [PASSED] 44 VFs
[14:24:21] [PASSED] 45 VFs
[14:24:21] [PASSED] 46 VFs
[14:24:21] [PASSED] 47 VFs
[14:24:21] [PASSED] 48 VFs
[14:24:21] [PASSED] 49 VFs
[14:24:21] [PASSED] 50 VFs
[14:24:21] [PASSED] 51 VFs
[14:24:21] [PASSED] 52 VFs
[14:24:21] [PASSED] 53 VFs
[14:24:21] [PASSED] 54 VFs
[14:24:21] [PASSED] 55 VFs
[14:24:21] [PASSED] 56 VFs
[14:24:21] [PASSED] 57 VFs
[14:24:21] [PASSED] 58 VFs
[14:24:21] [PASSED] 59 VFs
[14:24:21] [PASSED] 60 VFs
[14:24:21] [PASSED] 61 VFs
[14:24:21] [PASSED] 62 VFs
[14:24:21] [PASSED] 63 VFs
[14:24:21] ==================== [PASSED] fair_ggtt ====================
[14:24:21] ======================== fair_vram  ========================
[14:24:21] [PASSED] 1 VF
[14:24:21] [PASSED] 2 VFs
[14:24:21] [PASSED] 3 VFs
[14:24:21] [PASSED] 4 VFs
[14:24:21] [PASSED] 5 VFs
[14:24:21] [PASSED] 6 VFs
[14:24:21] [PASSED] 7 VFs
[14:24:21] [PASSED] 8 VFs
[14:24:21] [PASSED] 9 VFs
[14:24:21] [PASSED] 10 VFs
[14:24:21] [PASSED] 11 VFs
[14:24:21] [PASSED] 12 VFs
[14:24:21] [PASSED] 13 VFs
[14:24:21] [PASSED] 14 VFs
[14:24:21] [PASSED] 15 VFs
[14:24:21] [PASSED] 16 VFs
[14:24:21] [PASSED] 17 VFs
[14:24:21] [PASSED] 18 VFs
[14:24:21] [PASSED] 19 VFs
[14:24:21] [PASSED] 20 VFs
[14:24:21] [PASSED] 21 VFs
[14:24:21] [PASSED] 22 VFs
[14:24:21] [PASSED] 23 VFs
[14:24:21] [PASSED] 24 VFs
[14:24:21] [PASSED] 25 VFs
[14:24:21] [PASSED] 26 VFs
[14:24:21] [PASSED] 27 VFs
[14:24:21] [PASSED] 28 VFs
[14:24:21] [PASSED] 29 VFs
[14:24:21] [PASSED] 30 VFs
[14:24:21] [PASSED] 31 VFs
[14:24:21] [PASSED] 32 VFs
[14:24:21] [PASSED] 33 VFs
[14:24:21] [PASSED] 34 VFs
[14:24:21] [PASSED] 35 VFs
[14:24:21] [PASSED] 36 VFs
[14:24:21] [PASSED] 37 VFs
[14:24:21] [PASSED] 38 VFs
[14:24:21] [PASSED] 39 VFs
[14:24:21] [PASSED] 40 VFs
[14:24:21] [PASSED] 41 VFs
[14:24:21] [PASSED] 42 VFs
[14:24:21] [PASSED] 43 VFs
[14:24:21] [PASSED] 44 VFs
[14:24:21] [PASSED] 45 VFs
[14:24:21] [PASSED] 46 VFs
[14:24:21] [PASSED] 47 VFs
[14:24:21] [PASSED] 48 VFs
[14:24:21] [PASSED] 49 VFs
[14:24:21] [PASSED] 50 VFs
[14:24:21] [PASSED] 51 VFs
[14:24:21] [PASSED] 52 VFs
[14:24:21] [PASSED] 53 VFs
[14:24:21] [PASSED] 54 VFs
[14:24:21] [PASSED] 55 VFs
[14:24:21] [PASSED] 56 VFs
[14:24:21] [PASSED] 57 VFs
[14:24:21] [PASSED] 58 VFs
[14:24:21] [PASSED] 59 VFs
[14:24:21] [PASSED] 60 VFs
[14:24:21] [PASSED] 61 VFs
[14:24:21] [PASSED] 62 VFs
[14:24:21] [PASSED] 63 VFs
[14:24:21] ==================== [PASSED] fair_vram ====================
[14:24:21] ================== [PASSED] pf_gt_config ===================
[14:24:21] ===================== lmtt (1 subtest) =====================
[14:24:21] ======================== test_ops  =========================
[14:24:21] [PASSED] 2-level
[14:24:21] [PASSED] multi-level
[14:24:21] ==================== [PASSED] test_ops =====================
[14:24:21] ====================== [PASSED] lmtt =======================
[14:24:21] ================= pf_service (11 subtests) =================
[14:24:21] [PASSED] pf_negotiate_any
[14:24:21] [PASSED] pf_negotiate_base_match
[14:24:21] [PASSED] pf_negotiate_base_newer
[14:24:21] [PASSED] pf_negotiate_base_next
[14:24:21] [SKIPPED] pf_negotiate_base_older (no older minor)
[14:24:21] [PASSED] pf_negotiate_base_prev
[14:24:21] [PASSED] pf_negotiate_latest_match
[14:24:21] [PASSED] pf_negotiate_latest_newer
[14:24:21] [PASSED] pf_negotiate_latest_next
[14:24:21] [SKIPPED] pf_negotiate_latest_older (no older minor)
[14:24:21] [SKIPPED] pf_negotiate_latest_prev (no prev major)
[14:24:21] =================== [PASSED] pf_service ====================
[14:24:21] ================= xe_guc_g2g (2 subtests) ==================
[14:24:21] ============== xe_live_guc_g2g_kunit_default  ==============
[14:24:21] ========= [SKIPPED] xe_live_guc_g2g_kunit_default ==========
[14:24:21] ============== xe_live_guc_g2g_kunit_allmem  ===============
[14:24:21] ========== [SKIPPED] xe_live_guc_g2g_kunit_allmem ==========
[14:24:21] =================== [SKIPPED] xe_guc_g2g ===================
[14:24:21] =================== xe_mocs (2 subtests) ===================
[14:24:21] ================ xe_live_mocs_kernel_kunit  ================
[14:24:21] =========== [SKIPPED] xe_live_mocs_kernel_kunit ============
[14:24:21] ================ xe_live_mocs_reset_kunit  =================
[14:24:21] ============ [SKIPPED] xe_live_mocs_reset_kunit ============
[14:24:21] ==================== [SKIPPED] xe_mocs =====================
[14:24:21] ================= xe_migrate (2 subtests) ==================
[14:24:21] ================= xe_migrate_sanity_kunit  =================
[14:24:21] ============ [SKIPPED] xe_migrate_sanity_kunit =============
[14:24:21] ================== xe_validate_ccs_kunit  ==================
[14:24:21] ============= [SKIPPED] xe_validate_ccs_kunit ==============
[14:24:21] =================== [SKIPPED] xe_migrate ===================
[14:24:21] ================== xe_dma_buf (1 subtest) ==================
[14:24:21] ==================== xe_dma_buf_kunit  =====================
[14:24:21] ================ [SKIPPED] xe_dma_buf_kunit ================
[14:24:21] =================== [SKIPPED] xe_dma_buf ===================
[14:24:21] ================= xe_bo_shrink (1 subtest) =================
[14:24:21] =================== xe_bo_shrink_kunit  ====================
[14:24:21] =============== [SKIPPED] xe_bo_shrink_kunit ===============
[14:24:21] ================== [SKIPPED] xe_bo_shrink ==================
[14:24:21] ==================== xe_bo (2 subtests) ====================
[14:24:21] ================== xe_ccs_migrate_kunit  ===================
[14:24:21] ============== [SKIPPED] xe_ccs_migrate_kunit ==============
[14:24:21] ==================== xe_bo_evict_kunit  ====================
[14:24:21] =============== [SKIPPED] xe_bo_evict_kunit ================
[14:24:21] ===================== [SKIPPED] xe_bo ======================
[14:24:21] ==================== args (13 subtests) ====================
[14:24:21] [PASSED] count_args_test
[14:24:21] [PASSED] call_args_example
[14:24:21] [PASSED] call_args_test
[14:24:21] [PASSED] drop_first_arg_example
[14:24:21] [PASSED] drop_first_arg_test
[14:24:21] [PASSED] first_arg_example
[14:24:21] [PASSED] first_arg_test
[14:24:21] [PASSED] last_arg_example
[14:24:21] [PASSED] last_arg_test
[14:24:21] [PASSED] pick_arg_example
[14:24:21] [PASSED] if_args_example
[14:24:21] [PASSED] if_args_test
[14:24:21] [PASSED] sep_comma_example
[14:24:21] ====================== [PASSED] args =======================
[14:24:21] =================== xe_pci (3 subtests) ====================
[14:24:21] ==================== check_graphics_ip  ====================
[14:24:21] [PASSED] 12.00 Xe_LP
[14:24:21] [PASSED] 12.10 Xe_LP+
[14:24:21] [PASSED] 12.55 Xe_HPG
[14:24:21] [PASSED] 12.60 Xe_HPC
[14:24:21] [PASSED] 12.70 Xe_LPG
[14:24:21] [PASSED] 12.71 Xe_LPG
[14:24:21] [PASSED] 12.74 Xe_LPG+
[14:24:21] [PASSED] 20.01 Xe2_HPG
[14:24:21] [PASSED] 20.02 Xe2_HPG
[14:24:21] [PASSED] 20.04 Xe2_LPG
[14:24:21] [PASSED] 30.00 Xe3_LPG
[14:24:21] [PASSED] 30.01 Xe3_LPG
[14:24:21] [PASSED] 30.03 Xe3_LPG
[14:24:21] [PASSED] 30.04 Xe3_LPG
[14:24:21] [PASSED] 30.05 Xe3_LPG
[14:24:21] [PASSED] 35.10 Xe3p_LPG
[14:24:21] [PASSED] 35.11 Xe3p_XPC
[14:24:21] ================ [PASSED] check_graphics_ip ================
[14:24:21] ===================== check_media_ip  ======================
[14:24:21] [PASSED] 12.00 Xe_M
[14:24:21] [PASSED] 12.55 Xe_HPM
[14:24:21] [PASSED] 13.00 Xe_LPM+
[14:24:21] [PASSED] 13.01 Xe2_HPM
[14:24:21] [PASSED] 20.00 Xe2_LPM
[14:24:21] [PASSED] 30.00 Xe3_LPM
[14:24:21] [PASSED] 30.02 Xe3_LPM
[14:24:21] [PASSED] 35.00 Xe3p_LPM
[14:24:21] [PASSED] 35.03 Xe3p_HPM
[14:24:21] ================= [PASSED] check_media_ip ==================
[14:24:21] =================== check_platform_desc  ===================
[14:24:21] [PASSED] 0x9A60 (TIGERLAKE)
[14:24:21] [PASSED] 0x9A68 (TIGERLAKE)
[14:24:21] [PASSED] 0x9A70 (TIGERLAKE)
[14:24:21] [PASSED] 0x9A40 (TIGERLAKE)
[14:24:21] [PASSED] 0x9A49 (TIGERLAKE)
[14:24:21] [PASSED] 0x9A59 (TIGERLAKE)
[14:24:21] [PASSED] 0x9A78 (TIGERLAKE)
[14:24:21] [PASSED] 0x9AC0 (TIGERLAKE)
[14:24:21] [PASSED] 0x9AC9 (TIGERLAKE)
[14:24:21] [PASSED] 0x9AD9 (TIGERLAKE)
[14:24:21] [PASSED] 0x9AF8 (TIGERLAKE)
[14:24:21] [PASSED] 0x4C80 (ROCKETLAKE)
[14:24:21] [PASSED] 0x4C8A (ROCKETLAKE)
[14:24:21] [PASSED] 0x4C8B (ROCKETLAKE)
[14:24:21] [PASSED] 0x4C8C (ROCKETLAKE)
[14:24:21] [PASSED] 0x4C90 (ROCKETLAKE)
[14:24:21] [PASSED] 0x4C9A (ROCKETLAKE)
[14:24:21] [PASSED] 0x4680 (ALDERLAKE_S)
[14:24:21] [PASSED] 0x4682 (ALDERLAKE_S)
[14:24:21] [PASSED] 0x4688 (ALDERLAKE_S)
[14:24:21] [PASSED] 0x468A (ALDERLAKE_S)
[14:24:21] [PASSED] 0x468B (ALDERLAKE_S)
[14:24:21] [PASSED] 0x4690 (ALDERLAKE_S)
[14:24:21] [PASSED] 0x4692 (ALDERLAKE_S)
[14:24:21] [PASSED] 0x4693 (ALDERLAKE_S)
[14:24:21] [PASSED] 0x46A0 (ALDERLAKE_P)
[14:24:21] [PASSED] 0x46A1 (ALDERLAKE_P)
[14:24:21] [PASSED] 0x46A2 (ALDERLAKE_P)
[14:24:21] [PASSED] 0x46A3 (ALDERLAKE_P)
[14:24:21] [PASSED] 0x46A6 (ALDERLAKE_P)
[14:24:21] [PASSED] 0x46A8 (ALDERLAKE_P)
[14:24:21] [PASSED] 0x46AA (ALDERLAKE_P)
[14:24:21] [PASSED] 0x462A (ALDERLAKE_P)
[14:24:21] [PASSED] 0x4626 (ALDERLAKE_P)
[14:24:21] [PASSED] 0x4628 (ALDERLAKE_P)
[14:24:21] [PASSED] 0x46B0 (ALDERLAKE_P)
[14:24:21] [PASSED] 0x46B1 (ALDERLAKE_P)
[14:24:21] [PASSED] 0x46B2 (ALDERLAKE_P)
[14:24:21] [PASSED] 0x46B3 (ALDERLAKE_P)
[14:24:21] [PASSED] 0x46C0 (ALDERLAKE_P)
[14:24:21] [PASSED] 0x46C1 (ALDERLAKE_P)
[14:24:21] [PASSED] 0x46C2 (ALDERLAKE_P)
[14:24:21] [PASSED] 0x46C3 (ALDERLAKE_P)
[14:24:21] [PASSED] 0x46D0 (ALDERLAKE_N)
[14:24:21] [PASSED] 0x46D1 (ALDERLAKE_N)
[14:24:21] [PASSED] 0x46D2 (ALDERLAKE_N)
[14:24:21] [PASSED] 0x46D3 (ALDERLAKE_N)
[14:24:21] [PASSED] 0x46D4 (ALDERLAKE_N)
[14:24:21] [PASSED] 0xA721 (ALDERLAKE_P)
[14:24:21] [PASSED] 0xA7A1 (ALDERLAKE_P)
[14:24:21] [PASSED] 0xA7A9 (ALDERLAKE_P)
[14:24:21] [PASSED] 0xA7AC (ALDERLAKE_P)
[14:24:21] [PASSED] 0xA7AD (ALDERLAKE_P)
[14:24:21] [PASSED] 0xA720 (ALDERLAKE_P)
[14:24:21] [PASSED] 0xA7A0 (ALDERLAKE_P)
[14:24:21] [PASSED] 0xA7A8 (ALDERLAKE_P)
[14:24:21] [PASSED] 0xA7AA (ALDERLAKE_P)
[14:24:21] [PASSED] 0xA7AB (ALDERLAKE_P)
[14:24:21] [PASSED] 0xA780 (ALDERLAKE_S)
[14:24:21] [PASSED] 0xA781 (ALDERLAKE_S)
[14:24:21] [PASSED] 0xA782 (ALDERLAKE_S)
[14:24:21] [PASSED] 0xA783 (ALDERLAKE_S)
[14:24:21] [PASSED] 0xA788 (ALDERLAKE_S)
[14:24:21] [PASSED] 0xA789 (ALDERLAKE_S)
[14:24:21] [PASSED] 0xA78A (ALDERLAKE_S)
[14:24:21] [PASSED] 0xA78B (ALDERLAKE_S)
[14:24:21] [PASSED] 0x4905 (DG1)
[14:24:21] [PASSED] 0x4906 (DG1)
[14:24:21] [PASSED] 0x4907 (DG1)
[14:24:21] [PASSED] 0x4908 (DG1)
[14:24:21] [PASSED] 0x4909 (DG1)
[14:24:21] [PASSED] 0x56C0 (DG2)
[14:24:21] [PASSED] 0x56C2 (DG2)
[14:24:21] [PASSED] 0x56C1 (DG2)
[14:24:21] [PASSED] 0x7D51 (METEORLAKE)
[14:24:21] [PASSED] 0x7DD1 (METEORLAKE)
[14:24:21] [PASSED] 0x7D41 (METEORLAKE)
[14:24:21] [PASSED] 0x7D67 (METEORLAKE)
[14:24:21] [PASSED] 0xB640 (METEORLAKE)
[14:24:21] [PASSED] 0x56A0 (DG2)
[14:24:21] [PASSED] 0x56A1 (DG2)
[14:24:21] [PASSED] 0x56A2 (DG2)
[14:24:21] [PASSED] 0x56BE (DG2)
[14:24:21] [PASSED] 0x56BF (DG2)
[14:24:21] [PASSED] 0x5690 (DG2)
[14:24:21] [PASSED] 0x5691 (DG2)
[14:24:21] [PASSED] 0x5692 (DG2)
[14:24:21] [PASSED] 0x56A5 (DG2)
[14:24:21] [PASSED] 0x56A6 (DG2)
[14:24:21] [PASSED] 0x56B0 (DG2)
[14:24:21] [PASSED] 0x56B1 (DG2)
[14:24:21] [PASSED] 0x56BA (DG2)
[14:24:21] [PASSED] 0x56BB (DG2)
[14:24:21] [PASSED] 0x56BC (DG2)
[14:24:21] [PASSED] 0x56BD (DG2)
[14:24:21] [PASSED] 0x5693 (DG2)
[14:24:21] [PASSED] 0x5694 (DG2)
[14:24:21] [PASSED] 0x5695 (DG2)
[14:24:21] [PASSED] 0x56A3 (DG2)
[14:24:21] [PASSED] 0x56A4 (DG2)
[14:24:21] [PASSED] 0x56B2 (DG2)
[14:24:21] [PASSED] 0x56B3 (DG2)
[14:24:21] [PASSED] 0x5696 (DG2)
[14:24:21] [PASSED] 0x5697 (DG2)
[14:24:21] [PASSED] 0xB69 (PVC)
[14:24:21] [PASSED] 0xB6E (PVC)
[14:24:21] [PASSED] 0xBD4 (PVC)
[14:24:21] [PASSED] 0xBD5 (PVC)
[14:24:21] [PASSED] 0xBD6 (PVC)
[14:24:21] [PASSED] 0xBD7 (PVC)
[14:24:21] [PASSED] 0xBD8 (PVC)
[14:24:21] [PASSED] 0xBD9 (PVC)
[14:24:21] [PASSED] 0xBDA (PVC)
[14:24:21] [PASSED] 0xBDB (PVC)
[14:24:21] [PASSED] 0xBE0 (PVC)
[14:24:21] [PASSED] 0xBE1 (PVC)
[14:24:21] [PASSED] 0xBE5 (PVC)
[14:24:21] [PASSED] 0x7D40 (METEORLAKE)
[14:24:21] [PASSED] 0x7D45 (METEORLAKE)
[14:24:21] [PASSED] 0x7D55 (METEORLAKE)
[14:24:21] [PASSED] 0x7D60 (METEORLAKE)
[14:24:21] [PASSED] 0x7DD5 (METEORLAKE)
[14:24:21] [PASSED] 0x6420 (LUNARLAKE)
[14:24:21] [PASSED] 0x64A0 (LUNARLAKE)
[14:24:21] [PASSED] 0x64B0 (LUNARLAKE)
[14:24:21] [PASSED] 0xE202 (BATTLEMAGE)
[14:24:21] [PASSED] 0xE209 (BATTLEMAGE)
[14:24:21] [PASSED] 0xE20B (BATTLEMAGE)
[14:24:21] [PASSED] 0xE20C (BATTLEMAGE)
[14:24:21] [PASSED] 0xE20D (BATTLEMAGE)
[14:24:21] [PASSED] 0xE210 (BATTLEMAGE)
[14:24:21] [PASSED] 0xE211 (BATTLEMAGE)
[14:24:21] [PASSED] 0xE212 (BATTLEMAGE)
[14:24:21] [PASSED] 0xE216 (BATTLEMAGE)
[14:24:21] [PASSED] 0xE220 (BATTLEMAGE)
[14:24:21] [PASSED] 0xE221 (BATTLEMAGE)
[14:24:21] [PASSED] 0xE222 (BATTLEMAGE)
[14:24:21] [PASSED] 0xE223 (BATTLEMAGE)
[14:24:21] [PASSED] 0xB080 (PANTHERLAKE)
[14:24:21] [PASSED] 0xB081 (PANTHERLAKE)
[14:24:21] [PASSED] 0xB082 (PANTHERLAKE)
[14:24:21] [PASSED] 0xB083 (PANTHERLAKE)
[14:24:21] [PASSED] 0xB084 (PANTHERLAKE)
[14:24:21] [PASSED] 0xB085 (PANTHERLAKE)
[14:24:21] [PASSED] 0xB086 (PANTHERLAKE)
[14:24:21] [PASSED] 0xB087 (PANTHERLAKE)
[14:24:21] [PASSED] 0xB08F (PANTHERLAKE)
[14:24:21] [PASSED] 0xB090 (PANTHERLAKE)
[14:24:21] [PASSED] 0xB0A0 (PANTHERLAKE)
[14:24:21] [PASSED] 0xB0B0 (PANTHERLAKE)
[14:24:21] [PASSED] 0xFD80 (PANTHERLAKE)
[14:24:21] [PASSED] 0xFD81 (PANTHERLAKE)
[14:24:21] [PASSED] 0xD740 (NOVALAKE_S)
[14:24:21] [PASSED] 0xD741 (NOVALAKE_S)
[14:24:21] [PASSED] 0xD742 (NOVALAKE_S)
[14:24:21] [PASSED] 0xD743 (NOVALAKE_S)
[14:24:21] [PASSED] 0xD745 (NOVALAKE_S)
[14:24:21] [PASSED] 0xD74A (NOVALAKE_S)
[14:24:21] [PASSED] 0xD74B (NOVALAKE_S)
[14:24:21] [PASSED] 0x674C (CRESCENTISLAND)
[14:24:21] [PASSED] 0x674D (CRESCENTISLAND)
[14:24:21] [PASSED] 0x674E (CRESCENTISLAND)
[14:24:21] [PASSED] 0x674F (CRESCENTISLAND)
[14:24:21] [PASSED] 0x6750 (CRESCENTISLAND)
[14:24:21] [PASSED] 0xD750 (NOVALAKE_P)
[14:24:21] [PASSED] 0xD751 (NOVALAKE_P)
[14:24:21] [PASSED] 0xD752 (NOVALAKE_P)
[14:24:21] [PASSED] 0xD753 (NOVALAKE_P)
[14:24:21] [PASSED] 0xD754 (NOVALAKE_P)
[14:24:21] [PASSED] 0xD755 (NOVALAKE_P)
[14:24:21] [PASSED] 0xD756 (NOVALAKE_P)
[14:24:21] [PASSED] 0xD757 (NOVALAKE_P)
[14:24:21] [PASSED] 0xD75F (NOVALAKE_P)
[14:24:21] =============== [PASSED] check_platform_desc ===============
[14:24:21] ===================== [PASSED] xe_pci ======================
[14:24:21] ============= xe_rtp_tables_test (4 subtests) ==============
[14:24:21] ================== xe_rtp_table_gt_test  ===================
[14:24:21] [PASSED] gt_was/14011060649
[14:24:21] [PASSED] gt_was/14011059788
[14:24:21] [PASSED] gt_was/14015795083
[14:24:21] [PASSED] gt_was/16021867713
[14:24:21] [PASSED] gt_was/14019449301
[14:24:21] [PASSED] gt_was/16028005424
[14:24:21] [PASSED] gt_was/14026578760
[14:24:21] [PASSED] gt_was/1409420604
[14:24:21] [PASSED] gt_was/1408615072
[14:24:21] [PASSED] gt_was/22010523718
[14:24:21] [PASSED] gt_was/14011006942
[14:24:21] [PASSED] gt_was/14014830051
[14:24:21] [PASSED] gt_was/18018781329
[14:24:21] [PASSED] gt_was/1509235366
[14:24:21] [PASSED] gt_was/18018781329
[14:24:21] [PASSED] gt_was/16016694945
[14:24:21] [PASSED] gt_was/14018575942
[14:24:21] [PASSED] gt_was/22016670082
[14:24:21] [PASSED] gt_was/22016670082
[14:24:21] [PASSED] gt_was/14017421178
[14:24:21] [PASSED] gt_was/16025250150
[14:24:21] [PASSED] gt_was/14021871409
[14:24:21] [PASSED] gt_was/16021865536
[14:24:21] [PASSED] gt_was/14021486841
[14:24:21] [PASSED] gt_was/14025160223
[14:24:21] [PASSED] gt_was/14026144927, 16029437861, 14026127056
[14:24:21] [PASSED] gt_was/14025635424
[14:24:21] [PASSED] gt_was/16028005424
[14:24:21] ============== [PASSED] xe_rtp_table_gt_test ===============
[14:24:21] ================== xe_rtp_table_gt_test  ===================
[14:24:21] [PASSED] gt_tunings/Tuning: Blend Fill Caching Optimization Disable
[14:24:21] [PASSED] gt_tunings/Tuning: 32B Access Enable
[14:24:21] [PASSED] gt_tunings/Tuning: L3 cache
[14:24:21] [PASSED] gt_tunings/Tuning: L3 cache - media
[14:24:21] [PASSED] gt_tunings/Tuning: Compression Overfetch
[14:24:21] [PASSED] gt_tunings/Tuning: Compression Overfetch - media
[14:24:21] [PASSED] gt_tunings/Tuning: Enable compressible partial write overfetch in L3
[14:24:21] [PASSED] gt_tunings/Tuning: Enable compressible partial write overfetch in L3 - media
[14:24:21] [PASSED] gt_tunings/Tuning: L2 Overfetch Compressible Only
[14:24:21] [PASSED] gt_tunings/Tuning: L2 Overfetch Compressible Only - media
[14:24:21] [PASSED] gt_tunings/Tuning: Stateless compression control
[14:24:21] [PASSED] gt_tunings/Tuning: Stateless compression control - media
[14:24:21] [PASSED] gt_tunings/Tuning: L3 RW flush all Cache
[14:24:21] [PASSED] gt_tunings/Tuning: L3 RW flush all cache - media
[14:24:21] [PASSED] gt_tunings/Tuning: Set STLB Bank Hash Mode to 4KB
[14:24:21] ============== [PASSED] xe_rtp_table_gt_test ===============
[14:24:21] ================== xe_rtp_table_oob_test  ==================
[14:24:21] [PASSED] oob_was/1607983814
[14:24:21] [PASSED] oob_was/16010904313
[14:24:21] [PASSED] oob_was/18022495364
[14:24:21] [PASSED] oob_was/22012773006
[14:24:21] [PASSED] oob_was/14014475959
[14:24:21] [PASSED] oob_was/22011391025
[14:24:21] [PASSED] oob_was/22012727170
[14:24:21] [PASSED] oob_was/22012727685
[14:24:21] [PASSED] oob_was/22016596838
[14:24:21] [PASSED] oob_was/18020744125
[14:24:21] [PASSED] oob_was/1409600907
[14:24:21] [PASSED] oob_was/22014953428
[14:24:21] [PASSED] oob_was/16017236439
[14:24:21] [PASSED] oob_was/14019821291
[14:24:21] [PASSED] oob_was/14015076503
[14:24:21] [PASSED] oob_was/14018913170
[14:24:21] [PASSED] oob_was/14018094691
[14:24:21] [PASSED] oob_was/18024947630
[14:24:21] [PASSED] oob_was/16022287689
[14:24:21] [PASSED] oob_was/13011645652
[14:24:21] [PASSED] oob_was/14022293748
[14:24:21] [PASSED] oob_was/22019794406
[14:24:21] [PASSED] oob_was/22019338487
[14:24:21] [PASSED] oob_was/16023588340
[14:24:21] [PASSED] oob_was/14019789679
[14:24:21] [PASSED] oob_was/14022866841
[14:24:21] [PASSED] oob_was/16021333562
[14:24:21] [PASSED] oob_was/14016712196
[14:24:21] [PASSED] oob_was/14015568240
[14:24:21] [PASSED] oob_was/18013179988
[14:24:21] [PASSED] oob_was/1508761755
[14:24:21] [PASSED] oob_was/16023105232
[14:24:21] [PASSED] oob_was/16026508708
[14:24:21] [PASSED] oob_was/14020001231
[14:24:21] [PASSED] oob_was/16023683509
[14:24:21] [PASSED] oob_was/14025515070
[14:24:21] [PASSED] oob_was/15015404425_disable
[14:24:21] [PASSED] oob_was/16026007364
[14:24:21] [PASSED] oob_was/14020316580
[14:24:21] [PASSED] oob_was/14025883347
[14:24:21] [PASSED] oob_was/16029380221
[14:24:21] ============== [PASSED] xe_rtp_table_oob_test ==============
[14:24:21] ================ xe_rtp_table_dev_oob_test  ================
[14:24:21] [PASSED] device_oob_was/22010954014
[14:24:21] [PASSED] device_oob_was/15015404425
[14:24:21] [PASSED] device_oob_was/22019338487_display
[14:24:21] [PASSED] device_oob_was/14022085890
[14:24:21] [PASSED] device_oob_was/14026539277
[14:24:21] [PASSED] device_oob_was/14026633728
[14:24:21] [PASSED] device_oob_was/14026746987
[14:24:21] [PASSED] device_oob_was/14026779378
[14:24:21] ============ [PASSED] xe_rtp_table_dev_oob_test ============
[14:24:21] =============== [PASSED] xe_rtp_tables_test ================
[14:24:21] =================== xe_rtp (3 subtests) ====================
[14:24:21] =================== xe_rtp_rules_tests  ====================
[14:24:21] [PASSED] no
[14:24:21] [PASSED] yes
[14:24:21] [PASSED] no-and-no
[14:24:21] [PASSED] no-and-yes
[14:24:21] [PASSED] yes-and-no
[14:24:21] [PASSED] yes-and-yes
[14:24:21] [PASSED] no-or-no
[14:24:21] [PASSED] no-or-yes
[14:24:21] [PASSED] yes-or-no
[14:24:21] [PASSED] yes-or-yes
[14:24:21] [PASSED] no-yes-or-yes-no
[14:24:21] [PASSED] no-yes-or-yes-yes
[14:24:21] [PASSED] yes-yes-or-no-yes
[14:24:21] [PASSED] yes-yes-or-yes-yes
[14:24:21] [PASSED] no-no-or-yes-or-no
[14:24:21] [PASSED] or
[14:24:21] [PASSED] or-yes
[14:24:21] [PASSED] or-no
[14:24:21] [PASSED] yes-or
[14:24:21] [PASSED] no-or
[14:24:21] [PASSED] no-or-or-yes
[14:24:21] [PASSED] yes-or-or-no
[14:24:21] [PASSED] no-or-or-no
[14:24:21] [PASSED] missing-context-engine-class
[14:24:21] [PASSED] missing-context-engine-class-or-yes
[14:24:21] [PASSED] missing-context-engine-class-or-or-yes
[14:24:21] =============== [PASSED] xe_rtp_rules_tests ================
[14:24:21] =============== xe_rtp_process_to_sr_tests  ================
[14:24:21] [PASSED] coalesce-same-reg
[14:24:21] [PASSED] coalesce-same-reg-literal-and-func
[14:24:21] [PASSED] no-match-no-add
[14:24:21] [PASSED] two-regs-two-entries
[14:24:21] [PASSED] clr-one-set-other
[14:24:21] [PASSED] set-field
[14:24:21] [PASSED] conflict-duplicate
[14:24:21] [PASSED] conflict-not-disjoint
[14:24:21] [PASSED] conflict-not-disjoint-literal-and-func
[14:24:21] [PASSED] conflict-reg-type
[14:24:21] [PASSED] bad-mcr-reg-forced-to-regular
[14:24:21] [PASSED] bad-regular-reg-forced-to-mcr
[14:24:21] =========== [PASSED] xe_rtp_process_to_sr_tests ============
[14:24:21] ================== xe_rtp_process_tests  ===================
[14:24:21] [PASSED] active1
[14:24:21] [PASSED] active2
[14:24:21] [PASSED] active-inactive
[14:24:21] [PASSED] inactive-active
[14:24:21] [PASSED] inactive-active-inactive
[14:24:21] [PASSED] inactive-inactive-inactive
[14:24:21] ============== [PASSED] xe_rtp_process_tests ===============
[14:24:21] ===================== [PASSED] xe_rtp ======================
[14:24:21] ==================== xe_wa (1 subtest) =====================
[14:24:21] ======================== xe_wa_gt  =========================
[14:24:21] [PASSED] TIGERLAKE B0
[14:24:21] [PASSED] DG1 A0
[14:24:21] [PASSED] DG1 B0
[14:24:21] [PASSED] ALDERLAKE_S A0
[14:24:21] [PASSED] ALDERLAKE_S B0
[14:24:21] [PASSED] ALDERLAKE_S C0
[14:24:21] [PASSED] ALDERLAKE_S D0
[14:24:21] [PASSED] ALDERLAKE_P A0
[14:24:21] [PASSED] ALDERLAKE_P B0
[14:24:21] [PASSED] ALDERLAKE_P C0
[14:24:21] [PASSED] ALDERLAKE_S RPLS D0
[14:24:21] [PASSED] ALDERLAKE_P RPLU E0
[14:24:21] [PASSED] DG2 G10 C0
[14:24:21] [PASSED] DG2 G11 B1
[14:24:21] [PASSED] DG2 G12 A1
[14:24:21] [PASSED] METEORLAKE 12.70(Xe_LPG) A0 13.00(Xe_LPM+) A0
[14:24:21] [PASSED] METEORLAKE 12.71(Xe_LPG) A0 13.00(Xe_LPM+) A0
[14:24:21] [PASSED] METEORLAKE 12.74(Xe_LPG+) A0 13.00(Xe_LPM+) A0
[14:24:21] [PASSED] LUNARLAKE 20.04(Xe2_LPG) A0 20.00(Xe2_LPM) A0
[14:24:21] [PASSED] LUNARLAKE 20.04(Xe2_LPG) B0 20.00(Xe2_LPM) A0
[14:24:21] [PASSED] BATTLEMAGE 20.01(Xe2_HPG) A0 13.01(Xe2_HPM) A1
[14:24:21] [PASSED] PANTHERLAKE 30.00(Xe3_LPG) A0 30.00(Xe3_LPM) A0
[14:24:21] ==================== [PASSED] xe_wa_gt =====================
[14:24:21] ====================== [PASSED] xe_wa ======================
[14:24:21] ============================================================
[14:24:21] Testing complete. Ran 719 tests: passed: 701, skipped: 18
[14:24:21] Elapsed time: 37.674s total, 4.385s configuring, 32.623s building, 0.656s running

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

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

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



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

* ✓ Xe.CI.BAT: success for drm/xe: Disable stolen memory for driver allocations.
  2026-06-30 13:55 [PATCH 0/3] drm/xe: Disable stolen memory for driver allocations Maarten Lankhorst
                   ` (3 preceding siblings ...)
  2026-06-30 14:25 ` ✓ CI.KUnit: success for drm/xe: Disable stolen memory for driver allocations Patchwork
@ 2026-06-30 14:59 ` Patchwork
  2026-07-01  6:40 ` ✓ Xe.CI.FULL: " Patchwork
  5 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2026-06-30 14:59 UTC (permalink / raw)
  To: Maarten Lankhorst; +Cc: intel-xe

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

== Series Details ==

Series: drm/xe: Disable stolen memory for driver allocations.
URL   : https://patchwork.freedesktop.org/series/169514/
State : success

== Summary ==

CI Bug Log - changes from xe-5310-949035681a65bc5801212ee164d0ab5ed6ae0d9e_BAT -> xe-pw-169514v1_BAT
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  

Participating hosts (13 -> 13)
------------------------------

  No changes in participating hosts

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

  Here are the changes found in xe-pw-169514v1_BAT that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@xe_live_ktest@xe_dma_buf:
    - bat-bmg-vm:         [PASS][1] -> [ABORT][2] ([Intel XE#8007] / [Intel XE#8023]) +1 other test abort
   [1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5310-949035681a65bc5801212ee164d0ab5ed6ae0d9e/bat-bmg-vm/igt@xe_live_ktest@xe_dma_buf.html
   [2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-169514v1/bat-bmg-vm/igt@xe_live_ktest@xe_dma_buf.html

  
  [Intel XE#8007]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8007
  [Intel XE#8023]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8023


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

  * Linux: xe-5310-949035681a65bc5801212ee164d0ab5ed6ae0d9e -> xe-pw-169514v1

  IGT_8988: 8988
  xe-5310-949035681a65bc5801212ee164d0ab5ed6ae0d9e: 949035681a65bc5801212ee164d0ab5ed6ae0d9e
  xe-pw-169514v1: 169514v1

== Logs ==

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

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

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

* ✓ Xe.CI.FULL: success for drm/xe: Disable stolen memory for driver allocations.
  2026-06-30 13:55 [PATCH 0/3] drm/xe: Disable stolen memory for driver allocations Maarten Lankhorst
                   ` (4 preceding siblings ...)
  2026-06-30 14:59 ` ✓ Xe.CI.BAT: " Patchwork
@ 2026-07-01  6:40 ` Patchwork
  5 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2026-07-01  6:40 UTC (permalink / raw)
  To: Maarten Lankhorst; +Cc: intel-xe

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

== Series Details ==

Series: drm/xe: Disable stolen memory for driver allocations.
URL   : https://patchwork.freedesktop.org/series/169514/
State : success

== Summary ==

CI Bug Log - changes from xe-5310-949035681a65bc5801212ee164d0ab5ed6ae0d9e_FULL -> xe-pw-169514v1_FULL
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  

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

  No changes in participating hosts

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

  Here are the changes found in xe-pw-169514v1_FULL that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@core_hotunplug@hotunplug-rescan:
    - shard-bmg:          [PASS][1] -> [ABORT][2] ([Intel XE#8007]) +1 other test abort
   [1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5310-949035681a65bc5801212ee164d0ab5ed6ae0d9e/shard-bmg-1/igt@core_hotunplug@hotunplug-rescan.html
   [2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-169514v1/shard-bmg-9/igt@core_hotunplug@hotunplug-rescan.html

  * igt@kms_async_flips@alternate-sync-async-flip-atomic@pipe-a-dp-2:
    - shard-bmg:          [PASS][3] -> [FAIL][4] ([Intel XE#3718] / [Intel XE#6078]) +1 other test fail
   [3]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5310-949035681a65bc5801212ee164d0ab5ed6ae0d9e/shard-bmg-3/igt@kms_async_flips@alternate-sync-async-flip-atomic@pipe-a-dp-2.html
   [4]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-169514v1/shard-bmg-7/igt@kms_async_flips@alternate-sync-async-flip-atomic@pipe-a-dp-2.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs:
    - shard-bmg:          [PASS][5] -> [INCOMPLETE][6] ([Intel XE#7084] / [Intel XE#8150]) +1 other test incomplete
   [5]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5310-949035681a65bc5801212ee164d0ab5ed6ae0d9e/shard-bmg-7/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html
   [6]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-169514v1/shard-bmg-7/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html

  * igt@kms_flip@flip-vs-expired-vblank@b-edp1:
    - shard-lnl:          [PASS][7] -> [FAIL][8] ([Intel XE#301])
   [7]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5310-949035681a65bc5801212ee164d0ab5ed6ae0d9e/shard-lnl-3/igt@kms_flip@flip-vs-expired-vblank@b-edp1.html
   [8]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-169514v1/shard-lnl-2/igt@kms_flip@flip-vs-expired-vblank@b-edp1.html

  * igt@xe_intel_bb@blit-reloc:
    - shard-lnl:          [PASS][9] -> [ABORT][10] ([Intel XE#8007])
   [9]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5310-949035681a65bc5801212ee164d0ab5ed6ae0d9e/shard-lnl-6/igt@xe_intel_bb@blit-reloc.html
   [10]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-169514v1/shard-lnl-1/igt@xe_intel_bb@blit-reloc.html

  
#### Possible fixes ####

  * igt@kms_cursor_crc@cursor-sliding-256x256:
    - shard-bmg:          [FAIL][11] ([Intel XE#8117] / [Intel XE#8197]) -> [PASS][12] +1 other test pass
   [11]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5310-949035681a65bc5801212ee164d0ab5ed6ae0d9e/shard-bmg-5/igt@kms_cursor_crc@cursor-sliding-256x256.html
   [12]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-169514v1/shard-bmg-3/igt@kms_cursor_crc@cursor-sliding-256x256.html

  * igt@kms_flip@2x-plain-flip-fb-recreate:
    - shard-bmg:          [FAIL][13] ([Intel XE#5408] / [Intel XE#6266]) -> [PASS][14]
   [13]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5310-949035681a65bc5801212ee164d0ab5ed6ae0d9e/shard-bmg-1/igt@kms_flip@2x-plain-flip-fb-recreate.html
   [14]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-169514v1/shard-bmg-4/igt@kms_flip@2x-plain-flip-fb-recreate.html

  * igt@kms_flip@2x-plain-flip-fb-recreate@bc-dp2-hdmi-a3:
    - shard-bmg:          [FAIL][15] ([Intel XE#6266]) -> [PASS][16]
   [15]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5310-949035681a65bc5801212ee164d0ab5ed6ae0d9e/shard-bmg-1/igt@kms_flip@2x-plain-flip-fb-recreate@bc-dp2-hdmi-a3.html
   [16]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-169514v1/shard-bmg-4/igt@kms_flip@2x-plain-flip-fb-recreate@bc-dp2-hdmi-a3.html

  * igt@kms_flip@flip-vs-expired-vblank@c-edp1:
    - shard-lnl:          [FAIL][17] ([Intel XE#301] / [Intel XE#3149]) -> [PASS][18]
   [17]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5310-949035681a65bc5801212ee164d0ab5ed6ae0d9e/shard-lnl-3/igt@kms_flip@flip-vs-expired-vblank@c-edp1.html
   [18]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-169514v1/shard-lnl-2/igt@kms_flip@flip-vs-expired-vblank@c-edp1.html

  
#### Warnings ####

  * igt@kms_flip@flip-vs-expired-vblank:
    - shard-lnl:          [FAIL][19] ([Intel XE#301] / [Intel XE#3149]) -> [FAIL][20] ([Intel XE#301])
   [19]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5310-949035681a65bc5801212ee164d0ab5ed6ae0d9e/shard-lnl-3/igt@kms_flip@flip-vs-expired-vblank.html
   [20]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-169514v1/shard-lnl-2/igt@kms_flip@flip-vs-expired-vblank.html

  * igt@kms_hdr@brightness-with-hdr:
    - shard-bmg:          [SKIP][21] ([Intel XE#3544]) -> [SKIP][22] ([Intel XE#3374] / [Intel XE#3544])
   [21]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5310-949035681a65bc5801212ee164d0ab5ed6ae0d9e/shard-bmg-4/igt@kms_hdr@brightness-with-hdr.html
   [22]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-169514v1/shard-bmg-8/igt@kms_hdr@brightness-with-hdr.html

  * igt@kms_tiled_display@basic-test-pattern:
    - shard-bmg:          [SKIP][23] ([Intel XE#2426] / [Intel XE#5848]) -> [FAIL][24] ([Intel XE#1729] / [Intel XE#7424])
   [23]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5310-949035681a65bc5801212ee164d0ab5ed6ae0d9e/shard-bmg-9/igt@kms_tiled_display@basic-test-pattern.html
   [24]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-169514v1/shard-bmg-5/igt@kms_tiled_display@basic-test-pattern.html

  
  [Intel XE#1729]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1729
  [Intel XE#2426]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2426
  [Intel XE#301]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/301
  [Intel XE#3149]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3149
  [Intel XE#3374]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3374
  [Intel XE#3544]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3544
  [Intel XE#3718]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3718
  [Intel XE#5408]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5408
  [Intel XE#5848]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5848
  [Intel XE#6078]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6078
  [Intel XE#6266]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6266
  [Intel XE#7084]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7084
  [Intel XE#7424]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7424
  [Intel XE#8007]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8007
  [Intel XE#8117]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8117
  [Intel XE#8150]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8150
  [Intel XE#8197]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8197


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

  * Linux: xe-5310-949035681a65bc5801212ee164d0ab5ed6ae0d9e -> xe-pw-169514v1

  IGT_8988: 8988
  xe-5310-949035681a65bc5801212ee164d0ab5ed6ae0d9e: 949035681a65bc5801212ee164d0ab5ed6ae0d9e
  xe-pw-169514v1: 169514v1

== Logs ==

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

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

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

* Re: [PATCH 1/3] drm/xe: Avoid using stolen memory for DPT.
  2026-06-30 14:10   ` Matthew Auld
@ 2026-07-01 10:14     ` Maarten Lankhorst
  2026-07-01 10:20       ` Matthew Auld
  0 siblings, 1 reply; 13+ messages in thread
From: Maarten Lankhorst @ 2026-07-01 10:14 UTC (permalink / raw)
  To: Matthew Auld, intel-xe; +Cc: dri-devel

Hello,

On 6/30/26 16:10, Matthew Auld wrote:
> On 30/06/2026 14:55, Maarten Lankhorst wrote:
>> On systems with media GT, extra latency is added when accessing stolen
>> memory when the GT is in MC6. Since we additionally aren't counting how
>> much memory is used for stolen and we could in theory fill up the
>> entire stolen area with DPT's, avoid using stolen and only use the
>> default memory region.
>>
>> Additionally, this may also result in random system hangs under load.
>>
>> Link: https://gitlab.freedesktop.org/drm/xe/kernel/-/work_items/7513
>> Signed-off-by: Maarten Lankhorst <dev@lankhorst.se>
> 
> Fixes: 775d0adc01a5 ("drm/xe/fbdev: Limit the usage of stolen for LNL+")
> Cc: <stable@vger.kernel.org> # v6.12+
> 
> ?
> 
>> ---
>>   drivers/gpu/drm/xe/display/xe_fb_pin.c | 33 +++++++-------------------
>>   1 file changed, 8 insertions(+), 25 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/xe/display/xe_fb_pin.c b/drivers/gpu/drm/xe/display/xe_fb_pin.c
>> index 5f4a0cd8deca0..73469ea5f333d 100644
>> --- a/drivers/gpu/drm/xe/display/xe_fb_pin.c
>> +++ b/drivers/gpu/drm/xe/display/xe_fb_pin.c
>> @@ -164,31 +164,14 @@ static int __xe_pin_fb_vma_dpt(struct drm_gem_object *obj,
>>           dpt_size = ALIGN(intel_rotation_info_size(&view->rotated) * 8,
>>                    XE_PAGE_SIZE);
>>   -    if (IS_DGFX(xe))
>> -        dpt = xe_bo_create_pin_map_at_novm(xe, tile0,
>> -                           dpt_size, ~0ull,
>> -                           ttm_bo_type_kernel,
>> -                           XE_BO_FLAG_VRAM0 |
>> -                           XE_BO_FLAG_GGTT |
>> -                           XE_BO_FLAG_PAGETABLE,
>> -                           pin_params->alignment, false);
>> -    else
>> -        dpt = xe_bo_create_pin_map_at_novm(xe, tile0,
>> -                           dpt_size,  ~0ull,
>> -                           ttm_bo_type_kernel,
>> -                           XE_BO_FLAG_STOLEN |
>> -                           XE_BO_FLAG_GGTT |
>> -                           XE_BO_FLAG_PAGETABLE,
>> -                           pin_params->alignment, false);
>> -    if (IS_ERR(dpt))
>> -        dpt = xe_bo_create_pin_map_at_novm(xe, tile0,
>> -                           dpt_size,  ~0ull,
>> -                           ttm_bo_type_kernel,
>> -                           XE_BO_FLAG_SYSTEM |
>> -                           XE_BO_FLAG_GGTT |
>> -                           XE_BO_FLAG_PAGETABLE |
>> -                           XE_BO_FLAG_FORCE_WC,
>> -                           pin_params->alignment, false);
> 
> Technically this changes the behaviour for dgpu, where it looks like it will fall back to system memory? Surprised that would even work though, and not get a bunch of pipe errors? I would assume VRAM is a requirement.

I just tried it out to answer the question, turns out this fails spectacularly!
It gives a pipe fault error on every vblank on my bmg.

It probably never worked, but as long as we never fall back it never was an issue.
The new behavior is correct, I'll update the wording of the commit message for this.

> Either keeping the same behaviour, or updating the commit to mention this change, or splitting that out (maybe needs a separate fixes?),
> Reviewed-by: Matthew Auld <matthew.auld@intel.com>
> 
Can I extend that to patch 2 and 3 too?

>> +    dpt = xe_bo_create_pin_map_at_novm(xe, tile0,
>> +                       dpt_size,  ~0ull,
>> +                       ttm_bo_type_kernel,
>> +                       XE_BO_FLAG_VRAM_IF_DGFX(tile0) |
>> +                       XE_BO_FLAG_GGTT |
>> +                       XE_BO_FLAG_PAGETABLE |
>> +                       XE_BO_FLAG_FORCE_WC,
>> +                       pin_params->alignment, false);
>>       if (IS_ERR(dpt))
>>           return PTR_ERR(dpt);
>>   
> 


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

* Re: [PATCH 1/3] drm/xe: Avoid using stolen memory for DPT.
  2026-07-01 10:14     ` Maarten Lankhorst
@ 2026-07-01 10:20       ` Matthew Auld
  0 siblings, 0 replies; 13+ messages in thread
From: Matthew Auld @ 2026-07-01 10:20 UTC (permalink / raw)
  To: Maarten Lankhorst, intel-xe; +Cc: dri-devel

On 01/07/2026 11:14, Maarten Lankhorst wrote:
> Hello,
> 
> On 6/30/26 16:10, Matthew Auld wrote:
>> On 30/06/2026 14:55, Maarten Lankhorst wrote:
>>> On systems with media GT, extra latency is added when accessing stolen
>>> memory when the GT is in MC6. Since we additionally aren't counting how
>>> much memory is used for stolen and we could in theory fill up the
>>> entire stolen area with DPT's, avoid using stolen and only use the
>>> default memory region.
>>>
>>> Additionally, this may also result in random system hangs under load.
>>>
>>> Link: https://gitlab.freedesktop.org/drm/xe/kernel/-/work_items/7513
>>> Signed-off-by: Maarten Lankhorst <dev@lankhorst.se>
>>
>> Fixes: 775d0adc01a5 ("drm/xe/fbdev: Limit the usage of stolen for LNL+")
>> Cc: <stable@vger.kernel.org> # v6.12+
>>
>> ?
>>
>>> ---
>>>    drivers/gpu/drm/xe/display/xe_fb_pin.c | 33 +++++++-------------------
>>>    1 file changed, 8 insertions(+), 25 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/xe/display/xe_fb_pin.c b/drivers/gpu/drm/xe/display/xe_fb_pin.c
>>> index 5f4a0cd8deca0..73469ea5f333d 100644
>>> --- a/drivers/gpu/drm/xe/display/xe_fb_pin.c
>>> +++ b/drivers/gpu/drm/xe/display/xe_fb_pin.c
>>> @@ -164,31 +164,14 @@ static int __xe_pin_fb_vma_dpt(struct drm_gem_object *obj,
>>>            dpt_size = ALIGN(intel_rotation_info_size(&view->rotated) * 8,
>>>                     XE_PAGE_SIZE);
>>>    -    if (IS_DGFX(xe))
>>> -        dpt = xe_bo_create_pin_map_at_novm(xe, tile0,
>>> -                           dpt_size, ~0ull,
>>> -                           ttm_bo_type_kernel,
>>> -                           XE_BO_FLAG_VRAM0 |
>>> -                           XE_BO_FLAG_GGTT |
>>> -                           XE_BO_FLAG_PAGETABLE,
>>> -                           pin_params->alignment, false);
>>> -    else
>>> -        dpt = xe_bo_create_pin_map_at_novm(xe, tile0,
>>> -                           dpt_size,  ~0ull,
>>> -                           ttm_bo_type_kernel,
>>> -                           XE_BO_FLAG_STOLEN |
>>> -                           XE_BO_FLAG_GGTT |
>>> -                           XE_BO_FLAG_PAGETABLE,
>>> -                           pin_params->alignment, false);
>>> -    if (IS_ERR(dpt))
>>> -        dpt = xe_bo_create_pin_map_at_novm(xe, tile0,
>>> -                           dpt_size,  ~0ull,
>>> -                           ttm_bo_type_kernel,
>>> -                           XE_BO_FLAG_SYSTEM |
>>> -                           XE_BO_FLAG_GGTT |
>>> -                           XE_BO_FLAG_PAGETABLE |
>>> -                           XE_BO_FLAG_FORCE_WC,
>>> -                           pin_params->alignment, false);
>>
>> Technically this changes the behaviour for dgpu, where it looks like it will fall back to system memory? Surprised that would even work though, and not get a bunch of pipe errors? I would assume VRAM is a requirement.
> 
> I just tried it out to answer the question, turns out this fails spectacularly!
> It gives a pipe fault error on every vblank on my bmg.

hah, thanks for confirming.

> 
> It probably never worked, but as long as we never fall back it never was an issue.
> The new behavior is correct, I'll update the wording of the commit message for this.

Maybe also change the commit title to "fix DPT path" or similar, or just 
split that out. Might need a different fixes tag. Or I guess so long as 
this lands in 6.12+, we should be good.

> 
>> Either keeping the same behaviour, or updating the commit to mention this change, or splitting that out (maybe needs a separate fixes?),
>> Reviewed-by: Matthew Auld <matthew.auld@intel.com>
>>
> Can I extend that to patch 2 and 3 too?

Will look at those now.

> 
>>> +    dpt = xe_bo_create_pin_map_at_novm(xe, tile0,
>>> +                       dpt_size,  ~0ull,
>>> +                       ttm_bo_type_kernel,
>>> +                       XE_BO_FLAG_VRAM_IF_DGFX(tile0) |
>>> +                       XE_BO_FLAG_GGTT |
>>> +                       XE_BO_FLAG_PAGETABLE |
>>> +                       XE_BO_FLAG_FORCE_WC,
>>> +                       pin_params->alignment, false);
>>>        if (IS_ERR(dpt))
>>>            return PTR_ERR(dpt);
>>>    
>>
> 


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

* Re: [PATCH 2/3] drm/xe/display: Avoid using stolen memory for framebuffer when media gt exists.
  2026-06-30 13:55 ` [PATCH 2/3] drm/xe/display: Avoid using stolen memory for framebuffer when media gt exists Maarten Lankhorst
@ 2026-07-01 10:27   ` Matthew Auld
  2026-07-01 10:28     ` Matthew Auld
  0 siblings, 1 reply; 13+ messages in thread
From: Matthew Auld @ 2026-07-01 10:27 UTC (permalink / raw)
  To: Maarten Lankhorst, intel-xe; +Cc: dri-devel

On 30/06/2026 14:55, Maarten Lankhorst wrote:
> On systems with media GT, extra latency is added when accessing stolen
> memory when the GT is in MC6.
> 
> Simply disable allocating stolen memory for framebuffers when media gt
> is found.
> 
> Link: https://gitlab.freedesktop.org/drm/xe/kernel/-/work_items/7513
> Signed-off-by: Maarten Lankhorst <dev@lankhorst.se>
> ---
>   drivers/gpu/drm/xe/display/xe_display_bo.c | 7 +++++++
>   1 file changed, 7 insertions(+)
> 
> diff --git a/drivers/gpu/drm/xe/display/xe_display_bo.c b/drivers/gpu/drm/xe/display/xe_display_bo.c
> index 8953da0136dcb..677ae3af9ac0c 100644
> --- a/drivers/gpu/drm/xe/display/xe_display_bo.c
> +++ b/drivers/gpu/drm/xe/display/xe_display_bo.c
> @@ -131,6 +131,13 @@ bool xe_display_bo_fbdev_prefer_stolen(struct xe_device *xe, unsigned int size)
>   	if (IS_DGFX(xe))
>   		return false;
>   
> +	/*
> +	 * Avoid stolen memory when the media_gt exists,
> +	 * because a lot of latency is added when media gt is in MC6
> +	 */
> +	if (xe_device_get_root_tile(xe)->media_gt)
> +		return false;
> +
>   	if (XE_DEVICE_WA(xe, 22019338487_display))
>   		return false;

There is also the question for why this WA only applies to LNL, but the 
GT side of the WA applies even to PTL+, which seems highly suspect. 
Might be worth mentioning that in the commit. Also wondering if can now 
just drop 22019338487_display?

Also not sure if should just go with platform check here:

if (info.platform >= LNL)

?

Either way:
Reviewed-by: Matthew Auld <matthew.auld@intel.com>

>   


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

* Re: [PATCH 2/3] drm/xe/display: Avoid using stolen memory for framebuffer when media gt exists.
  2026-07-01 10:27   ` Matthew Auld
@ 2026-07-01 10:28     ` Matthew Auld
  0 siblings, 0 replies; 13+ messages in thread
From: Matthew Auld @ 2026-07-01 10:28 UTC (permalink / raw)
  To: Maarten Lankhorst, intel-xe; +Cc: dri-devel

On 01/07/2026 11:27, Matthew Auld wrote:
> On 30/06/2026 14:55, Maarten Lankhorst wrote:
>> On systems with media GT, extra latency is added when accessing stolen
>> memory when the GT is in MC6.
>>
>> Simply disable allocating stolen memory for framebuffers when media gt
>> is found.
>>
>> Link: https://gitlab.freedesktop.org/drm/xe/kernel/-/work_items/7513
>> Signed-off-by: Maarten Lankhorst <dev@lankhorst.se>
>> ---
>>   drivers/gpu/drm/xe/display/xe_display_bo.c | 7 +++++++
>>   1 file changed, 7 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/xe/display/xe_display_bo.c b/drivers/gpu/ 
>> drm/xe/display/xe_display_bo.c
>> index 8953da0136dcb..677ae3af9ac0c 100644
>> --- a/drivers/gpu/drm/xe/display/xe_display_bo.c
>> +++ b/drivers/gpu/drm/xe/display/xe_display_bo.c
>> @@ -131,6 +131,13 @@ bool xe_display_bo_fbdev_prefer_stolen(struct 
>> xe_device *xe, unsigned int size)
>>       if (IS_DGFX(xe))
>>           return false;
>> +    /*
>> +     * Avoid stolen memory when the media_gt exists,
>> +     * because a lot of latency is added when media gt is in MC6
>> +     */
>> +    if (xe_device_get_root_tile(xe)->media_gt)
>> +        return false;
>> +
>>       if (XE_DEVICE_WA(xe, 22019338487_display))
>>           return false;
> 
> There is also the question for why this WA only applies to LNL, but the 
> GT side of the WA applies even to PTL+, which seems highly suspect. 
> Might be worth mentioning that in the commit. Also wondering if can now 
> just drop 22019338487_display?
> 
> Also not sure if should just go with platform check here:
> 
> if (info.platform >= LNL)
> 
> ?
> 
> Either way:
> Reviewed-by: Matthew Auld <matthew.auld@intel.com>

Also should this have the same Fixes: ?

> 
> 


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

* Re: [PATCH 3/3] drm/xe/display: Do not allocate into stolen for new framebuffers.
  2026-06-30 13:55 ` [PATCH 3/3] drm/xe/display: Do not allocate into stolen for new framebuffers Maarten Lankhorst
@ 2026-07-01 10:33   ` Matthew Auld
  0 siblings, 0 replies; 13+ messages in thread
From: Matthew Auld @ 2026-07-01 10:33 UTC (permalink / raw)
  To: Maarten Lankhorst, intel-xe; +Cc: dri-devel

On 30/06/2026 14:55, Maarten Lankhorst wrote:
> Prefer to use system memory for global framebuffers, and reserve
> the space for FBC use only.
> 
> Now that multiple CRTC's can use FBC's, the simple heuristic
> of using less than half of stolen is no longer sufficient.

I think worth mentioning that we have major issues around stolen + CPU 
access on xe2+?

> 
> Link: https://gitlab.freedesktop.org/drm/xe/kernel/-/work_items/7513
> Signed-off-by: Maarten Lankhorst <dev@lankhorst.se>

Reviewed-by: Matthew Auld <matthew.auld@intel.com>

> ---
>   drivers/gpu/drm/xe/display/xe_display_bo.c | 33 ++++------------------
>   1 file changed, 6 insertions(+), 27 deletions(-)
> 
> diff --git a/drivers/gpu/drm/xe/display/xe_display_bo.c b/drivers/gpu/drm/xe/display/xe_display_bo.c
> index 677ae3af9ac0c..04d4204b37a53 100644
> --- a/drivers/gpu/drm/xe/display/xe_display_bo.c
> +++ b/drivers/gpu/drm/xe/display/xe_display_bo.c
> @@ -154,33 +154,12 @@ static struct drm_gem_object *xe_display_bo_fbdev_create(struct drm_device *drm,
>   	struct xe_device *xe = to_xe_device(drm);
>   	struct xe_bo *obj;
>   
> -	obj = ERR_PTR(-ENODEV);
> -
> -	if (xe_display_bo_fbdev_prefer_stolen(xe, size)) {
> -		obj = xe_bo_create_pin_map_novm(xe, xe_device_get_root_tile(xe),
> -						size,
> -						ttm_bo_type_kernel,
> -						XE_BO_FLAG_FORCE_WC |
> -						XE_BO_FLAG_STOLEN |
> -						XE_BO_FLAG_GGTT,
> -						false);
> -		if (!IS_ERR(obj))
> -			drm_info(&xe->drm, "Allocated fbdev into stolen\n");
> -		else
> -			drm_info(&xe->drm, "Allocated fbdev into stolen failed: %li\n", PTR_ERR(obj));
> -	} else {
> -		drm_info(&xe->drm, "Allocating fbdev: Stolen memory not preferred.\n");
> -	}
> -
> -	if (IS_ERR(obj)) {
> -		obj = xe_bo_create_pin_map_novm(xe, xe_device_get_root_tile(xe), size,
> -						ttm_bo_type_kernel,
> -						XE_BO_FLAG_FORCE_WC |
> -						XE_BO_FLAG_VRAM_IF_DGFX(xe_device_get_root_tile(xe)) |
> -						XE_BO_FLAG_GGTT,
> -						false);
> -	}
> -
> +	obj = xe_bo_create_pin_map_novm(xe, xe_device_get_root_tile(xe), size,
> +					ttm_bo_type_kernel,
> +					XE_BO_FLAG_FORCE_WC |
> +					XE_BO_FLAG_VRAM_IF_DGFX(xe_device_get_root_tile(xe)) |
> +					XE_BO_FLAG_GGTT,
> +					false);
>   	if (IS_ERR(obj)) {
>   		drm_err(&xe->drm, "failed to allocate framebuffer (%pe)\n", obj);
>   		return ERR_PTR(-ENOMEM);


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

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

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-06-30 13:55 [PATCH 0/3] drm/xe: Disable stolen memory for driver allocations Maarten Lankhorst
2026-06-30 13:55 ` [PATCH 1/3] drm/xe: Avoid using stolen memory for DPT Maarten Lankhorst
2026-06-30 14:10   ` Matthew Auld
2026-07-01 10:14     ` Maarten Lankhorst
2026-07-01 10:20       ` Matthew Auld
2026-06-30 13:55 ` [PATCH 2/3] drm/xe/display: Avoid using stolen memory for framebuffer when media gt exists Maarten Lankhorst
2026-07-01 10:27   ` Matthew Auld
2026-07-01 10:28     ` Matthew Auld
2026-06-30 13:55 ` [PATCH 3/3] drm/xe/display: Do not allocate into stolen for new framebuffers Maarten Lankhorst
2026-07-01 10:33   ` Matthew Auld
2026-06-30 14:25 ` ✓ CI.KUnit: success for drm/xe: Disable stolen memory for driver allocations Patchwork
2026-06-30 14:59 ` ✓ Xe.CI.BAT: " Patchwork
2026-07-01  6:40 ` ✓ Xe.CI.FULL: " Patchwork

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