Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 00/10] pm_pme support on display hotplug
@ 2026-09-11  8:04 Vinod Govindapillai
  2026-09-11  8:04 ` [PATCH v5 01/10] drm/xe/pm: initialize the device's system wakeup capabilities Vinod Govindapillai
                   ` (12 more replies)
  0 siblings, 13 replies; 20+ messages in thread
From: Vinod Govindapillai @ 2026-09-11  8:04 UTC (permalink / raw)
  To: intel-xe, intel-gfx; +Cc: vinod.govindapillai, imre.deak, jouni.hogander

Introduce PME support for PME capable devices and avoid
HPD polling on runtime suspend. For PME capable devices
HPD will trigger PME which will wakeup the system. And
rest of the runtime resume call is same as before.

v2: Instead of plumbing keep_hpd and pme_capability to
    the existing interfaces, a separate helper function to
    set and get pme capability is added.

    HPD polling is handled directly inside the
    intel_hpd_poll_enable() based on the pme capability
    flag

v3: Lockdep related splats were observed during some rare testing
    scenarios. The PCI PME api to enable wake internally use kmalloc
    and can trigger deadlocks. So the calls to the PCI PME APIs are
    updated and placed within the no reclaim loop. Also any display
    specific calls are isolated within xe / i915 blocks and display
    parent interface is used to tackle the inter dependencies to
    keep the display module design clean. 

Vinod Govindapillai (10):
  drm/xe/pm: initialize the device's system wakeup capabilities
  drm/xe/pm: introduce PM PME support
  drm/xe/pm: avoid reclaim when arming PME wakeup
  drm/i915: add pme_enabled() to the parent interface
  drm/i915/xe: plug the pme_enabed implementation for xe
  drm/i915/hotplug: add helpers to track HPDs can generate PME
  drm/i915: plug the pm runtime handlers with PME HPD handling
  drm/xe/pm: clear PME HPD flag on runtime suspend error handler
  drm/i915/irq: conditional HPD IRQ resets based on PME capability
  drm/i915/hotplug: avoid HPD polling if the device is PME capable

 .../gpu/drm/i915/display/intel_display_core.h |  2 ++
 .../drm/i915/display/intel_display_driver.c   | 16 ++++++++++++++
 .../drm/i915/display/intel_display_driver.h   |  1 +
 .../gpu/drm/i915/display/intel_display_irq.c  | 19 ++++++++++------
 .../gpu/drm/i915/display/intel_display_rpm.c  |  7 ++++++
 .../gpu/drm/i915/display/intel_display_rpm.h  |  1 +
 drivers/gpu/drm/i915/display/intel_hotplug.c  | 15 +++++++++++++
 drivers/gpu/drm/i915/display/intel_hotplug.h  |  3 +++
 drivers/gpu/drm/xe/display/xe_display.c       |  9 ++++++++
 drivers/gpu/drm/xe/display/xe_display.h       |  2 ++
 drivers/gpu/drm/xe/display/xe_display_rpm.c   |  8 +++++++
 drivers/gpu/drm/xe/xe_device_types.h          | 13 +++++++++++
 drivers/gpu/drm/xe/xe_pci.c                   | 22 ++++++++++++++++++-
 drivers/gpu/drm/xe/xe_pm.c                    | 20 +++++++++++++++++
 include/drm/intel/display_parent_interface.h  |  1 +
 15 files changed, 131 insertions(+), 8 deletions(-)

-- 
2.43.0


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

* [PATCH v5 01/10] drm/xe/pm: initialize the device's system wakeup capabilities
  2026-09-11  8:04 [PATCH v5 00/10] pm_pme support on display hotplug Vinod Govindapillai
@ 2026-09-11  8:04 ` Vinod Govindapillai
  2026-09-11  8:04 ` [PATCH v5 02/10] drm/xe/pm: introduce PM PME support Vinod Govindapillai
                   ` (11 subsequent siblings)
  12 siblings, 0 replies; 20+ messages in thread
From: Vinod Govindapillai @ 2026-09-11  8:04 UTC (permalink / raw)
  To: intel-xe, intel-gfx; +Cc: vinod.govindapillai, imre.deak, jouni.hogander

NVL+ XE devices are capable of generating PME from HPDs. Enable
the device as a wakeup device so the display hotplugs can
generate PM PME events and can invoke pm runtime resume routine.

Bspec: 52979, 52980, 68857, 68867, 68970
Assisted-by: GitHub_Copilot:claude-opus-5
Signed-off-by: Vinod Govindapillai <vinod.govindapillai@intel.com>
---
 drivers/gpu/drm/xe/xe_pci.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/gpu/drm/xe/xe_pci.c b/drivers/gpu/drm/xe/xe_pci.c
index ab4da1d9a9f1..f8e16aefd2f8 100644
--- a/drivers/gpu/drm/xe/xe_pci.c
+++ b/drivers/gpu/drm/xe/xe_pci.c
@@ -1217,6 +1217,10 @@ static int __xe_pci_probe(struct pci_dev *pdev, const struct xe_device_desc *des
 
 	pci_set_master(pdev);
 
+	err = devm_device_init_wakeup(&pdev->dev);
+	if (err)
+		return err;
+
 	err = xe_probe_info_early(xe, desc, &probed_info);
 	if (err)
 		return err;
-- 
2.43.0


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

* [PATCH v5 02/10] drm/xe/pm: introduce PM PME support
  2026-09-11  8:04 [PATCH v5 00/10] pm_pme support on display hotplug Vinod Govindapillai
  2026-09-11  8:04 ` [PATCH v5 01/10] drm/xe/pm: initialize the device's system wakeup capabilities Vinod Govindapillai
@ 2026-09-11  8:04 ` Vinod Govindapillai
  2026-09-11  8:04 ` [PATCH v5 03/10] drm/xe/pm: avoid reclaim when arming PME wakeup Vinod Govindapillai
                   ` (10 subsequent siblings)
  12 siblings, 0 replies; 20+ messages in thread
From: Vinod Govindapillai @ 2026-09-11  8:04 UTC (permalink / raw)
  To: intel-xe, intel-gfx; +Cc: vinod.govindapillai, imre.deak, jouni.hogander

Introduce PME support for PME capable devices. Whether device is
PME capable is assessed during PCI probe routine. And the whether
PME is enabled for a specific context is assessed during the PM
runtime suspend call if the device is PME capable.

If the PME is enabled, HPDs can generate PME which in turn call
the runtime resume call and do the wakeup routines. Till now
the driver was relying on HPD polling to wakeup in case of any
HPDs. HPD polling can be avoided in platforms with PME support
and instead rely on this PCI PME for HPD induced wakeup.

Bspec: 52979, 52980, 68857, 68867, 68970
Assisted-by: GitHub_Copilot:claude-opus-5
Signed-off-by: Vinod Govindapillai <vinod.govindapillai@intel.com>
---
 drivers/gpu/drm/xe/xe_device_types.h | 13 +++++++++++++
 drivers/gpu/drm/xe/xe_pci.c          | 13 ++++++++++++-
 drivers/gpu/drm/xe/xe_pm.c           | 13 +++++++++++++
 3 files changed, 38 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/xe/xe_device_types.h b/drivers/gpu/drm/xe/xe_device_types.h
index f88bacf63c83..37190473f6db 100644
--- a/drivers/gpu/drm/xe/xe_device_types.h
+++ b/drivers/gpu/drm/xe/xe_device_types.h
@@ -454,6 +454,19 @@ struct xe_device {
 		struct mutex lock;
 	} d3cold;
 
+	/** @pme: Encapsulate pme related stuff */
+	struct {
+		/** @pme.capable: Indicates if device is PME capable */
+		bool capable;
+
+		/** @pme.enabled:
+		 *
+		 * Indicates if PME is enabled - depends on user controllable
+		 * sysfs interface as well
+		 */
+		bool enabled;
+	} pme;
+
 	/** @pm_notifier: Our PM notifier to perform actions in response to various PM events. */
 	struct notifier_block pm_notifier;
 	/** @pm_block: Completion to block validating tasks on suspend / hibernate prepare */
diff --git a/drivers/gpu/drm/xe/xe_pci.c b/drivers/gpu/drm/xe/xe_pci.c
index f8e16aefd2f8..5cb9c140461b 100644
--- a/drivers/gpu/drm/xe/xe_pci.c
+++ b/drivers/gpu/drm/xe/xe_pci.c
@@ -1387,6 +1387,9 @@ static int xe_pci_runtime_suspend(struct device *dev)
 	struct xe_device *xe = pdev_to_xe_device(pdev);
 	int err;
 
+	xe->pme.enabled = xe->pme.capable && !xe->d3cold.allowed &&
+			  pci_enable_wake(pdev, PCI_D3hot, true) == 0;
+
 	/*
 	 * We hold an additional reference to the runtime PM to keep PF in D0
 	 * during VFs lifetime, as our VFs do not implement the PM capability.
@@ -1397,8 +1400,14 @@ static int xe_pci_runtime_suspend(struct device *dev)
 	xe_assert(xe, !pci_num_vf(pdev));
 
 	err = xe_pm_runtime_suspend(xe);
-	if (err)
+	if (err) {
+		if (xe->pme.enabled) {
+			pci_enable_wake(pdev, PCI_D3hot, false);
+			xe->pme.enabled = false;
+		}
+
 		return err;
+	}
 
 	pci_save_state(pdev);
 
@@ -1427,6 +1436,8 @@ static int xe_pci_runtime_resume(struct device *dev)
 
 	pci_restore_state(pdev);
 
+	xe->pme.enabled = false;
+
 	if (xe->d3cold.allowed) {
 		err = pci_enable_device(pdev);
 		if (err)
diff --git a/drivers/gpu/drm/xe/xe_pm.c b/drivers/gpu/drm/xe/xe_pm.c
index f517bf453b54..c79f55b66a41 100644
--- a/drivers/gpu/drm/xe/xe_pm.c
+++ b/drivers/gpu/drm/xe/xe_pm.c
@@ -78,6 +78,8 @@
  * management (RPS).
  */
 
+#define HAS_PM_PME_SUPPORT(xe) (GRAPHICS_VERx100(xe) >= 3500)
+
 #ifdef CONFIG_LOCKDEP
 static struct lockdep_map xe_pm_runtime_d3cold_map = {
 	.name = "xe_rpm_d3cold_map"
@@ -384,6 +386,14 @@ int xe_pm_init_early(struct xe_device *xe)
 }
 ALLOW_ERROR_INJECTION(xe_pm_init_early, ERRNO); /* See xe_pci_probe() */
 
+static bool xe_pm_pci_pme_capable(struct xe_device *xe)
+{
+	struct pci_dev *pdev = to_pci_dev(xe->drm.dev);
+
+	return HAS_PM_PME_SUPPORT(xe) ?
+		pci_pme_capable(pdev, PCI_D3hot) : false;
+}
+
 /**
  * xe_pm_probe() - Initialize Xe Power Management
  * @xe: the &xe_device instance
@@ -397,6 +407,9 @@ int xe_pm_probe(struct xe_device *xe)
 	xe->d3cold.capable = xe_pm_pci_d3cold_capable(xe);
 	xe_dbg(xe, "d3cold: capable=%s\n", str_yes_no(xe->d3cold.capable));
 
+	xe->pme.capable = xe_pm_pci_pme_capable(xe);
+	xe_dbg(xe, "pme: capable=%s\n", str_yes_no(xe->pme.capable));
+
 	return 0;
 }
 
-- 
2.43.0


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

* [PATCH v5 03/10] drm/xe/pm: avoid reclaim when arming PME wakeup
  2026-09-11  8:04 [PATCH v5 00/10] pm_pme support on display hotplug Vinod Govindapillai
  2026-09-11  8:04 ` [PATCH v5 01/10] drm/xe/pm: initialize the device's system wakeup capabilities Vinod Govindapillai
  2026-09-11  8:04 ` [PATCH v5 02/10] drm/xe/pm: introduce PM PME support Vinod Govindapillai
@ 2026-09-11  8:04 ` Vinod Govindapillai
  2026-09-11  8:22   ` sashiko-bot
  2026-09-11  8:04 ` [PATCH v5 04/10] drm/i915: add pme_enabled() to the parent interface Vinod Govindapillai
                   ` (9 subsequent siblings)
  12 siblings, 1 reply; 20+ messages in thread
From: Vinod Govindapillai @ 2026-09-11  8:04 UTC (permalink / raw)
  To: intel-xe, intel-gfx; +Cc: vinod.govindapillai, imre.deak, jouni.hogander

pci_enable_wake() evaluates ACPI methods and allocates with GFP_KERNEL.
xe's shrinker calls xe_pm_runtime_get() and blocks until the runtime
suspend transition completes, so fs_reclaim sits above the runtime PM
lockmap (primed in xe_pm_runtime_lockdep_prime()). An allocation that
enters reclaim from the suspend path can therefore deadlock against a
task already holding fs_reclaim and waiting on that transition.

Wrap the call in memalloc_noreclaim_save()/restore() so the allocation
is satisfied from reserves and never enters reclaim.

Assisted-by: GitHub_Copilot:claude-opus-5
Signed-off-by: Vinod Govindapillai <vinod.govindapillai@intel.com>
---
 drivers/gpu/drm/xe/xe_pci.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/gpu/drm/xe/xe_pci.c b/drivers/gpu/drm/xe/xe_pci.c
index 5cb9c140461b..ffad4ae171a0 100644
--- a/drivers/gpu/drm/xe/xe_pci.c
+++ b/drivers/gpu/drm/xe/xe_pci.c
@@ -1385,10 +1385,13 @@ static int xe_pci_runtime_suspend(struct device *dev)
 {
 	struct pci_dev *pdev = to_pci_dev(dev);
 	struct xe_device *xe = pdev_to_xe_device(pdev);
+	unsigned int flags;
 	int err;
 
+	flags = memalloc_noreclaim_save();
 	xe->pme.enabled = xe->pme.capable && !xe->d3cold.allowed &&
 			  pci_enable_wake(pdev, PCI_D3hot, true) == 0;
+	memalloc_noreclaim_restore(flags);
 
 	/*
 	 * We hold an additional reference to the runtime PM to keep PF in D0
@@ -1402,7 +1405,9 @@ static int xe_pci_runtime_suspend(struct device *dev)
 	err = xe_pm_runtime_suspend(xe);
 	if (err) {
 		if (xe->pme.enabled) {
+			flags = memalloc_noreclaim_save();
 			pci_enable_wake(pdev, PCI_D3hot, false);
+			memalloc_noreclaim_restore(flags);
 			xe->pme.enabled = false;
 		}
 
-- 
2.43.0


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

* [PATCH v5 04/10] drm/i915: add pme_enabled() to the parent interface
  2026-09-11  8:04 [PATCH v5 00/10] pm_pme support on display hotplug Vinod Govindapillai
                   ` (2 preceding siblings ...)
  2026-09-11  8:04 ` [PATCH v5 03/10] drm/xe/pm: avoid reclaim when arming PME wakeup Vinod Govindapillai
@ 2026-09-11  8:04 ` Vinod Govindapillai
  2026-09-11  8:04 ` [PATCH v5 05/10] drm/i915/xe: plug the pme_enabed implementation for xe Vinod Govindapillai
                   ` (8 subsequent siblings)
  12 siblings, 0 replies; 20+ messages in thread
From: Vinod Govindapillai @ 2026-09-11  8:04 UTC (permalink / raw)
  To: intel-xe, intel-gfx; +Cc: vinod.govindapillai, imre.deak, jouni.hogander

PME capabiliy need to be assessed very early during runtime suspend
routine to avoid resetting HPDs during IRQ resets. As display
runtime pm routines are being executed in the independent intel
display driver entry points, we need to have independent access
to the pme status as well. Add a provision to query the optional
pme_enabled to the parent interface so that it could be called
independently based on xe/i915's pme_enabled() implementation.

Assisted-by: GitHub_Copilot:claude-opus-5
Signed-off-by: Vinod Govindapillai <vinod.govindapillai@intel.com>
---
 drivers/gpu/drm/i915/display/intel_display_rpm.c | 7 +++++++
 drivers/gpu/drm/i915/display/intel_display_rpm.h | 1 +
 include/drm/intel/display_parent_interface.h     | 1 +
 3 files changed, 9 insertions(+)

diff --git a/drivers/gpu/drm/i915/display/intel_display_rpm.c b/drivers/gpu/drm/i915/display/intel_display_rpm.c
index 0a331f89b4db..9927119a0fd1 100644
--- a/drivers/gpu/drm/i915/display/intel_display_rpm.c
+++ b/drivers/gpu/drm/i915/display/intel_display_rpm.c
@@ -46,6 +46,13 @@ bool intel_display_rpm_suspended(struct intel_display *display)
 	return display->parent->rpm->suspended(display->drm);
 }
 
+bool intel_display_rpm_pme_enabled(struct intel_display *display)
+{
+	const struct intel_display_rpm_interface *rpm = display->parent->rpm;
+
+	return rpm->pme_enabled && rpm->pme_enabled(display->drm);
+}
+
 void assert_display_rpm_held(struct intel_display *display)
 {
 	display->parent->rpm->assert_held(display->drm);
diff --git a/drivers/gpu/drm/i915/display/intel_display_rpm.h b/drivers/gpu/drm/i915/display/intel_display_rpm.h
index 6ef48515f84b..5d9a1cdddfa7 100644
--- a/drivers/gpu/drm/i915/display/intel_display_rpm.h
+++ b/drivers/gpu/drm/i915/display/intel_display_rpm.h
@@ -21,6 +21,7 @@ void intel_display_rpm_put(struct intel_display *display, struct ref_tracker *wa
 
 /* Only for special cases. */
 bool intel_display_rpm_suspended(struct intel_display *display);
+bool intel_display_rpm_pme_enabled(struct intel_display *display);
 
 void assert_display_rpm_held(struct intel_display *display);
 void intel_display_rpm_assert_block(struct intel_display *display);
diff --git a/include/drm/intel/display_parent_interface.h b/include/drm/intel/display_parent_interface.h
index 5e44c022d1ae..f36134e89cb6 100644
--- a/include/drm/intel/display_parent_interface.h
+++ b/include/drm/intel/display_parent_interface.h
@@ -196,6 +196,7 @@ struct intel_display_rpm_interface {
 	void (*put_unchecked)(const struct drm_device *drm);
 
 	bool (*suspended)(const struct drm_device *drm);
+	bool (*pme_enabled)(const struct drm_device *drm); /* Optional */
 	void (*assert_held)(const struct drm_device *drm);
 	void (*assert_block)(const struct drm_device *drm);
 	void (*assert_unblock)(const struct drm_device *drm);
-- 
2.43.0


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

* [PATCH v5 05/10] drm/i915/xe: plug the pme_enabed implementation for xe
  2026-09-11  8:04 [PATCH v5 00/10] pm_pme support on display hotplug Vinod Govindapillai
                   ` (3 preceding siblings ...)
  2026-09-11  8:04 ` [PATCH v5 04/10] drm/i915: add pme_enabled() to the parent interface Vinod Govindapillai
@ 2026-09-11  8:04 ` Vinod Govindapillai
  2026-09-11  8:04 ` [PATCH v5 06/10] drm/i915/hotplug: add helpers to track HPDs can generate PME Vinod Govindapillai
                   ` (7 subsequent siblings)
  12 siblings, 0 replies; 20+ messages in thread
From: Vinod Govindapillai @ 2026-09-11  8:04 UTC (permalink / raw)
  To: intel-xe, intel-gfx; +Cc: vinod.govindapillai, imre.deak, jouni.hogander

Plug the pme_enabled query for xe. It will return the current
PME status for the device. For supported platforms, PME is
enabled during runtime suspend calls if the device is PME is capable.

Assisted-by: GitHub_Copilot:claude-opus-5
Signed-off-by: Vinod Govindapillai <vinod.govindapillai@intel.com>
---
 drivers/gpu/drm/xe/display/xe_display_rpm.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/drivers/gpu/drm/xe/display/xe_display_rpm.c b/drivers/gpu/drm/xe/display/xe_display_rpm.c
index 548b503aa024..6d7333eb45c7 100644
--- a/drivers/gpu/drm/xe/display/xe_display_rpm.c
+++ b/drivers/gpu/drm/xe/display/xe_display_rpm.c
@@ -45,6 +45,13 @@ static bool xe_display_rpm_suspended(const struct drm_device *drm)
 	return pm_runtime_suspended(xe->drm.dev);
 }
 
+static bool xe_display_rpm_pme_enabled(const struct drm_device *drm)
+{
+	struct xe_device *xe = to_xe_device(drm);
+
+	return xe->pme.enabled;
+}
+
 static void xe_display_rpm_assert_held(const struct drm_device *drm)
 {
 	/* FIXME */
@@ -69,6 +76,7 @@ const struct intel_display_rpm_interface xe_display_rpm_interface = {
 	.put_raw = xe_display_rpm_put,
 	.put_unchecked = xe_display_rpm_put_unchecked,
 	.suspended = xe_display_rpm_suspended,
+	.pme_enabled = xe_display_rpm_pme_enabled,
 	.assert_held = xe_display_rpm_assert_held,
 	.assert_block = xe_display_rpm_assert_block,
 	.assert_unblock = xe_display_rpm_assert_unblock
-- 
2.43.0


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

* [PATCH v5 06/10] drm/i915/hotplug: add helpers to track HPDs can generate PME
  2026-09-11  8:04 [PATCH v5 00/10] pm_pme support on display hotplug Vinod Govindapillai
                   ` (4 preceding siblings ...)
  2026-09-11  8:04 ` [PATCH v5 05/10] drm/i915/xe: plug the pme_enabed implementation for xe Vinod Govindapillai
@ 2026-09-11  8:04 ` Vinod Govindapillai
  2026-09-11 13:00   ` Jani Nikula
  2026-09-11  8:04 ` [PATCH v5 07/10] drm/i915: plug the pm runtime handlers with PME HPD handling Vinod Govindapillai
                   ` (6 subsequent siblings)
  12 siblings, 1 reply; 20+ messages in thread
From: Vinod Govindapillai @ 2026-09-11  8:04 UTC (permalink / raw)
  To: intel-xe, intel-gfx; +Cc: vinod.govindapillai, imre.deak, jouni.hogander

As NVL+ devices can generate PME from HPDs, introduce a flag to
keep track of such a capability and helper functions to access
this flag. The plan is, this flag will be set to true from pm runtime
suspend if PME is enabled and this flag will cleared on early runtime
resume unconditionally. This is a place holder for the flag and later
on this flag will be used for conditional IRQ resets and to decide
whether to do HPD polling.

Bspec: 52979, 52980, 68857, 68867, 68970
Assisted-by: GitHub_Copilot:claude-opus-5
Signed-off-by: Vinod Govindapillai <vinod.govindapillai@intel.com>
---
 drivers/gpu/drm/i915/display/intel_display_core.h |  2 ++
 drivers/gpu/drm/i915/display/intel_hotplug.c      | 10 ++++++++++
 drivers/gpu/drm/i915/display/intel_hotplug.h      |  3 +++
 3 files changed, 15 insertions(+)

diff --git a/drivers/gpu/drm/i915/display/intel_display_core.h b/drivers/gpu/drm/i915/display/intel_display_core.h
index c80b4a2f74f9..b3a396800798 100644
--- a/drivers/gpu/drm/i915/display/intel_display_core.h
+++ b/drivers/gpu/drm/i915/display/intel_display_core.h
@@ -220,6 +220,8 @@ struct intel_hotplug {
 	 * cue to ignore the long HPDs and can be set / unset using debugfs.
 	 */
 	bool ignore_long_hpd;
+
+	bool can_generate_pme;
 };
 
 struct intel_vbt_data {
diff --git a/drivers/gpu/drm/i915/display/intel_hotplug.c b/drivers/gpu/drm/i915/display/intel_hotplug.c
index 970aa95ee344..b24c9f360e24 100644
--- a/drivers/gpu/drm/i915/display/intel_hotplug.c
+++ b/drivers/gpu/drm/i915/display/intel_hotplug.c
@@ -846,6 +846,16 @@ static void i915_hpd_poll_init_work(struct work_struct *work)
 	}
 }
 
+void intel_hpd_set_pme_capable(struct intel_display *display, bool can_generate_pme)
+{
+	display->hotplug.can_generate_pme = can_generate_pme;
+}
+
+bool intel_hpd_can_generate_pme(struct intel_display *display)
+{
+	return display->hotplug.can_generate_pme;
+}
+
 /**
  * intel_hpd_poll_enable - enable polling for connectors with hpd
  * @display: display device instance
diff --git a/drivers/gpu/drm/i915/display/intel_hotplug.h b/drivers/gpu/drm/i915/display/intel_hotplug.h
index edc41c9d3d65..c57e30f8366b 100644
--- a/drivers/gpu/drm/i915/display/intel_hotplug.h
+++ b/drivers/gpu/drm/i915/display/intel_hotplug.h
@@ -35,4 +35,7 @@ void intel_hpd_enable_detection_work(struct intel_display *display);
 void intel_hpd_disable_detection_work(struct intel_display *display);
 bool intel_hpd_schedule_detection(struct intel_display *display);
 
+void intel_hpd_set_pme_capable(struct intel_display *display, bool can_generate_pme);
+bool intel_hpd_can_generate_pme(struct intel_display *display);
+
 #endif /* __INTEL_HOTPLUG_H__ */
-- 
2.43.0


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

* [PATCH v5 07/10] drm/i915: plug the pm runtime handlers with PME HPD handling
  2026-09-11  8:04 [PATCH v5 00/10] pm_pme support on display hotplug Vinod Govindapillai
                   ` (5 preceding siblings ...)
  2026-09-11  8:04 ` [PATCH v5 06/10] drm/i915/hotplug: add helpers to track HPDs can generate PME Vinod Govindapillai
@ 2026-09-11  8:04 ` Vinod Govindapillai
  2026-09-11  8:04 ` [PATCH v5 08/10] drm/xe/pm: clear PME HPD flag on runtime suspend error handler Vinod Govindapillai
                   ` (5 subsequent siblings)
  12 siblings, 0 replies; 20+ messages in thread
From: Vinod Govindapillai @ 2026-09-11  8:04 UTC (permalink / raw)
  To: intel-xe, intel-gfx; +Cc: vinod.govindapillai, imre.deak, jouni.hogander

Runtime PM suspend routine should set the HPD can generate PME flag
if PME is enabled. This will avoid resetting the HPD IRQs during
IRQ reset on suspend and also avoid starting HPD polling. Then
during the early runtime PM resume call, the HPD can generate PME must
be cleared unconditionally. Plug the routines to set/clear the flags
based on pme capability to intel_display_driver_pm_runtime_suspend()
and intel_display_driver_pm_runtime_resume_early().

Assisted-by: GitHub_Copilot:claude-opus-5
Signed-off-by: Vinod Govindapillai <vinod.govindapillai@intel.com>
---
 .../gpu/drm/i915/display/intel_display_driver.c  | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/drivers/gpu/drm/i915/display/intel_display_driver.c b/drivers/gpu/drm/i915/display/intel_display_driver.c
index 70d112fd4287..263eb3e08ea1 100644
--- a/drivers/gpu/drm/i915/display/intel_display_driver.c
+++ b/drivers/gpu/drm/i915/display/intel_display_driver.c
@@ -34,6 +34,7 @@
 #include "intel_display_driver.h"
 #include "intel_display_irq.h"
 #include "intel_display_power.h"
+#include "intel_display_rpm.h"
 #include "intel_display_types.h"
 #include "intel_display_utils.h"
 #include "intel_display_wa.h"
@@ -898,9 +899,17 @@ void intel_display_driver_runtime_pm_disable(struct intel_display *display)
 	intel_display_power_disable(display);
 }
 
+static void intel_display_driver_pm_runtime_set_pme(struct intel_display *display)
+{
+	bool pme_enabled = intel_display_rpm_pme_enabled(display);
+
+	intel_hpd_set_pme_capable(display, pme_enabled);
+}
+
 /* before irq suspend */
 void intel_display_driver_pm_runtime_suspend(struct intel_display *display)
 {
+	intel_display_driver_pm_runtime_set_pme(display);
 }
 
 /* after irq suspend */
@@ -935,9 +944,16 @@ void intel_display_driver_pm_runtime_suspend_late(struct intel_display *display)
 		intel_hpd_poll_enable(display);
 }
 
+static void intel_display_driver_pm_runtime_clear_pme(struct intel_display *display)
+{
+	intel_hpd_set_pme_capable(display, false);
+}
+
 /* before irq resume */
 void intel_display_driver_pm_runtime_resume_early(struct intel_display *display)
 {
+	intel_display_driver_pm_runtime_clear_pme(display);
+
 	intel_opregion_notify_adapter(display, PCI_D0);
 
 	intel_display_power_runtime_resume(display);
-- 
2.43.0


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

* [PATCH v5 08/10] drm/xe/pm: clear PME HPD flag on runtime suspend error handler
  2026-09-11  8:04 [PATCH v5 00/10] pm_pme support on display hotplug Vinod Govindapillai
                   ` (6 preceding siblings ...)
  2026-09-11  8:04 ` [PATCH v5 07/10] drm/i915: plug the pm runtime handlers with PME HPD handling Vinod Govindapillai
@ 2026-09-11  8:04 ` Vinod Govindapillai
  2026-09-11  8:20   ` sashiko-bot
  2026-09-11  8:04 ` [PATCH v5 09/10] drm/i915/irq: conditional HPD IRQ resets based on PME capability Vinod Govindapillai
                   ` (4 subsequent siblings)
  12 siblings, 1 reply; 20+ messages in thread
From: Vinod Govindapillai @ 2026-09-11  8:04 UTC (permalink / raw)
  To: intel-xe, intel-gfx; +Cc: vinod.govindapillai, imre.deak, jouni.hogander

The HPD can generate PME flag in the intel_hotplug is set based
one PME status during early pm_runtime_suspend routine before
any IRQ reset calls and cleared during early pm_runtime_resume()
before any IRQ reset/resume calls. But in case of any error
scenario during xe_pm_runtime_suspend(), we end up in a situation
where this flag is never cleared in the "out_resume" path.

So change to global scope for intel_display_driver_pm_runtime_clear_pme()
and get it called from the error handler path as well. To have
this in cleanly, get it wrapped with corresponding xe_display wrapper.
The alternative could be to call the clear the flag from both
runtime_resume_early() and the late runtime_resume(). But the
former approach seems clean.

Assisted-by: GitHub_Copilot:claude-opus-5
Signed-off-by: Vinod Govindapillai <vinod.govindapillai@intel.com>
---
 drivers/gpu/drm/i915/display/intel_display_driver.c | 2 +-
 drivers/gpu/drm/i915/display/intel_display_driver.h | 1 +
 drivers/gpu/drm/xe/display/xe_display.c             | 9 +++++++++
 drivers/gpu/drm/xe/display/xe_display.h             | 2 ++
 drivers/gpu/drm/xe/xe_pm.c                          | 7 +++++++
 5 files changed, 20 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/display/intel_display_driver.c b/drivers/gpu/drm/i915/display/intel_display_driver.c
index 263eb3e08ea1..99aaceb39048 100644
--- a/drivers/gpu/drm/i915/display/intel_display_driver.c
+++ b/drivers/gpu/drm/i915/display/intel_display_driver.c
@@ -944,7 +944,7 @@ void intel_display_driver_pm_runtime_suspend_late(struct intel_display *display)
 		intel_hpd_poll_enable(display);
 }
 
-static void intel_display_driver_pm_runtime_clear_pme(struct intel_display *display)
+void intel_display_driver_pm_runtime_clear_pme(struct intel_display *display)
 {
 	intel_hpd_set_pme_capable(display, false);
 }
diff --git a/drivers/gpu/drm/i915/display/intel_display_driver.h b/drivers/gpu/drm/i915/display/intel_display_driver.h
index 1ae2ad7e95f6..51f82b6fb2f5 100644
--- a/drivers/gpu/drm/i915/display/intel_display_driver.h
+++ b/drivers/gpu/drm/i915/display/intel_display_driver.h
@@ -49,6 +49,7 @@ void intel_display_driver_runtime_pm_disable(struct intel_display *display);
 void intel_display_driver_pm_runtime_suspend(struct intel_display *display);
 void intel_display_driver_pm_runtime_suspend_late(struct intel_display *display);
 void intel_display_driver_pm_runtime_resume_early(struct intel_display *display);
+void intel_display_driver_pm_runtime_clear_pme(struct intel_display *display);
 void intel_display_driver_pm_runtime_resume(struct intel_display *display);
 
 #endif /* __INTEL_DISPLAY_DRIVER_H__ */
diff --git a/drivers/gpu/drm/xe/display/xe_display.c b/drivers/gpu/drm/xe/display/xe_display.c
index 7b25c0814674..79166aeeed85 100644
--- a/drivers/gpu/drm/xe/display/xe_display.c
+++ b/drivers/gpu/drm/xe/display/xe_display.c
@@ -409,6 +409,15 @@ void xe_display_pm_runtime_resume(struct xe_device *xe)
 	intel_display_driver_pm_runtime_resume(display);
 }
 
+void xe_display_clear_pme_hpd(struct xe_device *xe)
+{
+	struct intel_display *display = xe->display;
+
+	if (!xe->info.probe_display)
+		return;
+
+	intel_display_driver_pm_runtime_clear_pme(display);
+}
 
 static void display_device_remove(struct drm_device *dev, void *arg)
 {
diff --git a/drivers/gpu/drm/xe/display/xe_display.h b/drivers/gpu/drm/xe/display/xe_display.h
index 0babb50bfc77..92bb5ee76e06 100644
--- a/drivers/gpu/drm/xe/display/xe_display.h
+++ b/drivers/gpu/drm/xe/display/xe_display.h
@@ -45,6 +45,7 @@ void xe_display_pm_runtime_suspend(struct xe_device *xe);
 void xe_display_pm_runtime_suspend_late(struct xe_device *xe);
 void xe_display_pm_runtime_resume_early(struct xe_device *xe);
 void xe_display_pm_runtime_resume(struct xe_device *xe);
+void xe_display_clear_pme_hpd(struct xe_device *xe);
 
 #define XE_DISPLAY_DRIVER_FEATURES	(DRIVER_MODESET | DRIVER_ATOMIC)
 #define XE_DISPLAY_DRIVER_OPS						\
@@ -83,6 +84,7 @@ static inline void xe_display_pm_runtime_suspend(struct xe_device *xe) {}
 static inline void xe_display_pm_runtime_suspend_late(struct xe_device *xe) {}
 static inline void xe_display_pm_runtime_resume_early(struct xe_device *xe) {}
 static inline void xe_display_pm_runtime_resume(struct xe_device *xe) {}
+static inline void xe_display_clear_pme_hpd(struct xe_device *xe) {}
 
 #endif /* CONFIG_DRM_XE_DISPLAY */
 #endif /* _XE_DISPLAY_H_ */
diff --git a/drivers/gpu/drm/xe/xe_pm.c b/drivers/gpu/drm/xe/xe_pm.c
index c79f55b66a41..5e7263316683 100644
--- a/drivers/gpu/drm/xe/xe_pm.c
+++ b/drivers/gpu/drm/xe/xe_pm.c
@@ -663,6 +663,13 @@ int xe_pm_runtime_suspend(struct xe_device *xe)
 	return 0;
 
 out_resume:
+	/*
+	 * We need to explicitly clear the PME HPD flag in this error handler.
+	 * Normally this is set during early runtime suspend and cleared during
+	 * early runtime resume call.
+	 */
+	xe_display_clear_pme_hpd(xe);
+
 	xe_display_pm_runtime_resume(xe);
 	xe_pxp_pm_resume(xe->pxp);
 out:
-- 
2.43.0


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

* [PATCH v5 09/10] drm/i915/irq: conditional HPD IRQ resets based on PME capability
  2026-09-11  8:04 [PATCH v5 00/10] pm_pme support on display hotplug Vinod Govindapillai
                   ` (7 preceding siblings ...)
  2026-09-11  8:04 ` [PATCH v5 08/10] drm/xe/pm: clear PME HPD flag on runtime suspend error handler Vinod Govindapillai
@ 2026-09-11  8:04 ` Vinod Govindapillai
  2026-09-11  8:27   ` sashiko-bot
  2026-09-11  8:04 ` [PATCH v5 10/10] drm/i915/hotplug: avoid HPD polling if the device is PME capable Vinod Govindapillai
                   ` (3 subsequent siblings)
  12 siblings, 1 reply; 20+ messages in thread
From: Vinod Govindapillai @ 2026-09-11  8:04 UTC (permalink / raw)
  To: intel-xe, intel-gfx; +Cc: vinod.govindapillai, imre.deak, jouni.hogander

If a device supports generating PME from HPDs, resetting HPD IRQs
will be counter productive as HPDs itself will be lost. During
suspend routines, all the IRQs are reset. So if the device is
capable of generating PME rom HPDs, keep the HPD related IRQs from
reset based on the PME capability of the device on a target power
state. PME capability will be assessed and updated separately.

v2: change keep_hpd to reset_hpd

Bspec: 52979, 52980, 68857, 68867, 68970
Assisted-by: GitHub_Copilot:claude-opus-5
Signed-off-by: Vinod Govindapillai <vinod.govindapillai@intel.com>
---
 .../gpu/drm/i915/display/intel_display_irq.c  | 19 ++++++++++++-------
 1 file changed, 12 insertions(+), 7 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_display_irq.c b/drivers/gpu/drm/i915/display/intel_display_irq.c
index a59b75830bd1..1b53c43a7006 100644
--- a/drivers/gpu/drm/i915/display/intel_display_irq.c
+++ b/drivers/gpu/drm/i915/display/intel_display_irq.c
@@ -22,6 +22,7 @@
 #include "intel_fdi_regs.h"
 #include "intel_fifo_underrun.h"
 #include "intel_gmbus.h"
+#include "intel_hotplug.h"
 #include "intel_hotplug_irq.h"
 #include "intel_lpe_audio.h"
 #include "intel_parent.h"
@@ -2217,8 +2218,10 @@ static void gen11_display_irq_reset(struct intel_display *display)
 	enum pipe pipe;
 	u32 trans_mask = BIT(TRANSCODER_A) | BIT(TRANSCODER_B) |
 		BIT(TRANSCODER_C) | BIT(TRANSCODER_D);
+	bool reset_hpd = !intel_hpd_can_generate_pme(display);
 
-	intel_de_write(display, GEN11_DISPLAY_INT_CTL, 0);
+	if (reset_hpd)
+		intel_de_write(display, GEN11_DISPLAY_INT_CTL, 0);
 
 	if (DISPLAY_VER(display) >= 12) {
 		enum transcoder trans;
@@ -2250,13 +2253,15 @@ static void gen11_display_irq_reset(struct intel_display *display)
 	irq_reset(display, GEN8_DE_PORT_IRQ_REGS);
 	irq_reset(display, GEN8_DE_MISC_IRQ_REGS);
 
-	if (DISPLAY_VER(display) >= 14)
-		irq_reset(display, PICAINTERRUPT_IRQ_REGS);
-	else
-		irq_reset(display, GEN11_DE_HPD_IRQ_REGS);
+	if (reset_hpd) {
+		if (DISPLAY_VER(display) >= 14)
+			irq_reset(display, PICAINTERRUPT_IRQ_REGS);
+		else
+			irq_reset(display, GEN11_DE_HPD_IRQ_REGS);
 
-	if (INTEL_PCH_TYPE(display) >= PCH_ICP)
-		irq_reset(display, SDE_IRQ_REGS);
+		if (INTEL_PCH_TYPE(display) >= PCH_ICP)
+			irq_reset(display, SDE_IRQ_REGS);
+	}
 }
 
 void gen8_irq_power_well_post_enable(struct intel_display *display,
-- 
2.43.0


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

* [PATCH v5 10/10] drm/i915/hotplug: avoid HPD polling if the device is PME capable
  2026-09-11  8:04 [PATCH v5 00/10] pm_pme support on display hotplug Vinod Govindapillai
                   ` (8 preceding siblings ...)
  2026-09-11  8:04 ` [PATCH v5 09/10] drm/i915/irq: conditional HPD IRQ resets based on PME capability Vinod Govindapillai
@ 2026-09-11  8:04 ` Vinod Govindapillai
  2026-09-11  8:34   ` sashiko-bot
  2026-09-11  8:17 ` ✓ CI.KUnit: success for pm_pme support on display hotplug (rev5) Patchwork
                   ` (2 subsequent siblings)
  12 siblings, 1 reply; 20+ messages in thread
From: Vinod Govindapillai @ 2026-09-11  8:04 UTC (permalink / raw)
  To: intel-xe, intel-gfx; +Cc: vinod.govindapillai, imre.deak, jouni.hogander

In supported devices, HPDs can generate PME and which in turn
can invoke runtime resume calls for xe. No need to keep the
HPD polling in such PME capable devices.

Bspec: 52979, 52980, 68857, 68867, 68970
Assisted-by: GitHub_Copilot:claude-opus-5
Signed-off-by: Vinod Govindapillai <vinod.govindapillai@intel.com>
---
 drivers/gpu/drm/i915/display/intel_hotplug.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/gpu/drm/i915/display/intel_hotplug.c b/drivers/gpu/drm/i915/display/intel_hotplug.c
index b24c9f360e24..8b7b9f47f049 100644
--- a/drivers/gpu/drm/i915/display/intel_hotplug.c
+++ b/drivers/gpu/drm/i915/display/intel_hotplug.c
@@ -877,6 +877,11 @@ void intel_hpd_poll_enable(struct intel_display *display)
 	if (!HAS_DISPLAY(display) || !intel_display_device_enabled(display))
 		return;
 
+	if (intel_hpd_can_generate_pme(display)) {
+		drm_dbg_kms(display->drm, "PME wake capable device, skipping HPD polling.\n");
+		return;
+	}
+
 	WRITE_ONCE(display->hotplug.poll_enabled, true);
 
 	/*
-- 
2.43.0


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

* ✓ CI.KUnit: success for pm_pme support on display hotplug (rev5)
  2026-09-11  8:04 [PATCH v5 00/10] pm_pme support on display hotplug Vinod Govindapillai
                   ` (9 preceding siblings ...)
  2026-09-11  8:04 ` [PATCH v5 10/10] drm/i915/hotplug: avoid HPD polling if the device is PME capable Vinod Govindapillai
@ 2026-09-11  8:17 ` Patchwork
  2026-09-11  9:06 ` ✓ Xe.CI.BAT: " Patchwork
  2026-09-11 15:39 ` ✓ Xe.CI.FULL: " Patchwork
  12 siblings, 0 replies; 20+ messages in thread
From: Patchwork @ 2026-09-11  8:17 UTC (permalink / raw)
  To: Vinod Govindapillai; +Cc: intel-xe

== Series Details ==

Series: pm_pme support on display hotplug (rev5)
URL   : https://patchwork.freedesktop.org/series/172305/
State : success

== Summary ==

+ trap cleanup EXIT
+ kunitconfigs=('/kernel/drivers/gpu/tests/.kunitconfig' '/kernel/drivers/gpu/drm/xe/.kunitconfig' '/kernel/drivers/gpu/drm/tests/.kunitconfig' '/kernel/drivers/gpu/drm/ttm/tests/.kunitconfig' '/kernel/drivers/dma-buf/.kunitconfig')
+ for kcfg in "${kunitconfigs[@]}"
+ [[ ! -f /kernel/drivers/gpu/tests/.kunitconfig ]]
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/tests/.kunitconfig
[08:15:49] Configuring KUnit Kernel ...
Generating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[08:15:53] 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=45
[08:16:15] Starting KUnit Kernel (1/1)...
[08:16:15] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[08:16:15] ============= refcount_interrupt (4 subtests) ==============
[08:16:15] [PASSED] test_single_irq_change
[08:16:15] [PASSED] test_nested_irq_change
[08:16:15] [PASSED] test_multiple_irq_change
[08:16:15] [PASSED] test_irq_save
[08:16:15] =============== [PASSED] refcount_interrupt ================
[08:16:15] ================= gpu_buddy (14 subtests) ==================
[08:16:15] [PASSED] gpu_test_buddy_alloc_limit
[08:16:15] [PASSED] gpu_test_buddy_alloc_optimistic
[08:16:15] [PASSED] gpu_test_buddy_alloc_pessimistic
[08:16:15] [PASSED] gpu_test_buddy_alloc_pathological
[08:16:15] [PASSED] gpu_test_buddy_alloc_contiguous
[08:16:15] [PASSED] gpu_test_buddy_alloc_clear
[08:16:15] [PASSED] gpu_test_buddy_alloc_range
[08:16:16] [PASSED] gpu_test_buddy_alloc_range_bias
[08:16:17] [PASSED] gpu_test_buddy_fragmentation_performance
[08:16:17] [PASSED] gpu_test_buddy_dirty_tracker_performance
[08:16:17] [PASSED] gpu_test_buddy_alloc_exceeds_max_order
[08:16:17] [PASSED] gpu_test_buddy_offset_aligned_allocation
[08:16:17] [PASSED] gpu_test_buddy_subtree_offset_alignment_stress
[08:16:17] [PASSED] gpu_test_buddy_addr_to_block
[08:16:17] ==================== [PASSED] gpu_buddy ====================
[08:16:17] ============================================================
[08:16:17] Testing complete. Ran 18 tests: passed: 18
[08:16:17] Elapsed time: 28.517s total, 4.455s configuring, 21.942s building, 2.080s running

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

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

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

+ for kcfg in "${kunitconfigs[@]}"
+ [[ ! -f /kernel/drivers/dma-buf/.kunitconfig ]]
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/dma-buf/.kunitconfig
[08:17:40] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[08:17:41] 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=45
[08:17:50] Starting KUnit Kernel (1/1)...
[08:17:50] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[08:17:50] ============= refcount_interrupt (4 subtests) ==============
[08:17:50] [PASSED] test_single_irq_change
[08:17:50] [PASSED] test_nested_irq_change
[08:17:50] [PASSED] test_multiple_irq_change
[08:17:50] [PASSED] test_irq_save
[08:17:50] =============== [PASSED] refcount_interrupt ================
[08:17:50] =============== dma-buf-fence (12 subtests) ================
[08:17:50] [PASSED] test_sanitycheck
[08:17:50] [PASSED] test_signaling
[08:17:50] [PASSED] test_add_callback
[08:17:50] [PASSED] test_late_add_callback
[08:17:50] [PASSED] test_rm_callback
[08:17:50] [PASSED] test_late_rm_callback
[08:17:50] [PASSED] test_status
[08:17:50] [PASSED] test_error
[08:17:50] [PASSED] test_wait
[08:17:50] [PASSED] test_wait_timeout
[08:17:50] [PASSED] test_stub
[08:17:50] [SKIPPED] test_race_signal_callback (requires at least 2 CPUs)
[08:17:50] ================== [PASSED] dma-buf-fence ==================
[08:17:50] ============ dma-buf-fence-chain (11 subtests) =============
[08:17:50] [PASSED] test_sanitycheck
[08:17:50] [PASSED] test_find_seqno
[08:17:50] [PASSED] test_find_signaled
[08:17:50] [PASSED] test_find_out_of_order
[08:17:55] [PASSED] test_find_gap
[08:17:55] [PASSED] test_find_race
[08:17:55] [PASSED] test_signal_forward
[08:17:55] [PASSED] test_signal_backward
[08:17:55] [PASSED] test_wait_forward
[08:17:55] [PASSED] test_wait_backward
[08:17:55] [PASSED] test_wait_random
[08:17:55] =============== [PASSED] dma-buf-fence-chain ===============
[08:17:55] ============ dma-buf-fence-unwrap (10 subtests) ============
[08:17:55] [PASSED] test_sanitycheck
[08:17:55] [PASSED] test_unwrap_array
[08:17:55] [PASSED] test_unwrap_chain
[08:17:55] [PASSED] test_unwrap_chain_array
[08:17:55] [PASSED] test_unwrap_merge
[08:17:55] [PASSED] test_unwrap_merge_duplicate
[08:17:55] [PASSED] test_unwrap_merge_seqno
[08:17:55] [PASSED] test_unwrap_merge_order
[08:17:55] [PASSED] test_unwrap_merge_complex
[08:17:55] [PASSED] test_unwrap_merge_complex_seqno
[08:17:55] ============== [PASSED] dma-buf-fence-unwrap ===============
[08:17:55] ================ dma-buf-resv (5 subtests) =================
[08:17:55] [PASSED] test_sanitycheck
[08:17:55] ===================== test_signaling  ======================
[08:17:55] [PASSED] kernel
[08:17:55] [PASSED] write
[08:17:55] [PASSED] read
[08:17:55] [PASSED] bookkeep
[08:17:55] ================= [PASSED] test_signaling ==================
[08:17:55] ====================== test_for_each  ======================
[08:17:55] [PASSED] kernel
[08:17:55] [PASSED] write
[08:17:55] [PASSED] read
[08:17:55] [PASSED] bookkeep
[08:17:55] ================== [PASSED] test_for_each ==================
[08:17:55] ================= test_for_each_unlocked  ==================
[08:17:55] [PASSED] kernel
[08:17:55] [PASSED] write
[08:17:55] [PASSED] read
[08:17:55] [PASSED] bookkeep
[08:17:55] ============= [PASSED] test_for_each_unlocked ==============
[08:17:55] ===================== test_get_fences  =====================
[08:17:55] [PASSED] kernel
[08:17:55] [PASSED] write
[08:17:55] [PASSED] read
[08:17:55] [PASSED] bookkeep
[08:17:55] ================= [PASSED] test_get_fences =================
[08:17:55] ================== [PASSED] dma-buf-resv ===================
[08:17:55] ============================================================
[08:17:55] Testing complete. Ran 54 tests: passed: 53, skipped: 1
[08:17:55] Elapsed time: 15.670s total, 1.725s configuring, 8.569s building, 5.363s running

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



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

* Re: [PATCH v5 08/10] drm/xe/pm: clear PME HPD flag on runtime suspend error handler
  2026-09-11  8:04 ` [PATCH v5 08/10] drm/xe/pm: clear PME HPD flag on runtime suspend error handler Vinod Govindapillai
@ 2026-09-11  8:20   ` sashiko-bot
  0 siblings, 0 replies; 20+ messages in thread
From: sashiko-bot @ 2026-09-11  8:20 UTC (permalink / raw)
  To: Vinod Govindapillai; +Cc: intel-xe, intel-gfx

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:

Pre-existing issues:
- [High] Missing rollback of suspended GTs and evicted BOs in PM suspend error paths.
--

commit 05e729a00eec5c74e7d63026c111b70a9b537da1
Author: Vinod Govindapillai <vinod.govindapillai@intel.com>

drm/xe/pm: clear PME HPD flag on runtime suspend error handler

This commit explicitly clears the PME HPD flag in the error path of
xe_pm_runtime_suspend(). The flag is normally set during early runtime
suspend and cleared during early runtime resume, but was previously left
uncleared if an error occurred in the suspend sequence.

[ ... ]

> diff --git a/drivers/gpu/drm/xe/xe_pm.c b/drivers/gpu/drm/xe/xe_pm.c
> index c79f55b66a419..5e7263316683a 100644
> --- a/drivers/gpu/drm/xe/xe_pm.c
> +++ b/drivers/gpu/drm/xe/xe_pm.c
> @@ -663,6 +663,13 @@ int xe_pm_runtime_suspend(struct xe_device *xe)
>  	return 0;
>  
>  out_resume:
> +	/*
> +	 * We need to explicitly clear the PME HPD flag in this error handler.
> +	 * Normally this is set during early runtime suspend and cleared during
> +	 * early runtime resume call.
> +	 */
> +	xe_display_clear_pme_hpd(xe);
> +
>  	xe_display_pm_runtime_resume(xe);
>  	xe_pxp_pm_resume(xe->pxp);

[Severity: High]
This isn't a bug introduced by this patch, but on this error path, do we
leave previously suspended GTs in a suspended state?

If xe_gt_suspend() or xe_gt_runtime_suspend() fails during the for_each_gt()
iteration in xe_pm_runtime_suspend(), we jump to out_resume. It appears we
do not resume the GTs that were already successfully suspended in earlier
loop iterations, nor do we restore the BOs that were evicted before the loop:

    for_each_gt(gt, xe, id) {
        err = xe->d3cold.allowed ? xe_gt_suspend(gt) : xe_gt_runtime_suspend(gt);
        if (err)
            goto out_resume;
    }

A similar pattern seems to exist in the system suspend path in xe_pm_suspend():

    for_each_gt(gt, xe, id) {
        err = xe_gt_suspend(gt);
        if (err)
            goto err_display;
    }

Can this leave the device in a corrupted state where some components are
suspended while the PM core considers the device active?

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260911080448.778316-1-vinod.govindapillai@intel.com?part=8

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

* Re: [PATCH v5 03/10] drm/xe/pm: avoid reclaim when arming PME wakeup
  2026-09-11  8:04 ` [PATCH v5 03/10] drm/xe/pm: avoid reclaim when arming PME wakeup Vinod Govindapillai
@ 2026-09-11  8:22   ` sashiko-bot
  0 siblings, 0 replies; 20+ messages in thread
From: sashiko-bot @ 2026-09-11  8:22 UTC (permalink / raw)
  To: Vinod Govindapillai; +Cc: intel-xe, intel-gfx

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] Misuse of Memory Allocator API: using memalloc_noreclaim_save() improperly grants emergency memory reserves to ACPI methods.
--

commit 7547491908f27fd6d8049619891faf97cc3918e3
Author: Vinod Govindapillai <vinod.govindapillai@intel.com>

drm/xe/pm: avoid reclaim when arming PME wakeup

This commit wraps calls to pci_enable_wake() with memalloc_noreclaim_save()
and memalloc_noreclaim_restore() in xe_pci_runtime_suspend(). The goal is to
avoid deadlocks with the xe_shrinker by preventing allocations from entering
reclaim while holding the runtime PM lock.

> diff --git a/drivers/gpu/drm/xe/xe_pci.c b/drivers/gpu/drm/xe/xe_pci.c
> index 9b486e8ad2b5c..4369f0d9efb1e 100644
> --- a/drivers/gpu/drm/xe/xe_pci.c
> +++ b/drivers/gpu/drm/xe/xe_pci.c
> @@ -1384,10 +1384,13 @@ static int xe_pci_runtime_suspend(struct device *dev)
>  {
>  	struct pci_dev *pdev = to_pci_dev(dev);
>  	struct xe_device *xe = pdev_to_xe_device(pdev);
> +	unsigned int flags;
>  	int err;
>  
> +	flags = memalloc_noreclaim_save();
>  	xe->pme.enabled = xe->pme.capable && !xe->d3cold.allowed &&
>  			  pci_enable_wake(pdev, PCI_D3hot, true) == 0;
> +	memalloc_noreclaim_restore(flags);

[Severity: Medium]
Could this use of memalloc_noreclaim_save() improperly grant emergency memory
reserves to ACPI methods?

Using memalloc_noreclaim_save() sets the PF_MEMALLOC flag for the current
task, which grants allocations access to the ALLOC_NO_WATERMARKS emergency
memory reserves. These reserves are strictly intended for tasks that are
actively freeing memory to guarantee forward progress.

Since ACPI methods inside pci_enable_wake() can perform arbitrary evaluation
and allocation, granting them emergency reserves risks depleting these
reserves.

To avoid the deadlock with xe_shrinker without abusing PF_MEMALLOC, would it
be safer to use memalloc_nofs_save() instead?

Stripping __GFP_FS causes can_backup to be false in xe_shrinker_scan(), which
makes the shrinker exit early without attempting to acquire the runtime PM
lock.

>  
>  	/*
>  	 * We hold an additional reference to the runtime PM to keep PF in D0
> @@ -1401,7 +1404,9 @@ static int xe_pci_runtime_suspend(struct device *dev)
>  	err = xe_pm_runtime_suspend(xe);
>  	if (err) {
>  		if (xe->pme.enabled) {
> +			flags = memalloc_noreclaim_save();
>  			pci_enable_wake(pdev, PCI_D3hot, false);
> +			memalloc_noreclaim_restore(flags);

[Severity: Medium]
Does this error path have the same issue with granting emergency memory
reserves to pci_enable_wake() via memalloc_noreclaim_save() as mentioned
above?

>  			xe->pme.enabled = false;
>  		}

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260911080448.778316-1-vinod.govindapillai@intel.com?part=3

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

* Re: [PATCH v5 09/10] drm/i915/irq: conditional HPD IRQ resets based on PME capability
  2026-09-11  8:04 ` [PATCH v5 09/10] drm/i915/irq: conditional HPD IRQ resets based on PME capability Vinod Govindapillai
@ 2026-09-11  8:27   ` sashiko-bot
  0 siblings, 0 replies; 20+ messages in thread
From: sashiko-bot @ 2026-09-11  8:27 UTC (permalink / raw)
  To: Vinod Govindapillai; +Cc: intel-xe, intel-gfx

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] Unmasked GMBUS and AUX interrupts during suspend risk spurious wakeups
--

commit ecc8bb9fede209da1bb1f570c685a52b7cee1c75
Author: Vinod Govindapillai <vinod.govindapillai@intel.com>

drm/i915/irq: conditional HPD IRQ resets based on PME capability

This commit skips resetting HPD IRQs during suspend if the device supports
generating PMEs from HPDs. This prevents the loss of HPD events by tying
the reset logic conditionally to the device's PME capability.

> diff --git a/drivers/gpu/drm/i915/display/intel_display_irq.c b/drivers/gpu/drm/i915/display/intel_display_irq.c
> --- a/drivers/gpu/drm/i915/display/intel_display_irq.c
> +++ b/drivers/gpu/drm/i915/display/intel_display_irq.c

[ ... ]

> @@ -2250,13 +2253,15 @@ static void gen11_display_irq_reset(struct intel_display *display)
>  	irq_reset(display, GEN8_DE_PORT_IRQ_REGS);
>  	irq_reset(display, GEN8_DE_MISC_IRQ_REGS);
>  
> -	if (DISPLAY_VER(display) >= 14)
> -		irq_reset(display, PICAINTERRUPT_IRQ_REGS);
> -	else
> -		irq_reset(display, GEN11_DE_HPD_IRQ_REGS);
> +	if (reset_hpd) {
> +		if (DISPLAY_VER(display) >= 14)
> +			irq_reset(display, PICAINTERRUPT_IRQ_REGS);
> +		else
> +			irq_reset(display, GEN11_DE_HPD_IRQ_REGS);
>  
> -	if (INTEL_PCH_TYPE(display) >= PCH_ICP)
> -		irq_reset(display, SDE_IRQ_REGS);
> +		if (INTEL_PCH_TYPE(display) >= PCH_ICP)
> +			irq_reset(display, SDE_IRQ_REGS);
> +	}
>  }

[Severity: Medium]
Does skipping the entire register reset here leave non-HPD interrupts
unmasked during suspend?

When a display device is capable of generating PME from HPD, reset_hpd
is set to false in gen11_display_irq_reset(). While this successfully
preserves HPD interrupts by skipping the reset of SDE_IRQ_REGS and
PICAINTERRUPT_IRQ_REGS, these registers also contain non-HPD interrupt
bits such as SDE_GMBUS_ICP and XELPDP_AUX_TC_MASK.

Because these bits are typically unmasked by default during postinstall
(e.g., in icp_irq_postinstall), skipping the full register reset leaves
these non-HPD interrupts active. If an I2C/GMBUS or DP AUX interrupt fires
due to noise or a delayed transaction during suspend, can this propagate
and cause spurious wakeups that prevent deep sleep states like S3 or S0ix?

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260911080448.778316-1-vinod.govindapillai@intel.com?part=9

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

* Re: [PATCH v5 10/10] drm/i915/hotplug: avoid HPD polling if the device is PME capable
  2026-09-11  8:04 ` [PATCH v5 10/10] drm/i915/hotplug: avoid HPD polling if the device is PME capable Vinod Govindapillai
@ 2026-09-11  8:34   ` sashiko-bot
  0 siblings, 0 replies; 20+ messages in thread
From: sashiko-bot @ 2026-09-11  8:34 UTC (permalink / raw)
  To: Vinod Govindapillai; +Cc: intel-gfx, intel-xe

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] The patch fails to disable HPD polling for `xe` devices in D3cold because it relies on a stateful flag that is bypassed in the `xe` D3cold suspend path.
--

commit d64c6fbf549089ab8b3ecb3a04becd1d5a8da552
Author: Vinod Govindapillai <vinod.govindapillai@intel.com>

drm/i915/hotplug: avoid HPD polling if the device is PME capable

This commit attempts to optimize power usage by disabling HPD polling on
devices capable of generating PME wake events. It introduces a check in
intel_hpd_poll_enable() to skip polling if the device supports PME.

> diff --git a/drivers/gpu/drm/i915/display/intel_hotplug.c b/drivers/gpu/drm/i915/display/intel_hotplug.c
> index b24c9f360e241..8b7b9f47f049a 100644
> --- a/drivers/gpu/drm/i915/display/intel_hotplug.c
> +++ b/drivers/gpu/drm/i915/display/intel_hotplug.c
> @@ -877,6 +877,11 @@ void intel_hpd_poll_enable(struct intel_display *display)
>  	if (!HAS_DISPLAY(display) || !intel_display_device_enabled(display))
>  		return;
>  
> +	if (intel_hpd_can_generate_pme(display)) {
> +		drm_dbg_kms(display->drm, "PME wake capable device, skipping HPD polling.\n");
> +		return;
> +	}
> +

[Severity: Medium]
Will this check actually prevent HPD polling for xe devices entering D3cold?

When an xe device enters runtime suspend, xe_display_pm_runtime_suspend()
bypasses intel_display_driver_pm_runtime_suspend() if D3cold is allowed:

drivers/gpu/drm/xe/display/xe_display.c:xe_display_pm_runtime_suspend() {
	...
	if (xe->d3cold.allowed) {
		xe_display_enable_d3cold(xe);
		return;
	}

	intel_display_driver_pm_runtime_suspend(display);
	...
}

Because this bypasses intel_display_driver_pm_runtime_suspend(), the
display->hotplug.can_generate_pme flag is never populated for the D3cold path.

When xe_display_enable_d3cold() subsequently calls intel_hpd_poll_enable(),
intel_hpd_can_generate_pme() will return false, and HPD polling will remain
enabled, which appears to defeat the optimization this patch aims to achieve.

Does this flag need to be populated in the D3cold path as well?

>  	WRITE_ONCE(display->hotplug.poll_enabled, true);

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260911080448.778316-1-vinod.govindapillai@intel.com?part=10

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

* ✓ Xe.CI.BAT: success for pm_pme support on display hotplug (rev5)
  2026-09-11  8:04 [PATCH v5 00/10] pm_pme support on display hotplug Vinod Govindapillai
                   ` (10 preceding siblings ...)
  2026-09-11  8:17 ` ✓ CI.KUnit: success for pm_pme support on display hotplug (rev5) Patchwork
@ 2026-09-11  9:06 ` Patchwork
  2026-09-11 15:39 ` ✓ Xe.CI.FULL: " Patchwork
  12 siblings, 0 replies; 20+ messages in thread
From: Patchwork @ 2026-09-11  9:06 UTC (permalink / raw)
  To: Govindapillai, Vinod; +Cc: intel-xe

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

== Series Details ==

Series: pm_pme support on display hotplug (rev5)
URL   : https://patchwork.freedesktop.org/series/172305/
State : success

== Summary ==

CI Bug Log - changes from xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913_BAT -> xe-pw-172305v5_BAT
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  

Participating hosts (15 -> 15)
------------------------------

  No changes in participating hosts

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

  Here are the changes found in xe-pw-172305v5_BAT that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@xe_waitfence@reltime:
    - bat-wcl-1:          [PASS][1] -> [FAIL][2] ([Intel XE#9115])
   [1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/bat-wcl-1/igt@xe_waitfence@reltime.html
   [2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/bat-wcl-1/igt@xe_waitfence@reltime.html

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


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

  * Linux: xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913 -> xe-pw-172305v5

  IGT_9091: 9091
  xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913: b6d5d3322d5aafa2fdfae5731c06336976099913
  xe-pw-172305v5: 172305v5

== Logs ==

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

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

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

* Re: [PATCH v5 06/10] drm/i915/hotplug: add helpers to track HPDs can generate PME
  2026-09-11  8:04 ` [PATCH v5 06/10] drm/i915/hotplug: add helpers to track HPDs can generate PME Vinod Govindapillai
@ 2026-09-11 13:00   ` Jani Nikula
  2026-09-11 15:36     ` Govindapillai, Vinod
  0 siblings, 1 reply; 20+ messages in thread
From: Jani Nikula @ 2026-09-11 13:00 UTC (permalink / raw)
  To: Vinod Govindapillai, intel-xe, intel-gfx
  Cc: vinod.govindapillai, imre.deak, jouni.hogander

On Fri, 11 Sep 2026, Vinod Govindapillai <vinod.govindapillai@intel.com> wrote:
> As NVL+ devices can generate PME from HPDs, introduce a flag to
> keep track of such a capability and helper functions to access
> this flag. The plan is, this flag will be set to true from pm runtime
> suspend if PME is enabled and this flag will cleared on early runtime
> resume unconditionally. This is a place holder for the flag and later
> on this flag will be used for conditional IRQ resets and to decide
> whether to do HPD polling.

What's the rationale for duplicating the state in a flag? Why can't you
use intel_display_rpm_pme_enabled() and have a single point of truth?
This would dodge the extra error path clearing too.

I don't understand.

BR,
Jani.

>
> Bspec: 52979, 52980, 68857, 68867, 68970
> Assisted-by: GitHub_Copilot:claude-opus-5
> Signed-off-by: Vinod Govindapillai <vinod.govindapillai@intel.com>
> ---
>  drivers/gpu/drm/i915/display/intel_display_core.h |  2 ++
>  drivers/gpu/drm/i915/display/intel_hotplug.c      | 10 ++++++++++
>  drivers/gpu/drm/i915/display/intel_hotplug.h      |  3 +++
>  3 files changed, 15 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_display_core.h b/drivers/gpu/drm/i915/display/intel_display_core.h
> index c80b4a2f74f9..b3a396800798 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_core.h
> +++ b/drivers/gpu/drm/i915/display/intel_display_core.h
> @@ -220,6 +220,8 @@ struct intel_hotplug {
>  	 * cue to ignore the long HPDs and can be set / unset using debugfs.
>  	 */
>  	bool ignore_long_hpd;
> +
> +	bool can_generate_pme;
>  };
>  
>  struct intel_vbt_data {
> diff --git a/drivers/gpu/drm/i915/display/intel_hotplug.c b/drivers/gpu/drm/i915/display/intel_hotplug.c
> index 970aa95ee344..b24c9f360e24 100644
> --- a/drivers/gpu/drm/i915/display/intel_hotplug.c
> +++ b/drivers/gpu/drm/i915/display/intel_hotplug.c
> @@ -846,6 +846,16 @@ static void i915_hpd_poll_init_work(struct work_struct *work)
>  	}
>  }
>  
> +void intel_hpd_set_pme_capable(struct intel_display *display, bool can_generate_pme)
> +{
> +	display->hotplug.can_generate_pme = can_generate_pme;
> +}
> +
> +bool intel_hpd_can_generate_pme(struct intel_display *display)
> +{
> +	return display->hotplug.can_generate_pme;
> +}
> +
>  /**
>   * intel_hpd_poll_enable - enable polling for connectors with hpd
>   * @display: display device instance
> diff --git a/drivers/gpu/drm/i915/display/intel_hotplug.h b/drivers/gpu/drm/i915/display/intel_hotplug.h
> index edc41c9d3d65..c57e30f8366b 100644
> --- a/drivers/gpu/drm/i915/display/intel_hotplug.h
> +++ b/drivers/gpu/drm/i915/display/intel_hotplug.h
> @@ -35,4 +35,7 @@ void intel_hpd_enable_detection_work(struct intel_display *display);
>  void intel_hpd_disable_detection_work(struct intel_display *display);
>  bool intel_hpd_schedule_detection(struct intel_display *display);
>  
> +void intel_hpd_set_pme_capable(struct intel_display *display, bool can_generate_pme);
> +bool intel_hpd_can_generate_pme(struct intel_display *display);
> +
>  #endif /* __INTEL_HOTPLUG_H__ */

-- 
Jani Nikula, Intel

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

* Re: [PATCH v5 06/10] drm/i915/hotplug: add helpers to track HPDs can generate PME
  2026-09-11 13:00   ` Jani Nikula
@ 2026-09-11 15:36     ` Govindapillai, Vinod
  0 siblings, 0 replies; 20+ messages in thread
From: Govindapillai, Vinod @ 2026-09-11 15:36 UTC (permalink / raw)
  To: intel-xe@lists.freedesktop.org, intel-gfx@lists.freedesktop.org,
	jani.nikula@linux.intel.com
  Cc: Deak, Imre, Hogander, Jouni

On Fri, 2026-09-11 at 16:00 +0300, Jani Nikula wrote:
> On Fri, 11 Sep 2026, Vinod Govindapillai
> <vinod.govindapillai@intel.com> wrote:
> > As NVL+ devices can generate PME from HPDs, introduce a flag to
> > keep track of such a capability and helper functions to access
> > this flag. The plan is, this flag will be set to true from pm
> > runtime
> > suspend if PME is enabled and this flag will cleared on early
> > runtime
> > resume unconditionally. This is a place holder for the flag and
> > later
> > on this flag will be used for conditional IRQ resets and to decide
> > whether to do HPD polling.
> 
> What's the rationale for duplicating the state in a flag? Why can't
> you
> use intel_display_rpm_pme_enabled() and have a single point of truth?
> This would dodge the extra error path clearing too.
> 
> I don't understand.
> 
> BR,
> Jani.
> 

Ah..! Yes.. you are right. No rationale :( I kind of overlooked that
provision and was fixated on the steps I prepared before and fitting my
whole logic into that :(

Thanks. This is pretty clean. Will update. 
Patches 6, 7,and 8 are indeed redundant and will remove those and use
the rpm_pme_enabled directly in avoiding the HPD resets and HPD polling

+       bool reset_hpd = !intel_display_rpm_pme_enabled(display);

and

+       if (intel_display_rpm_pme_enabled(display)) {
+               drm_dbg_kms(display->drm, "PME wake capable device,
skipping HPD polling.\n");
+               return;
+       }


Before send a new revision, hope there are no other comments. FYI
@Jouni.

BR
Vinod

> > 
> > Bspec: 52979, 52980, 68857, 68867, 68970
> > Assisted-by: GitHub_Copilot:claude-opus-5
> > Signed-off-by: Vinod Govindapillai <vinod.govindapillai@intel.com>


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

* ✓ Xe.CI.FULL: success for pm_pme support on display hotplug (rev5)
  2026-09-11  8:04 [PATCH v5 00/10] pm_pme support on display hotplug Vinod Govindapillai
                   ` (11 preceding siblings ...)
  2026-09-11  9:06 ` ✓ Xe.CI.BAT: " Patchwork
@ 2026-09-11 15:39 ` Patchwork
  12 siblings, 0 replies; 20+ messages in thread
From: Patchwork @ 2026-09-11 15:39 UTC (permalink / raw)
  To: Govindapillai, Vinod; +Cc: intel-xe

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

== Series Details ==

Series: pm_pme support on display hotplug (rev5)
URL   : https://patchwork.freedesktop.org/series/172305/
State : success

== Summary ==

CI Bug Log - changes from xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913_FULL -> xe-pw-172305v5_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-172305v5_FULL that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels:
    - shard-bmg:          NOTRUN -> [SKIP][1] ([Intel XE#2370])
   [1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels.html

  * igt@kms_big_fb@4-tiled-8bpp-rotate-270:
    - shard-lnl:          NOTRUN -> [SKIP][2] ([Intel XE#1407]) +1 other test skip
   [2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_big_fb@4-tiled-8bpp-rotate-270.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip:
    - shard-lnl:          NOTRUN -> [SKIP][3] ([Intel XE#3658] / [Intel XE#7360])
   [3]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip.html

  * igt@kms_big_fb@linear-32bpp-rotate-90:
    - shard-bmg:          NOTRUN -> [SKIP][4] ([Intel XE#2327]) +2 other tests skip
   [4]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@kms_big_fb@linear-32bpp-rotate-90.html

  * igt@kms_big_fb@y-tiled-32bpp-rotate-0:
    - shard-lnl:          NOTRUN -> [SKIP][5] ([Intel XE#1124]) +4 other tests skip
   [5]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@kms_big_fb@y-tiled-32bpp-rotate-0.html

  * igt@kms_big_fb@y-tiled-addfb-size-offset-overflow:
    - shard-bmg:          NOTRUN -> [SKIP][6] ([Intel XE#607] / [Intel XE#7361])
   [6]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@kms_big_fb@y-tiled-addfb-size-offset-overflow.html

  * igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180:
    - shard-bmg:          NOTRUN -> [SKIP][7] ([Intel XE#1124]) +4 other tests skip
   [7]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180.html

  * igt@kms_bw@connected-linear-tiling-2-displays-target-3840x2160p:
    - shard-lnl:          NOTRUN -> [SKIP][8] ([Intel XE#7679])
   [8]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@kms_bw@connected-linear-tiling-2-displays-target-3840x2160p.html

  * igt@kms_bw@connected-linear-tiling-3-displays-target-1920x1080p:
    - shard-bmg:          NOTRUN -> [SKIP][9] ([Intel XE#7679]) +1 other test skip
   [9]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@kms_bw@connected-linear-tiling-3-displays-target-1920x1080p.html

  * igt@kms_bw@linear-tiling-2-displays-target-2560x1440p:
    - shard-lnl:          NOTRUN -> [SKIP][10] ([Intel XE#367])
   [10]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_bw@linear-tiling-2-displays-target-2560x1440p.html

  * igt@kms_bw@linear-tiling-3-displays-target-2160x1440p:
    - shard-bmg:          NOTRUN -> [SKIP][11] ([Intel XE#367]) +1 other test skip
   [11]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-8/igt@kms_bw@linear-tiling-3-displays-target-2160x1440p.html

  * igt@kms_ccs@bad-pixel-format-yf-tiled-ccs:
    - shard-bmg:          NOTRUN -> [SKIP][12] ([Intel XE#2887]) +5 other tests skip
   [12]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@kms_ccs@bad-pixel-format-yf-tiled-ccs.html

  * igt@kms_ccs@bad-rotation-90-4-tiled-dg2-rc-ccs:
    - shard-lnl:          NOTRUN -> [SKIP][13] ([Intel XE#2887]) +9 other tests skip
   [13]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@kms_ccs@bad-rotation-90-4-tiled-dg2-rc-ccs.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-lnl-ccs@pipe-d-hdmi-a-3:
    - shard-bmg:          NOTRUN -> [SKIP][14] ([Intel XE#2652]) +8 other tests skip
   [14]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@kms_ccs@crc-primary-suspend-4-tiled-lnl-ccs@pipe-d-hdmi-a-3.html

  * igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-rc-ccs:
    - shard-bmg:          NOTRUN -> [SKIP][15] ([Intel XE#3432])
   [15]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-rc-ccs.html

  * igt@kms_chamelium_color@ctm-0-25:
    - shard-bmg:          NOTRUN -> [SKIP][16] ([Intel XE#2325] / [Intel XE#7358]) +1 other test skip
   [16]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@kms_chamelium_color@ctm-0-25.html

  * igt@kms_chamelium_color@ctm-max:
    - shard-lnl:          NOTRUN -> [SKIP][17] ([Intel XE#306] / [Intel XE#7358]) +1 other test skip
   [17]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_chamelium_color@ctm-max.html

  * igt@kms_chamelium_color_pipeline@plane-lut1d-pre-ctm3x4:
    - shard-bmg:          NOTRUN -> [SKIP][18] ([Intel XE#7358])
   [18]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@kms_chamelium_color_pipeline@plane-lut1d-pre-ctm3x4.html

  * igt@kms_chamelium_frames@hdmi-aspect-ratio:
    - shard-bmg:          NOTRUN -> [SKIP][19] ([Intel XE#2252]) +3 other tests skip
   [19]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@kms_chamelium_frames@hdmi-aspect-ratio.html

  * igt@kms_chamelium_frames@hdmi-crc-single:
    - shard-lnl:          NOTRUN -> [SKIP][20] ([Intel XE#373]) +1 other test skip
   [20]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_chamelium_frames@hdmi-crc-single.html

  * igt@kms_content_protection@dp-mst-lic-type-1:
    - shard-lnl:          NOTRUN -> [SKIP][21] ([Intel XE#307] / [Intel XE#6974])
   [21]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_content_protection@dp-mst-lic-type-1.html

  * igt@kms_content_protection@lic-type-0-hdcp14@pipe-a-dp-2:
    - shard-bmg:          NOTRUN -> [FAIL][22] ([Intel XE#1178] / [Intel XE#3304] / [Intel XE#7374]) +3 other tests fail
   [22]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@kms_content_protection@lic-type-0-hdcp14@pipe-a-dp-2.html

  * igt@kms_cursor_crc@cursor-offscreen-128x42:
    - shard-bmg:          NOTRUN -> [SKIP][23] ([Intel XE#2320]) +3 other tests skip
   [23]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@kms_cursor_crc@cursor-offscreen-128x42.html

  * igt@kms_cursor_crc@cursor-rapid-movement-512x512:
    - shard-lnl:          NOTRUN -> [SKIP][24] ([Intel XE#2321] / [Intel XE#7355])
   [24]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_cursor_crc@cursor-rapid-movement-512x512.html

  * igt@kms_cursor_crc@cursor-rapid-movement-max-size:
    - shard-lnl:          NOTRUN -> [SKIP][25] ([Intel XE#1424]) +2 other tests skip
   [25]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@kms_cursor_crc@cursor-rapid-movement-max-size.html

  * igt@kms_cursor_legacy@cursorb-vs-flipa-varying-size:
    - shard-lnl:          NOTRUN -> [SKIP][26] ([Intel XE#309] / [Intel XE#7343]) +1 other test skip
   [26]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_cursor_legacy@cursorb-vs-flipa-varying-size.html

  * igt@kms_dirtyfb@fbc-dirtyfb-ioctl:
    - shard-bmg:          NOTRUN -> [SKIP][27] ([Intel XE#4210] / [Intel XE#7467])
   [27]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-1/igt@kms_dirtyfb@fbc-dirtyfb-ioctl.html

  * igt@kms_dp_link_training@non-uhbr-mst:
    - shard-bmg:          NOTRUN -> [SKIP][28] ([Intel XE#4354] / [Intel XE#5882])
   [28]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@kms_dp_link_training@non-uhbr-mst.html

  * igt@kms_dp_link_training@non-uhbr-sst:
    - shard-lnl:          NOTRUN -> [SKIP][29] ([Intel XE#4354] / [Intel XE#7450])
   [29]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@kms_dp_link_training@non-uhbr-sst.html

  * igt@kms_dsc@dsc-with-formats-bigjoiner:
    - shard-bmg:          NOTRUN -> [SKIP][30] ([Intel XE#8265]) +1 other test skip
   [30]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@kms_dsc@dsc-with-formats-bigjoiner.html

  * igt@kms_dsc@dsc-with-output-formats-with-bpc-ultrajoiner:
    - shard-lnl:          NOTRUN -> [SKIP][31] ([Intel XE#8265])
   [31]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@kms_dsc@dsc-with-output-formats-with-bpc-ultrajoiner.html

  * igt@kms_feature_discovery@dsc:
    - shard-bmg:          NOTRUN -> [SKIP][32] ([Intel XE#8586])
   [32]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@kms_feature_discovery@dsc.html

  * igt@kms_flip@2x-flip-vs-dpms-off-vs-modeset:
    - shard-lnl:          NOTRUN -> [SKIP][33] ([Intel XE#1421]) +1 other test skip
   [33]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@kms_flip@2x-flip-vs-dpms-off-vs-modeset.html

  * igt@kms_flip@2x-flip-vs-expired-vblank-interruptible:
    - shard-bmg:          [PASS][34] -> [FAIL][35] ([Intel XE#3149] / [Intel XE#3321]) +1 other test fail
   [34]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-10/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible.html
   [35]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-2/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible.html

  * igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling:
    - shard-lnl:          NOTRUN -> [SKIP][36] ([Intel XE#7178] / [Intel XE#7349])
   [36]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling.html

  * igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling:
    - shard-lnl:          NOTRUN -> [SKIP][37] ([Intel XE#1397] / [Intel XE#1745] / [Intel XE#7385] / [Intel XE#9144])
   [37]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling.html

  * igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling@pipe-a-default-mode:
    - shard-lnl:          NOTRUN -> [SKIP][38] ([Intel XE#1397] / [Intel XE#7385] / [Intel XE#9144])
   [38]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling@pipe-a-default-mode.html

  * igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-upscaling:
    - shard-lnl:          NOTRUN -> [SKIP][39] ([Intel XE#7178] / [Intel XE#7351]) +2 other tests skip
   [39]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-upscaling.html

  * igt@kms_frontbuffer_tracking@drrs-1p-primscrn-pri-shrfb-draw-render:
    - shard-lnl:          NOTRUN -> [SKIP][40] ([Intel XE#6312] / [Intel XE#651]) +5 other tests skip
   [40]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_frontbuffer_tracking@drrs-1p-primscrn-pri-shrfb-draw-render.html

  * igt@kms_frontbuffer_tracking@drrshdr-2p-primscrn-pri-indfb-draw-blt:
    - shard-lnl:          NOTRUN -> [SKIP][41] ([Intel XE#7905]) +21 other tests skip
   [41]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@kms_frontbuffer_tracking@drrshdr-2p-primscrn-pri-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@drrshdr-argb161616f-draw-blt:
    - shard-bmg:          NOTRUN -> [SKIP][42] ([Intel XE#7061]) +2 other tests skip
   [42]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@kms_frontbuffer_tracking@drrshdr-argb161616f-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbc-1p-offscreen-pri-shrfb-draw-blt:
    - shard-bmg:          NOTRUN -> [SKIP][43] ([Intel XE#4141]) +6 other tests skip
   [43]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-8/igt@kms_frontbuffer_tracking@fbc-1p-offscreen-pri-shrfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbcdrrs-1p-offscreen-pri-indfb-draw-blt:
    - shard-lnl:          NOTRUN -> [SKIP][44] ([Intel XE#6312]) +9 other tests skip
   [44]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@kms_frontbuffer_tracking@fbcdrrs-1p-offscreen-pri-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbcdrrs-abgr161616f-draw-mmap-wc:
    - shard-lnl:          NOTRUN -> [SKIP][45] ([Intel XE#7061] / [Intel XE#7356]) +3 other tests skip
   [45]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_frontbuffer_tracking@fbcdrrs-abgr161616f-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@fbcdrrs-tiling-y:
    - shard-bmg:          NOTRUN -> [SKIP][46] ([Intel XE#2352] / [Intel XE#7399])
   [46]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@kms_frontbuffer_tracking@fbcdrrs-tiling-y.html

  * igt@kms_frontbuffer_tracking@fbcdrrshdr-2p-primscrn-cur-indfb-draw-blt:
    - shard-bmg:          NOTRUN -> [SKIP][47] ([Intel XE#2311]) +29 other tests skip
   [47]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-1/igt@kms_frontbuffer_tracking@fbcdrrshdr-2p-primscrn-cur-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbcdrrshdr-tiling-y:
    - shard-bmg:          NOTRUN -> [SKIP][48] ([Intel XE#7399]) +1 other test skip
   [48]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@kms_frontbuffer_tracking@fbcdrrshdr-tiling-y.html

  * igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-blt:
    - shard-bmg:          NOTRUN -> [SKIP][49] ([Intel XE#2313]) +27 other tests skip
   [49]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbcpsrhdr-abgr161616f-draw-mmap-wc:
    - shard-lnl:          NOTRUN -> [SKIP][50] ([Intel XE#7061]) +2 other tests skip
   [50]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_frontbuffer_tracking@fbcpsrhdr-abgr161616f-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@hdr-1p-rte:
    - shard-lnl:          NOTRUN -> [SKIP][51] ([Intel XE#7865]) +11 other tests skip
   [51]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_frontbuffer_tracking@hdr-1p-rte.html

  * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-indfb-msflip-blt:
    - shard-lnl:          NOTRUN -> [SKIP][52] ([Intel XE#656] / [Intel XE#7905]) +18 other tests skip
   [52]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-indfb-msflip-blt.html

  * igt@kms_hdmi_inject@inject-audio:
    - shard-lnl:          NOTRUN -> [SKIP][53] ([Intel XE#1470] / [Intel XE#2853])
   [53]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_hdmi_inject@inject-audio.html

  * igt@kms_joiner@basic-max-non-joiner:
    - shard-bmg:          NOTRUN -> [SKIP][54] ([Intel XE#4298] / [Intel XE#5873])
   [54]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@kms_joiner@basic-max-non-joiner.html

  * igt@kms_joiner@invalid-modeset-force-ultra-joiner:
    - shard-lnl:          NOTRUN -> [SKIP][55] ([Intel XE#6900] / [Intel XE#7362])
   [55]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@kms_joiner@invalid-modeset-force-ultra-joiner.html

  * igt@kms_multipipe_modeset@basic-max-pipe-crc-check:
    - shard-lnl:          NOTRUN -> [SKIP][56] ([Intel XE#7591])
   [56]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html

  * igt@kms_plane@pixel-format-4-tiled-dg2-rc-ccs-modifier-source-clamping:
    - shard-bmg:          NOTRUN -> [SKIP][57] ([Intel XE#7283]) +2 other tests skip
   [57]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-1/igt@kms_plane@pixel-format-4-tiled-dg2-rc-ccs-modifier-source-clamping.html

  * igt@kms_plane@pixel-format-4-tiled-modifier@pipe-a-plane-5:
    - shard-lnl:          NOTRUN -> [SKIP][58] ([Intel XE#8303]) +1 other test skip
   [58]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@kms_plane@pixel-format-4-tiled-modifier@pipe-a-plane-5.html

  * igt@kms_plane@pixel-format-x-tiled-modifier@pipe-b-plane-5:
    - shard-bmg:          NOTRUN -> [SKIP][59] ([Intel XE#8303]) +1 other test skip
   [59]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@kms_plane@pixel-format-x-tiled-modifier@pipe-b-plane-5.html

  * igt@kms_plane@pixel-format-yf-tiled-ccs-modifier-source-clamping:
    - shard-lnl:          NOTRUN -> [SKIP][60] ([Intel XE#7283]) +1 other test skip
   [60]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_plane@pixel-format-yf-tiled-ccs-modifier-source-clamping.html

  * igt@kms_plane_lowres@tiling-none@pipe-b-edp-1:
    - shard-lnl:          NOTRUN -> [SKIP][61] ([Intel XE#599] / [Intel XE#7382]) +3 other tests skip
   [61]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@kms_plane_lowres@tiling-none@pipe-b-edp-1.html

  * igt@kms_plane_multiple@2x-tiling-yf:
    - shard-bmg:          NOTRUN -> [SKIP][62] ([Intel XE#5021] / [Intel XE#7377])
   [62]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@kms_plane_multiple@2x-tiling-yf.html

  * igt@kms_plane_multiple@tiling-y:
    - shard-lnl:          NOTRUN -> [SKIP][63] ([Intel XE#5020] / [Intel XE#7348])
   [63]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_plane_multiple@tiling-y.html

  * igt@kms_pm_backlight@fade-with-dpms:
    - shard-bmg:          NOTRUN -> [SKIP][64] ([Intel XE#7376] / [Intel XE#7760] / [Intel XE#870]) +1 other test skip
   [64]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@kms_pm_backlight@fade-with-dpms.html

  * igt@kms_pm_dc@dc5-retention-flops:
    - shard-bmg:          NOTRUN -> [SKIP][65] ([Intel XE#3309] / [Intel XE#7368])
   [65]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@kms_pm_dc@dc5-retention-flops.html

  * igt@kms_pm_rpm@dpms-mode-unset-non-lpsp:
    - shard-lnl:          NOTRUN -> [SKIP][66] ([Intel XE#1439] / [Intel XE#7402] / [Intel XE#836])
   [66]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_pm_rpm@dpms-mode-unset-non-lpsp.html

  * igt@kms_pm_rpm@package-g7:
    - shard-lnl:          NOTRUN -> [SKIP][67] ([Intel XE#6813])
   [67]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_pm_rpm@package-g7.html

  * igt@kms_psr2_sf@fbc-psr2-overlay-plane-update-sf-dmg-area:
    - shard-lnl:          NOTRUN -> [SKIP][68] ([Intel XE#2893] / [Intel XE#4608] / [Intel XE#7304]) +1 other test skip
   [68]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_psr2_sf@fbc-psr2-overlay-plane-update-sf-dmg-area.html

  * igt@kms_psr2_sf@fbc-psr2-overlay-plane-update-sf-dmg-area@pipe-a-edp-1:
    - shard-lnl:          NOTRUN -> [SKIP][69] ([Intel XE#4608]) +1 other test skip
   [69]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_psr2_sf@fbc-psr2-overlay-plane-update-sf-dmg-area@pipe-a-edp-1.html

  * igt@kms_psr2_sf@fbc-psr2-overlay-plane-update-sf-dmg-area@pipe-b-edp-1:
    - shard-lnl:          NOTRUN -> [SKIP][70] ([Intel XE#4608] / [Intel XE#7304]) +1 other test skip
   [70]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_psr2_sf@fbc-psr2-overlay-plane-update-sf-dmg-area@pipe-b-edp-1.html

  * igt@kms_psr2_sf@pr-overlay-plane-update-sf-dmg-area:
    - shard-bmg:          NOTRUN -> [SKIP][71] ([Intel XE#1489]) +2 other tests skip
   [71]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@kms_psr2_sf@pr-overlay-plane-update-sf-dmg-area.html

  * igt@kms_psr2_sf@pr-primary-plane-update-sf-dmg-area-big-fb:
    - shard-lnl:          NOTRUN -> [SKIP][72] ([Intel XE#2893] / [Intel XE#7304])
   [72]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_psr2_sf@pr-primary-plane-update-sf-dmg-area-big-fb.html

  * igt@kms_psr2_su@page_flip-nv12:
    - shard-lnl:          NOTRUN -> [SKIP][73] ([Intel XE#1128] / [Intel XE#7413])
   [73]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@kms_psr2_su@page_flip-nv12.html

  * igt@kms_psr@fbc-psr2-cursor-plane-move:
    - shard-bmg:          NOTRUN -> [SKIP][74] ([Intel XE#2234] / [Intel XE#2850]) +7 other tests skip
   [74]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@kms_psr@fbc-psr2-cursor-plane-move.html

  * igt@kms_psr@fbc-psr2-no-drrs@edp-1:
    - shard-lnl:          NOTRUN -> [SKIP][75] ([Intel XE#1406] / [Intel XE#4609] / [Intel XE#7345]) +1 other test skip
   [75]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_psr@fbc-psr2-no-drrs@edp-1.html

  * igt@kms_psr@fbc-psr2-primary-render:
    - shard-lnl:          NOTRUN -> [SKIP][76] ([Intel XE#1406] / [Intel XE#7345]) +1 other test skip
   [76]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@kms_psr@fbc-psr2-primary-render.html

  * igt@kms_psr@pr-sprite-render:
    - shard-lnl:          NOTRUN -> [SKIP][77] ([Intel XE#1406])
   [77]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@kms_psr@pr-sprite-render.html

  * igt@kms_rotation_crc@bad-tiling:
    - shard-lnl:          NOTRUN -> [SKIP][78] ([Intel XE#3414] / [Intel XE#3904] / [Intel XE#7342]) +1 other test skip
   [78]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@kms_rotation_crc@bad-tiling.html

  * igt@kms_rotation_crc@primary-y-tiled-reflect-x-180:
    - shard-bmg:          NOTRUN -> [SKIP][79] ([Intel XE#2330] / [Intel XE#5813]) +1 other test skip
   [79]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@kms_rotation_crc@primary-y-tiled-reflect-x-180.html

  * igt@kms_setmode@basic-clone-single-crtc:
    - shard-bmg:          NOTRUN -> [SKIP][80] ([Intel XE#1435] / [Intel XE#8695]) +1 other test skip
   [80]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@kms_setmode@basic-clone-single-crtc.html

  * igt@kms_sharpness_filter@filter-toggle:
    - shard-bmg:          NOTRUN -> [SKIP][81] ([Intel XE#6503])
   [81]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@kms_sharpness_filter@filter-toggle.html

  * igt@kms_vrr@flip-basic-fastset:
    - shard-bmg:          NOTRUN -> [SKIP][82] ([Intel XE#1499])
   [82]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@kms_vrr@flip-basic-fastset.html

  * igt@sriov_basic@pf-unbind-with-vf-probed:
    - shard-lnl:          NOTRUN -> [SKIP][83] ([Intel XE#8866])
   [83]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@sriov_basic@pf-unbind-with-vf-probed.html

  * igt@xe_compute_preempt@compute-preempt-many-vram-evict:
    - shard-lnl:          NOTRUN -> [SKIP][84] ([Intel XE#5191] / [Intel XE#7316] / [Intel XE#7346])
   [84]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@xe_compute_preempt@compute-preempt-many-vram-evict.html

  * igt@xe_evict@evict-beng-cm-threads-small:
    - shard-lnl:          NOTRUN -> [SKIP][85] ([Intel XE#6540] / [Intel XE#688]) +4 other tests skip
   [85]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@xe_evict@evict-beng-cm-threads-small.html

  * igt@xe_evict@evict-mixed-many-threads-small:
    - shard-bmg:          [PASS][86] -> [INCOMPLETE][87] ([Intel XE#6321] / [Intel XE#8355])
   [86]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-6/igt@xe_evict@evict-mixed-many-threads-small.html
   [87]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-3/igt@xe_evict@evict-mixed-many-threads-small.html

  * igt@xe_exec_balancer@once-parallel-userptr-invalidate:
    - shard-lnl:          NOTRUN -> [SKIP][88] ([Intel XE#7482]) +10 other tests skip
   [88]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@xe_exec_balancer@once-parallel-userptr-invalidate.html

  * igt@xe_exec_basic@multigpu-no-exec-null-rebind:
    - shard-lnl:          NOTRUN -> [SKIP][89] ([Intel XE#1392]) +2 other tests skip
   [89]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@xe_exec_basic@multigpu-no-exec-null-rebind.html

  * igt@xe_exec_basic@multigpu-once-userptr-rebind:
    - shard-bmg:          NOTRUN -> [SKIP][90] ([Intel XE#2322] / [Intel XE#7372]) +2 other tests skip
   [90]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@xe_exec_basic@multigpu-once-userptr-rebind.html

  * igt@xe_exec_fault_mode@many-execqueues-multi-queue-prefetch:
    - shard-lnl:          NOTRUN -> [SKIP][91] ([Intel XE#8374]) +5 other tests skip
   [91]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@xe_exec_fault_mode@many-execqueues-multi-queue-prefetch.html

  * igt@xe_exec_fault_mode@once-multi-queue-userptr-invalidate-prefetch:
    - shard-bmg:          NOTRUN -> [SKIP][92] ([Intel XE#8374]) +9 other tests skip
   [92]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@xe_exec_fault_mode@once-multi-queue-userptr-invalidate-prefetch.html

  * igt@xe_exec_multi_queue@few-execs-preempt-mode-fault-priority:
    - shard-bmg:          NOTRUN -> [SKIP][93] ([Intel XE#8364]) +16 other tests skip
   [93]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@xe_exec_multi_queue@few-execs-preempt-mode-fault-priority.html

  * igt@xe_exec_multi_queue@many-execs-priority:
    - shard-lnl:          NOTRUN -> [SKIP][94] ([Intel XE#8364]) +15 other tests skip
   [94]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@xe_exec_multi_queue@many-execs-priority.html

  * igt@xe_exec_reset@cm-multi-queue-cat-error:
    - shard-lnl:          NOTRUN -> [SKIP][95] ([Intel XE#8369])
   [95]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@xe_exec_reset@cm-multi-queue-cat-error.html

  * igt@xe_exec_reset@cm-multi-queue-close-execqueues:
    - shard-bmg:          NOTRUN -> [SKIP][96] ([Intel XE#8369])
   [96]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@xe_exec_reset@cm-multi-queue-close-execqueues.html

  * igt@xe_exec_threads@threads-multi-queue-cm-userptr:
    - shard-lnl:          NOTRUN -> [SKIP][97] ([Intel XE#8378]) +4 other tests skip
   [97]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@xe_exec_threads@threads-multi-queue-cm-userptr.html

  * igt@xe_exec_threads@threads-multi-queue-mixed-fd-userptr-rebind:
    - shard-bmg:          NOTRUN -> [SKIP][98] ([Intel XE#8378]) +2 other tests skip
   [98]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@xe_exec_threads@threads-multi-queue-mixed-fd-userptr-rebind.html

  * igt@xe_mmap@vram:
    - shard-lnl:          NOTRUN -> [SKIP][99] ([Intel XE#1416])
   [99]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@xe_mmap@vram.html

  * igt@xe_module_load@load:
    - shard-bmg:          ([PASS][100], [PASS][101], [PASS][102], [PASS][103], [PASS][104], [PASS][105], [PASS][106], [PASS][107], [PASS][108], [PASS][109], [PASS][110], [PASS][111], [PASS][112], [PASS][113], [PASS][114], [PASS][115], [PASS][116], [PASS][117], [PASS][118], [PASS][119], [PASS][120], [PASS][121], [PASS][122], [PASS][123], [PASS][124]) -> ([PASS][125], [PASS][126], [PASS][127], [PASS][128], [PASS][129], [PASS][130], [PASS][131], [PASS][132], [PASS][133], [PASS][134], [PASS][135], [PASS][136], [PASS][137], [PASS][138], [PASS][139], [PASS][140], [PASS][141], [PASS][142], [PASS][143], [PASS][144], [PASS][145], [PASS][146], [PASS][147], [PASS][148], [PASS][149], [SKIP][150]) ([Intel XE#2457] / [Intel XE#7405])
   [100]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-4/igt@xe_module_load@load.html
   [101]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-2/igt@xe_module_load@load.html
   [102]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-4/igt@xe_module_load@load.html
   [103]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-9/igt@xe_module_load@load.html
   [104]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-10/igt@xe_module_load@load.html
   [105]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-1/igt@xe_module_load@load.html
   [106]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-1/igt@xe_module_load@load.html
   [107]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-3/igt@xe_module_load@load.html
   [108]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-9/igt@xe_module_load@load.html
   [109]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-4/igt@xe_module_load@load.html
   [110]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-3/igt@xe_module_load@load.html
   [111]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-7/igt@xe_module_load@load.html
   [112]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-7/igt@xe_module_load@load.html
   [113]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-1/igt@xe_module_load@load.html
   [114]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-8/igt@xe_module_load@load.html
   [115]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-8/igt@xe_module_load@load.html
   [116]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-1/igt@xe_module_load@load.html
   [117]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-6/igt@xe_module_load@load.html
   [118]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-6/igt@xe_module_load@load.html
   [119]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-5/igt@xe_module_load@load.html
   [120]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-5/igt@xe_module_load@load.html
   [121]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-10/igt@xe_module_load@load.html
   [122]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-2/igt@xe_module_load@load.html
   [123]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-2/igt@xe_module_load@load.html
   [124]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-10/igt@xe_module_load@load.html
   [125]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-5/igt@xe_module_load@load.html
   [126]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-2/igt@xe_module_load@load.html
   [127]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@xe_module_load@load.html
   [128]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@xe_module_load@load.html
   [129]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@xe_module_load@load.html
   [130]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@xe_module_load@load.html
   [131]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-1/igt@xe_module_load@load.html
   [132]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-7/igt@xe_module_load@load.html
   [133]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-10/igt@xe_module_load@load.html
   [134]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-5/igt@xe_module_load@load.html
   [135]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-5/igt@xe_module_load@load.html
   [136]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-9/igt@xe_module_load@load.html
   [137]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-9/igt@xe_module_load@load.html
   [138]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-1/igt@xe_module_load@load.html
   [139]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-7/igt@xe_module_load@load.html
   [140]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-2/igt@xe_module_load@load.html
   [141]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-2/igt@xe_module_load@load.html
   [142]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-7/igt@xe_module_load@load.html
   [143]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-10/igt@xe_module_load@load.html
   [144]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-3/igt@xe_module_load@load.html
   [145]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@xe_module_load@load.html
   [146]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-3/igt@xe_module_load@load.html
   [147]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-8/igt@xe_module_load@load.html
   [148]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-8/igt@xe_module_load@load.html
   [149]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-10/igt@xe_module_load@load.html
   [150]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@xe_module_load@load.html

  * igt@xe_multigpu_svm@mgpu-atomic-op-basic:
    - shard-lnl:          NOTRUN -> [SKIP][151] ([Intel XE#6964]) +1 other test skip
   [151]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@xe_multigpu_svm@mgpu-atomic-op-basic.html

  * igt@xe_multigpu_svm@mgpu-migration-prefetch:
    - shard-bmg:          NOTRUN -> [SKIP][152] ([Intel XE#6964])
   [152]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-1/igt@xe_multigpu_svm@mgpu-migration-prefetch.html

  * igt@xe_page_reclaim@binds-large-split:
    - shard-lnl:          NOTRUN -> [SKIP][153] ([Intel XE#7793]) +1 other test skip
   [153]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@xe_page_reclaim@binds-large-split.html

  * igt@xe_page_reclaim@prl-max-entries:
    - shard-bmg:          NOTRUN -> [SKIP][154] ([Intel XE#7793])
   [154]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@xe_page_reclaim@prl-max-entries.html

  * igt@xe_pat@pat-index-xehpc:
    - shard-bmg:          NOTRUN -> [SKIP][155] ([Intel XE#1420] / [Intel XE#7590])
   [155]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@xe_pat@pat-index-xehpc.html

  * igt@xe_pat@pat-index-xelp:
    - shard-bmg:          NOTRUN -> [SKIP][156] ([Intel XE#2245] / [Intel XE#7590])
   [156]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@xe_pat@pat-index-xelp.html

  * igt@xe_pat@pat-sw-hw-suspend:
    - shard-lnl:          NOTRUN -> [FAIL][157] ([Intel XE#7695])
   [157]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@xe_pat@pat-sw-hw-suspend.html

  * igt@xe_pm@d3cold-multiple-execs:
    - shard-lnl:          NOTRUN -> [SKIP][158] ([Intel XE#2284] / [Intel XE#366] / [Intel XE#7370])
   [158]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@xe_pm@d3cold-multiple-execs.html

  * igt@xe_pm@d3hot-i2c:
    - shard-bmg:          NOTRUN -> [SKIP][159] ([Intel XE#5742] / [Intel XE#7328] / [Intel XE#7400])
   [159]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@xe_pm@d3hot-i2c.html

  * igt@xe_pm@s3-vm-bind-unbind-all:
    - shard-lnl:          NOTRUN -> [SKIP][160] ([Intel XE#584] / [Intel XE#7369])
   [160]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@xe_pm@s3-vm-bind-unbind-all.html

  * igt@xe_pmu@fn-engine-activity-load:
    - shard-lnl:          NOTRUN -> [SKIP][161] ([Intel XE#4650] / [Intel XE#7347])
   [161]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@xe_pmu@fn-engine-activity-load.html

  * igt@xe_pxp@pxp-optout:
    - shard-bmg:          NOTRUN -> [SKIP][162] ([Intel XE#4733] / [Intel XE#7417])
   [162]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@xe_pxp@pxp-optout.html

  * igt@xe_query@multigpu-query-uc-fw-version-huc:
    - shard-lnl:          NOTRUN -> [SKIP][163] ([Intel XE#944]) +1 other test skip
   [163]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-2/igt@xe_query@multigpu-query-uc-fw-version-huc.html

  * igt@xe_sriov_admin@sched-priority-vf-write-denied:
    - shard-lnl:          NOTRUN -> [SKIP][164] ([Intel XE#7174])
   [164]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@xe_sriov_admin@sched-priority-vf-write-denied.html

  * igt@xe_sriov_vfio@bind-unbind-vfs:
    - shard-lnl:          NOTRUN -> [SKIP][165] ([Intel XE#7724])
   [165]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-7/igt@xe_sriov_vfio@bind-unbind-vfs.html

  * igt@xe_wedged@basic-wedged:
    - shard-bmg:          NOTRUN -> [DMESG-WARN][166] ([Intel XE#8963])
   [166]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@xe_wedged@basic-wedged.html

  
#### Possible fixes ####

  * igt@kms_flip@flip-vs-expired-vblank@b-edp1:
    - shard-lnl:          [FAIL][167] ([Intel XE#301]) -> [PASS][168] +1 other test pass
   [167]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-lnl-4/igt@kms_flip@flip-vs-expired-vblank@b-edp1.html
   [168]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-4/igt@kms_flip@flip-vs-expired-vblank@b-edp1.html

  * igt@kms_hdr@invalid-hdr:
    - shard-bmg:          [SKIP][169] ([Intel XE#1503]) -> [PASS][170]
   [169]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-10/igt@kms_hdr@invalid-hdr.html
   [170]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-2/igt@kms_hdr@invalid-hdr.html

  * igt@kms_pm_rpm@system-suspend-modeset:
    - shard-bmg:          [INCOMPLETE][171] -> [PASS][172]
   [171]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-9/igt@kms_pm_rpm@system-suspend-modeset.html
   [172]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-4/igt@kms_pm_rpm@system-suspend-modeset.html

  * igt@xe_evict@evict-beng-mixed-many-threads-small:
    - shard-bmg:          [INCOMPLETE][173] ([Intel XE#6321] / [Intel XE#8355]) -> [PASS][174]
   [173]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-4/igt@xe_evict@evict-beng-mixed-many-threads-small.html
   [174]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-7/igt@xe_evict@evict-beng-mixed-many-threads-small.html

  * igt@xe_exec_threads@threads-hang-fd-userptr-invalidate-race:
    - shard-lnl:          [FAIL][175] ([Intel XE#9096]) -> [PASS][176]
   [175]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-lnl-5/igt@xe_exec_threads@threads-hang-fd-userptr-invalidate-race.html
   [176]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-5/igt@xe_exec_threads@threads-hang-fd-userptr-invalidate-race.html
    - shard-bmg:          [FAIL][177] ([Intel XE#9096]) -> [PASS][178]
   [177]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-6/igt@xe_exec_threads@threads-hang-fd-userptr-invalidate-race.html
   [178]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-3/igt@xe_exec_threads@threads-hang-fd-userptr-invalidate-race.html

  * igt@xe_fault_injection@probe-fail-guc-xe_guc_ct_send_recv:
    - shard-bmg:          [ABORT][179] ([Intel XE#8007]) -> [PASS][180] +1 other test pass
   [179]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-1/igt@xe_fault_injection@probe-fail-guc-xe_guc_ct_send_recv.html
   [180]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-6/igt@xe_fault_injection@probe-fail-guc-xe_guc_ct_send_recv.html

  * igt@xe_sriov_flr@flr-basic@numvfs-1:
    - shard-bmg:          [FAIL][181] ([Intel XE#7992]) -> [PASS][182] +1 other test pass
   [181]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-bmg-6/igt@xe_sriov_flr@flr-basic@numvfs-1.html
   [182]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-bmg-3/igt@xe_sriov_flr@flr-basic@numvfs-1.html

  
#### Warnings ####

  * igt@xe_exec_reset@gt-reset-fault-injection:
    - shard-lnl:          [DMESG-WARN][183] ([Intel XE#9130]) -> [ABORT][184] ([Intel XE#9140] / [Intel XE#9145])
   [183]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913/shard-lnl-1/igt@xe_exec_reset@gt-reset-fault-injection.html
   [184]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-172305v5/shard-lnl-1/igt@xe_exec_reset@gt-reset-fault-injection.html

  
  [Intel XE#1124]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1124
  [Intel XE#1128]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1128
  [Intel XE#1178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1178
  [Intel XE#1392]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1392
  [Intel XE#1397]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1397
  [Intel XE#1406]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1406
  [Intel XE#1407]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1407
  [Intel XE#1416]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1416
  [Intel XE#1420]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1420
  [Intel XE#1421]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1421
  [Intel XE#1424]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1424
  [Intel XE#1435]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1435
  [Intel XE#1439]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1439
  [Intel XE#1470]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1470
  [Intel XE#1489]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1489
  [Intel XE#1499]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1499
  [Intel XE#1503]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1503
  [Intel XE#1745]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1745
  [Intel XE#2234]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2234
  [Intel XE#2245]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2245
  [Intel XE#2252]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2252
  [Intel XE#2284]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2284
  [Intel XE#2311]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2311
  [Intel XE#2313]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2313
  [Intel XE#2320]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2320
  [Intel XE#2321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2321
  [Intel XE#2322]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2322
  [Intel XE#2325]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2325
  [Intel XE#2327]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2327
  [Intel XE#2330]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2330
  [Intel XE#2352]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2352
  [Intel XE#2370]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2370
  [Intel XE#2457]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2457
  [Intel XE#2652]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2652
  [Intel XE#2850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2850
  [Intel XE#2853]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2853
  [Intel XE#2887]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2887
  [Intel XE#2893]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2893
  [Intel XE#301]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/301
  [Intel XE#306]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/306
  [Intel XE#307]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/307
  [Intel XE#309]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/309
  [Intel XE#3149]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3149
  [Intel XE#3304]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3304
  [Intel XE#3309]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3309
  [Intel XE#3321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3321
  [Intel XE#3414]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3414
  [Intel XE#3432]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3432
  [Intel XE#3658]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3658
  [Intel XE#366]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/366
  [Intel XE#367]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/367
  [Intel XE#373]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/373
  [Intel XE#3904]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3904
  [Intel XE#4141]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4141
  [Intel XE#4210]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4210
  [Intel XE#4298]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4298
  [Intel XE#4354]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4354
  [Intel XE#4608]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4608
  [Intel XE#4609]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4609
  [Intel XE#4650]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4650
  [Intel XE#4733]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4733
  [Intel XE#5020]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5020
  [Intel XE#5021]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5021
  [Intel XE#5191]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5191
  [Intel XE#5742]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5742
  [Intel XE#5813]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5813
  [Intel XE#584]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/584
  [Intel XE#5873]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5873
  [Intel XE#5882]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5882
  [Intel XE#599]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/599
  [Intel XE#607]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/607
  [Intel XE#6312]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6312
  [Intel XE#6321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6321
  [Intel XE#6503]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6503
  [Intel XE#651]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/651
  [Intel XE#6540]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6540
  [Intel XE#656]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/656
  [Intel XE#6813]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6813
  [Intel XE#688]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/688
  [Intel XE#6900]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6900
  [Intel XE#6964]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6964
  [Intel XE#6974]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6974
  [Intel XE#7061]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7061
  [Intel XE#7174]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7174
  [Intel XE#7178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7178
  [Intel XE#7283]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7283
  [Intel XE#7304]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7304
  [Intel XE#7316]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7316
  [Intel XE#7328]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7328
  [Intel XE#7342]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7342
  [Intel XE#7343]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7343
  [Intel XE#7345]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7345
  [Intel XE#7346]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7346
  [Intel XE#7347]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7347
  [Intel XE#7348]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7348
  [Intel XE#7349]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7349
  [Intel XE#7351]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7351
  [Intel XE#7355]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7355
  [Intel XE#7356]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7356
  [Intel XE#7358]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7358
  [Intel XE#7360]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7360
  [Intel XE#7361]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7361
  [Intel XE#7362]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7362
  [Intel XE#7368]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7368
  [Intel XE#7369]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7369
  [Intel XE#7370]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7370
  [Intel XE#7372]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7372
  [Intel XE#7374]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7374
  [Intel XE#7376]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7376
  [Intel XE#7377]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7377
  [Intel XE#7382]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7382
  [Intel XE#7385]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7385
  [Intel XE#7399]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7399
  [Intel XE#7400]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7400
  [Intel XE#7402]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7402
  [Intel XE#7405]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7405
  [Intel XE#7413]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7413
  [Intel XE#7417]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7417
  [Intel XE#7450]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7450
  [Intel XE#7467]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7467
  [Intel XE#7482]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7482
  [Intel XE#7590]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7590
  [Intel XE#7591]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7591
  [Intel XE#7679]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7679
  [Intel XE#7695]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7695
  [Intel XE#7724]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7724
  [Intel XE#7760]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7760
  [Intel XE#7793]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7793
  [Intel XE#7865]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7865
  [Intel XE#7905]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7905
  [Intel XE#7992]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7992
  [Intel XE#8007]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8007
  [Intel XE#8265]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8265
  [Intel XE#8303]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8303
  [Intel XE#8355]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8355
  [Intel XE#836]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/836
  [Intel XE#8364]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8364
  [Intel XE#8369]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8369
  [Intel XE#8374]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8374
  [Intel XE#8378]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8378
  [Intel XE#8586]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8586
  [Intel XE#8695]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8695
  [Intel XE#870]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/870
  [Intel XE#8866]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8866
  [Intel XE#8963]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8963
  [Intel XE#9096]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9096
  [Intel XE#9130]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9130
  [Intel XE#9140]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9140
  [Intel XE#9144]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9144
  [Intel XE#9145]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9145
  [Intel XE#944]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/944


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

  * Linux: xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913 -> xe-pw-172305v5

  IGT_9091: 9091
  xe-5727-b6d5d3322d5aafa2fdfae5731c06336976099913: b6d5d3322d5aafa2fdfae5731c06336976099913
  xe-pw-172305v5: 172305v5

== Logs ==

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

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

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

end of thread, other threads:[~2026-09-11 15:39 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-11  8:04 [PATCH v5 00/10] pm_pme support on display hotplug Vinod Govindapillai
2026-09-11  8:04 ` [PATCH v5 01/10] drm/xe/pm: initialize the device's system wakeup capabilities Vinod Govindapillai
2026-09-11  8:04 ` [PATCH v5 02/10] drm/xe/pm: introduce PM PME support Vinod Govindapillai
2026-09-11  8:04 ` [PATCH v5 03/10] drm/xe/pm: avoid reclaim when arming PME wakeup Vinod Govindapillai
2026-09-11  8:22   ` sashiko-bot
2026-09-11  8:04 ` [PATCH v5 04/10] drm/i915: add pme_enabled() to the parent interface Vinod Govindapillai
2026-09-11  8:04 ` [PATCH v5 05/10] drm/i915/xe: plug the pme_enabed implementation for xe Vinod Govindapillai
2026-09-11  8:04 ` [PATCH v5 06/10] drm/i915/hotplug: add helpers to track HPDs can generate PME Vinod Govindapillai
2026-09-11 13:00   ` Jani Nikula
2026-09-11 15:36     ` Govindapillai, Vinod
2026-09-11  8:04 ` [PATCH v5 07/10] drm/i915: plug the pm runtime handlers with PME HPD handling Vinod Govindapillai
2026-09-11  8:04 ` [PATCH v5 08/10] drm/xe/pm: clear PME HPD flag on runtime suspend error handler Vinod Govindapillai
2026-09-11  8:20   ` sashiko-bot
2026-09-11  8:04 ` [PATCH v5 09/10] drm/i915/irq: conditional HPD IRQ resets based on PME capability Vinod Govindapillai
2026-09-11  8:27   ` sashiko-bot
2026-09-11  8:04 ` [PATCH v5 10/10] drm/i915/hotplug: avoid HPD polling if the device is PME capable Vinod Govindapillai
2026-09-11  8:34   ` sashiko-bot
2026-09-11  8:17 ` ✓ CI.KUnit: success for pm_pme support on display hotplug (rev5) Patchwork
2026-09-11  9:06 ` ✓ Xe.CI.BAT: " Patchwork
2026-09-11 15:39 ` ✓ 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