* [v3 1/4] drm/i915/display: Enable periodic AS SDP skip frames
2026-08-31 12:59 [v3 0/4] drm/i915/display: Enable AS SDP Skip Frames Uma Shankar
@ 2026-08-31 12:59 ` Uma Shankar
2026-08-31 12:52 ` sashiko-bot
2026-08-31 12:59 ` [v3 2/4] drm/i915/display: Force disable DC3co when AS SDP skip frames is enabled Uma Shankar
` (6 subsequent siblings)
7 siblings, 1 reply; 13+ messages in thread
From: Uma Shankar @ 2026-08-31 12:59 UTC (permalink / raw)
To: intel-gfx, intel-xe; +Cc: dibin.moolakadan.subrahmanian, Uma Shankar
When Panel Replay is active the transcoder timing generator runs at the
panel's maximum refresh rate. To drive the panel down to its minimum
refresh rate the Adaptive-Sync SDP (AS SDP) only needs to reach the panel
once per minimum-rate frame, so transmitting it on every (maximum-rate)
frame is redundant and shows up as repeated SDPs on the link.
Xe3LPD adds a HW skip-frame counter in PR_ALPM_CTL that lets the source
send a single AS SDP and then suppress it for a programmed number of
frames. Program this counter so that one AS SDP is followed by
(max_vrefresh / min_vrefresh - 1) idle frames, i.e. one AS SDP per
slowest panel frame, allowing the link to be driven down to as low as
1Hz when the hardware supports it.
The maximum and minimum refresh rates come from the panel's adaptive-sync
monitor range, so the skip count is a function of the sink's capabilities
and independent of the current content/flip rate. If the panel does not
advertise a usable range the skip counter is left at zero, i.e. the
feature is a no-op and AS SDP continues to be sent on every frame.
Periodic AS SDP drives the panel down to its minimum refresh rate on its
own, so it is only programmed when VRR is not actively driving the
refresh rate.
The skip-frame mechanism relies on the AS SDP still being transmitted
(just less often) while Panel Replay is active, so when a non-zero
skip-frame count is programmed both
PR_ALPM_CTL_AS_SDP_TRANSMISSION_IN_ACTIVE_DISABLE and
PR_ALPM_CTL_USE_DC3CO_IDLE_PROTOCOL are left cleared. The previous
behaviour (honouring disable_as_sdp_when_pr_active and the DC3CO idle
protocol) is retained for the non skip-frame case.
v2: Decoupled CMMRR dependency and using sink refresh rate range for
skip frame claculations. This addresses Dibin's review feedback as well.
Assisted-by: Claude:claude-opus-4-8
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
---
drivers/gpu/drm/i915/display/intel_alpm.c | 60 +++++++++++++++++--
drivers/gpu/drm/i915/display/intel_psr_regs.h | 2 +
2 files changed, 57 insertions(+), 5 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_alpm.c b/drivers/gpu/drm/i915/display/intel_alpm.c
index f1383764b702..d1f6bb82e35e 100644
--- a/drivers/gpu/drm/i915/display/intel_alpm.c
+++ b/drivers/gpu/drm/i915/display/intel_alpm.c
@@ -375,6 +375,35 @@ static u32 get_pr_alpm_as_sdp_transmission_time(const struct intel_crtc_state *c
}
}
+/*
+ * Periodic Adaptive-Sync SDP skip frames.
+ *
+ * While Panel Replay is active the transcoder timing generator runs at the
+ * panel's maximum refresh rate. To drive the panel down to its minimum
+ * refresh rate the Adaptive-Sync SDP only needs to reach the panel once per
+ * minimum-rate frame, so transmitting it on every (maximum-rate) frame is
+ * unnecessary and shows up as repeated SDPs on the link. Program the HW skip
+ * counter so that a single AS SDP is followed by
+ * (max_vrefresh / min_vrefresh - 1) idle frames, i.e. one AS SDP per slowest
+ * panel frame.
+ *
+ * The maximum and minimum refresh rates come from the panel's adaptive-sync
+ * monitor range, so this is independent of the current content/flip rate.
+ */
+static u32 intel_pr_as_sdp_skip_frames(struct intel_dp *intel_dp)
+{
+ const struct drm_display_info *info =
+ &intel_dp->attached_connector->base.display_info;
+ int max_vrefresh = info->monitor_range.max_vfreq;
+ int min_vrefresh = info->monitor_range.min_vfreq;
+
+ if (min_vrefresh <= 0 || max_vrefresh <= min_vrefresh)
+ return 0;
+
+ return min_t(u32, max_vrefresh / min_vrefresh - 1,
+ REG_FIELD_MAX(PR_ALPM_CTL_AS_SDP_SKIP_FRAMES_MASK));
+}
+
static void lnl_alpm_configure(struct intel_dp *intel_dp,
const struct intel_crtc_state *crtc_state)
{
@@ -399,16 +428,37 @@ static void lnl_alpm_configure(struct intel_dp *intel_dp,
if (intel_dp->as_sdp_supported) {
u32 pr_alpm_ctl = get_pr_alpm_as_sdp_transmission_time(crtc_state);
+ u32 skip_frames = 0;
+
+ /*
+ * AS SDP skip frames field only exists on Xe3LPD+, and
+ * periodic AS SDP is only used when VRR is not actively
+ * driving the refresh rate.
+ */
+ if (DISPLAY_VER(display) >= 35 && !crtc_state->vrr.enable)
+ skip_frames = intel_pr_as_sdp_skip_frames(intel_dp);
if (crtc_state->link_off_after_as_sdp_when_pr_active)
pr_alpm_ctl |= PR_ALPM_CTL_ALLOW_LINK_OFF_BETWEEN_AS_SDP_AND_SU;
- if (crtc_state->disable_as_sdp_when_pr_active)
- pr_alpm_ctl |= PR_ALPM_CTL_AS_SDP_TRANSMISSION_IN_ACTIVE_DISABLE;
- if (intel_display_power_dc3co_allowed(display))
- pr_alpm_ctl |= PR_ALPM_CTL_USE_DC3CO_IDLE_PROTOCOL;
- else
+ /*
+ * Skip frames needs the AS SDP to keep flowing during PR
+ * active, so it is mutually exclusive with disabling AS SDP
+ * transmission in active and with the DC3CO idle protocol.
+ */
+ if (skip_frames) {
+ pr_alpm_ctl |= PR_ALPM_CTL_AS_SDP_SKIP_FRAMES(skip_frames);
+ pr_alpm_ctl &= ~PR_ALPM_CTL_AS_SDP_TRANSMISSION_IN_ACTIVE_DISABLE;
pr_alpm_ctl &= ~PR_ALPM_CTL_USE_DC3CO_IDLE_PROTOCOL;
+ } else {
+ pr_alpm_ctl &= ~PR_ALPM_CTL_AS_SDP_SKIP_FRAMES_MASK;
+
+ if (crtc_state->disable_as_sdp_when_pr_active)
+ pr_alpm_ctl |= PR_ALPM_CTL_AS_SDP_TRANSMISSION_IN_ACTIVE_DISABLE;
+
+ if (intel_display_power_dc3co_allowed(display))
+ pr_alpm_ctl |= PR_ALPM_CTL_USE_DC3CO_IDLE_PROTOCOL;
+ }
intel_de_write(display, PR_ALPM_CTL(display, cpu_transcoder),
pr_alpm_ctl);
diff --git a/drivers/gpu/drm/i915/display/intel_psr_regs.h b/drivers/gpu/drm/i915/display/intel_psr_regs.h
index 16a9e3af198d..bb577e7e3bbd 100644
--- a/drivers/gpu/drm/i915/display/intel_psr_regs.h
+++ b/drivers/gpu/drm/i915/display/intel_psr_regs.h
@@ -276,6 +276,8 @@
#define PR_ALPM_CTL_ADAPTIVE_SYNC_SDP_POSITION_T1_OR_T2 REG_FIELD_PREP(PR_ALPM_CTL_ADAPTIVE_SYNC_SDP_POSITION_MASK, 0)
#define PR_ALPM_CTL_ADAPTIVE_SYNC_SDP_POSITION_T1 REG_FIELD_PREP(PR_ALPM_CTL_ADAPTIVE_SYNC_SDP_POSITION_MASK, 1)
#define PR_ALPM_CTL_ADAPTIVE_SYNC_SDP_POSITION_T2 REG_FIELD_PREP(PR_ALPM_CTL_ADAPTIVE_SYNC_SDP_POSITION_MASK, 2)
+#define PR_ALPM_CTL_AS_SDP_SKIP_FRAMES_MASK REG_GENMASK(27, 16)
+#define PR_ALPM_CTL_AS_SDP_SKIP_FRAMES(frames) REG_FIELD_PREP(PR_ALPM_CTL_AS_SDP_SKIP_FRAMES_MASK, (frames))
#define _ALPM_CTL_A 0x60950
#define ALPM_CTL(dev_priv, tran) _MMIO_TRANS2(dev_priv, tran, _ALPM_CTL_A)
--
2.50.1
^ permalink raw reply related [flat|nested] 13+ messages in thread* Re: [v3 1/4] drm/i915/display: Enable periodic AS SDP skip frames
2026-08-31 12:59 ` [v3 1/4] drm/i915/display: Enable periodic AS SDP skip frames Uma Shankar
@ 2026-08-31 12:52 ` sashiko-bot
0 siblings, 0 replies; 13+ messages in thread
From: sashiko-bot @ 2026-08-31 12:52 UTC (permalink / raw)
To: Uma Shankar; +Cc: intel-xe, intel-gfx
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] Mismatch between commit message/comments and display version check for Xe3LPD platforms.
--
commit e8820000c4c1f603b4949f4796b99e1267661c09
Author: Uma Shankar <uma.shankar@intel.com>
drm/i915/display: Enable periodic AS SDP skip frames
This commit enables periodic Adaptive-Sync SDP (AS SDP) skip frames to allow
the transcoder to drive the panel down to its minimum refresh rate when Panel
Replay is active. It programs a hardware skip-frame counter in PR_ALPM_CTL
so that one AS SDP is followed by a number of idle frames based on the panel's
refresh rate range.
> diff --git a/drivers/gpu/drm/i915/display/intel_alpm.c b/drivers/gpu/drm/i915/display/intel_alpm.c
> index f1383764b7028..d1f6bb82e35ef 100644
> --- a/drivers/gpu/drm/i915/display/intel_alpm.c
> +++ b/drivers/gpu/drm/i915/display/intel_alpm.c
[ ... ]
> @@ -399,16 +428,37 @@ static void lnl_alpm_configure(struct intel_dp *intel_dp,
>
> if (intel_dp->as_sdp_supported) {
> u32 pr_alpm_ctl = get_pr_alpm_as_sdp_transmission_time(crtc_state);
> + u32 skip_frames = 0;
> +
> + /*
> + * AS SDP skip frames field only exists on Xe3LPD+, and
> + * periodic AS SDP is only used when VRR is not actively
> + * driving the refresh rate.
> + */
> + if (DISPLAY_VER(display) >= 35 && !crtc_state->vrr.enable)
> + skip_frames = intel_pr_as_sdp_skip_frames(intel_dp);
[Severity: Medium]
Does this code inadvertently disable the feature on Xe3LPD hardware?
The comment explicitly mentions that the AS SDP skip frames field exists on
Xe3LPD+, which has a display version of 30. However, lnl_alpm_configure()
checks if DISPLAY_VER(display) >= 35.
This mismatch means the skip frame calculation will be bypassed for Xe3LPD
devices (Panther Lake), disabling the optimization on the platform it was
intended for.
Should this version check be updated to 30 instead of 35 to match the comment?
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260831125914.1736501-1-uma.shankar@intel.com?part=1
^ permalink raw reply [flat|nested] 13+ messages in thread
* [v3 2/4] drm/i915/display: Force disable DC3co when AS SDP skip frames is enabled
2026-08-31 12:59 [v3 0/4] drm/i915/display: Enable AS SDP Skip Frames Uma Shankar
2026-08-31 12:59 ` [v3 1/4] drm/i915/display: Enable periodic AS SDP skip frames Uma Shankar
@ 2026-08-31 12:59 ` Uma Shankar
2026-08-31 12:57 ` sashiko-bot
2026-08-31 12:59 ` [v3 3/4] drm/i915/display: Reprogram AS SDP skip frames on seamless VRR transitions Uma Shankar
` (5 subsequent siblings)
7 siblings, 1 reply; 13+ messages in thread
From: Uma Shankar @ 2026-08-31 12:59 UTC (permalink / raw)
To: intel-gfx, intel-xe; +Cc: dibin.moolakadan.subrahmanian, Uma Shankar
Periodic AS SDP (skip frames) relies on the AS SDP still being
transmitted while Panel Replay is active. DC3co uses the idle protocol
which suppresses AS SDP transmission entirely, so the two are mutually
exclusive: leaving DC3co enabled while skip frames is programmed breaks
the periodic AS SDP and the panel never sees the slower refresh.
Add intel_alpm_pr_as_sdp_skip_frames_enabled() as the single predicate
for "skip frames will be programmed" (mirroring the gating in
lnl_alpm_configure(), including that it only applies when VRR is not
active) and use it in intel_display_power_dc3co_compute() to force the
DC3co trigger to NONE. This drops the pipe onto the
DC_STATE_EN_UPTO_DC6 target instead of DC3co whenever skip frames is
active, without touching the DC state module parameter or the allowed
DC mask, and only for the skip-frame case.
Assisted-by: Claude:claude-opus-4-8
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
---
drivers/gpu/drm/i915/display/intel_alpm.c | 23 +++++++++++++++++++
drivers/gpu/drm/i915/display/intel_alpm.h | 2 ++
.../drm/i915/display/intel_display_power.c | 9 ++++++++
3 files changed, 34 insertions(+)
diff --git a/drivers/gpu/drm/i915/display/intel_alpm.c b/drivers/gpu/drm/i915/display/intel_alpm.c
index d1f6bb82e35e..5f635f14a588 100644
--- a/drivers/gpu/drm/i915/display/intel_alpm.c
+++ b/drivers/gpu/drm/i915/display/intel_alpm.c
@@ -404,6 +404,29 @@ static u32 intel_pr_as_sdp_skip_frames(struct intel_dp *intel_dp)
REG_FIELD_MAX(PR_ALPM_CTL_AS_SDP_SKIP_FRAMES_MASK));
}
+/*
+ * Whether periodic AS SDP transmission (AS SDP skip frames) will be programmed
+ * for this Panel Replay config. The skip counter needs the AS SDP to keep
+ * flowing during PR active, which is incompatible with DC3co, so this is used
+ * to keep DC3co disabled while skip frames is enabled.
+ */
+bool intel_alpm_pr_as_sdp_skip_frames_enabled(struct intel_dp *intel_dp,
+ const struct intel_crtc_state *crtc_state)
+{
+ struct intel_display *display = to_intel_display(intel_dp);
+
+ /*
+ * The AS SDP skip frames field only exists on Xe3LPD+. Periodic AS SDP
+ * drives the panel down to its minimum refresh rate on its own, so it is
+ * only used when VRR is not actively driving the refresh rate.
+ */
+ if (DISPLAY_VER(display) < 35 || !intel_dp->as_sdp_supported ||
+ !crtc_state->has_panel_replay || crtc_state->vrr.enable)
+ return false;
+
+ return intel_pr_as_sdp_skip_frames(intel_dp) > 0;
+}
+
static void lnl_alpm_configure(struct intel_dp *intel_dp,
const struct intel_crtc_state *crtc_state)
{
diff --git a/drivers/gpu/drm/i915/display/intel_alpm.h b/drivers/gpu/drm/i915/display/intel_alpm.h
index 1cf70668ab1b..328920027f1c 100644
--- a/drivers/gpu/drm/i915/display/intel_alpm.h
+++ b/drivers/gpu/drm/i915/display/intel_alpm.h
@@ -34,6 +34,8 @@ bool intel_alpm_aux_wake_supported(struct intel_dp *intel_dp);
bool intel_alpm_aux_less_wake_supported(struct intel_dp *intel_dp);
bool intel_alpm_is_alpm_aux_less(struct intel_dp *intel_dp,
const struct intel_crtc_state *crtc_state);
+bool intel_alpm_pr_as_sdp_skip_frames_enabled(struct intel_dp *intel_dp,
+ const struct intel_crtc_state *crtc_state);
void intel_alpm_disable(struct intel_dp *intel_dp);
bool intel_alpm_get_error(struct intel_dp *intel_dp);
void intel_alpm_lobf_compute_config_late(struct intel_dp *intel_dp,
diff --git a/drivers/gpu/drm/i915/display/intel_display_power.c b/drivers/gpu/drm/i915/display/intel_display_power.c
index 0ebec6e0c240..1b60ce2dd00c 100644
--- a/drivers/gpu/drm/i915/display/intel_display_power.c
+++ b/drivers/gpu/drm/i915/display/intel_display_power.c
@@ -10,6 +10,7 @@
#include <drm/intel/intel_pcode_regs.h>
#include <drm/intel/step.h>
+#include "intel_alpm.h"
#include "intel_backlight_regs.h"
#include "intel_cdclk.h"
#include "intel_clock_gating.h"
@@ -488,6 +489,14 @@ void intel_display_power_dc3co_compute(struct intel_atomic_state *state)
if (crtc_state->has_sel_update)
trigger |= DC3CO_TRIGGER_PSR2;
+ /*
+ * Periodic AS SDP (skip frames) needs the AS SDP to keep flowing during
+ * PR active, which is incompatible with DC3co. Keep DC3co disabled while
+ * skip frames is enabled.
+ */
+ if (intel_alpm_pr_as_sdp_skip_frames_enabled(intel_dp, crtc_state))
+ trigger = DC3CO_TRIGGER_NONE;
+
done:
intel_display_power_dc3co_update(display, trigger);
}
--
2.50.1
^ permalink raw reply related [flat|nested] 13+ messages in thread* Re: [v3 2/4] drm/i915/display: Force disable DC3co when AS SDP skip frames is enabled
2026-08-31 12:59 ` [v3 2/4] drm/i915/display: Force disable DC3co when AS SDP skip frames is enabled Uma Shankar
@ 2026-08-31 12:57 ` sashiko-bot
0 siblings, 0 replies; 13+ messages in thread
From: sashiko-bot @ 2026-08-31 12:57 UTC (permalink / raw)
To: Uma Shankar; +Cc: intel-xe, intel-gfx
Thank you for your contribution! Sashiko AI review found 4 potential issue(s) to consider:
New issues:
- [High] Divergent skip-frames logic breaks DC3co for PSR2 and LOBF due to missing usage of the new predicate in lnl_alpm_configure().
Pre-existing issues:
- [Critical] Lockless access to crtc->base.state for CRTCs outside the current atomic transaction leads to potential Use-After-Free.
- [High] Global DC3co power state computation races with concurrent atomic commits, potentially enabling DC3co incorrectly when multiple pipes are active.
- [High] intel_display_power_dc3co_update() acquires a mutex within intel_atomic_commit_tail(), which is designated as a forbidden atomic context by subsystem guidelines.
--
commit 32252d15cc26d3b3cd4283b9975d4988e8519de3
Author: Uma Shankar <uma.shankar@intel.com>
Subject: drm/i915/display: Force disable DC3co when AS SDP skip frames is enabled
This commit disables DC3co when AS SDP skip frames are enabled for Panel
Replay, as DC3co suppresses the necessary periodic AS SDP transmission. It
introduces the intel_alpm_pr_as_sdp_skip_frames_enabled() predicate and uses
it in intel_display_power_dc3co_compute() to override the trigger state.
> diff --git a/drivers/gpu/drm/i915/display/intel_alpm.c b/drivers/gpu/drm/i915/display/intel_alpm.c
> index d1f6bb82e35ef..5f635f14a5880 100644
> --- a/drivers/gpu/drm/i915/display/intel_alpm.c
> +++ b/drivers/gpu/drm/i915/display/intel_alpm.c
> @@ -404,6 +404,29 @@ static u32 intel_pr_as_sdp_skip_frames(struct intel_dp *intel_dp)
> REG_FIELD_MAX(PR_ALPM_CTL_AS_SDP_SKIP_FRAMES_MASK));
> }
>
> +/*
> + * Whether periodic AS SDP transmission (AS SDP skip frames) will be programmed
> + * for this Panel Replay config. The skip counter needs the AS SDP to keep
> + * flowing during PR active, which is incompatible with DC3co, so this is used
> + * to keep DC3co disabled while skip frames is enabled.
> + */
> +bool intel_alpm_pr_as_sdp_skip_frames_enabled(struct intel_dp *intel_dp,
> + const struct intel_crtc_state *crtc_state)
> +{
> + struct intel_display *display = to_intel_display(intel_dp);
> +
> + /*
> + * The AS SDP skip frames field only exists on Xe3LPD+. Periodic AS SDP
> + * drives the panel down to its minimum refresh rate on its own, so it is
> + * only used when VRR is not actively driving the refresh rate.
> + */
> + if (DISPLAY_VER(display) < 35 || !intel_dp->as_sdp_supported ||
> + !crtc_state->has_panel_replay || crtc_state->vrr.enable)
> + return false;
> +
> + return intel_pr_as_sdp_skip_frames(intel_dp) > 0;
> +}
> +
[Severity: High]
Does the open-coded skip_frames logic in lnl_alpm_configure() cause a state
mismatch regression by missing the has_panel_replay check?
While the newly introduced predicate correctly checks
!crtc_state->has_panel_replay, lnl_alpm_configure() directly open-codes:
if (DISPLAY_VER(display) >= 35 && !crtc_state->vrr.enable)
skip_frames = intel_pr_as_sdp_skip_frames(intel_dp);
Since this is guarded only by intel_alpm_is_alpm_aux_less() (which can be
true for LOBF alone), wouldn't it program a non-zero skip_frames and disable
DC3co in hardware, while intel_display_power_dc3co_compute() incorrectly
assumes DC3co is allowed?
> static void lnl_alpm_configure(struct intel_dp *intel_dp,
> const struct intel_crtc_state *crtc_state)
> {
[ ... ]
> diff --git a/drivers/gpu/drm/i915/display/intel_display_power.c b/drivers/gpu/drm/i915/display/intel_display_power.c
> index ee2a2bc1332b7..2e534ddb73479 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_power.c
> +++ b/drivers/gpu/drm/i915/display/intel_display_power.c
> @@ -489,6 +490,14 @@ void intel_display_power_dc3co_compute(struct intel_atomic_state *state)
> if (crtc_state->has_sel_update)
> trigger |= DC3CO_TRIGGER_PSR2;
>
> + /*
> + * Periodic AS SDP (skip frames) needs the AS SDP to keep flowing during
> + * PR active, which is incompatible with DC3co. Keep DC3co disabled while
> + * skip frames is enabled.
> + */
> + if (intel_alpm_pr_as_sdp_skip_frames_enabled(intel_dp, crtc_state))
> + trigger = DC3CO_TRIGGER_NONE;
[Severity: Critical]
This is a pre-existing issue, but does passing crtc_state here extend a
use-after-free regression?
Earlier in intel_display_power_dc3co_compute(), the code locklessly accesses
crtc->base.state for a CRTC that may not be part of the current atomic state:
crtc = intel_crtc_for_pipe(display, pipe);
crtc_state = to_intel_crtc_state(crtc->base.state);
If a concurrent atomic commit is modifying the single active CRTC,
crtc->base.state may be swapped and freed by the other thread. Now this
potentially freed state is passed into
intel_alpm_pr_as_sdp_skip_frames_enabled().
[Severity: High]
This isn't a bug introduced by this patch, but does the global DC3co power
state computation contain a race regression with concurrent atomic commits?
Earlier in this function, active_pipes is calculated locklessly:
for_each_intel_crtc(display, crtc)
active_pipes |= crtc->active ? BIT(crtc->pipe) : 0;
active_pipes = intel_calc_active_pipes(state, active_pipes);
if (hweight8(active_pipes) != 1)
goto done;
Could two concurrent commits (e.g., each disabling one of two active pipes)
both read crtc->active, miscalculate active_pipes as exactly 1, and
incorrectly proceed to enable DC3co even though 0 pipes will actually be
active?
> +
> done:
> intel_display_power_dc3co_update(display, trigger);
[Severity: High]
This is a pre-existing issue, but does intel_display_power_dc3co_update()
contain a locking regression?
This code path is called from intel_atomic_commit_tail(), which is designated
as a forbidden atomic context by DRM subsystem guidelines. However,
intel_display_power_dc3co_update() calls mutex_lock(&dc3co->lock):
void intel_display_power_dc3co_update(struct intel_display *display, u32 trigger)
{
...
mutex_lock(&dc3co->lock);
dc3co->trigger = trigger;
dc3co->allowed = !!trigger;
mutex_unlock(&dc3co->lock);
}
Is it safe to acquire a mutex here?
> }
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260831125914.1736501-1-uma.shankar@intel.com?part=2
^ permalink raw reply [flat|nested] 13+ messages in thread
* [v3 3/4] drm/i915/display: Reprogram AS SDP skip frames on seamless VRR transitions
2026-08-31 12:59 [v3 0/4] drm/i915/display: Enable AS SDP Skip Frames Uma Shankar
2026-08-31 12:59 ` [v3 1/4] drm/i915/display: Enable periodic AS SDP skip frames Uma Shankar
2026-08-31 12:59 ` [v3 2/4] drm/i915/display: Force disable DC3co when AS SDP skip frames is enabled Uma Shankar
@ 2026-08-31 12:59 ` Uma Shankar
2026-08-31 12:53 ` sashiko-bot
2026-08-31 12:59 ` [v3 4/4] drm/i915/display: Gate periodic AS SDP skip frames behind a module parameter Uma Shankar
` (4 subsequent siblings)
7 siblings, 1 reply; 13+ messages in thread
From: Uma Shankar @ 2026-08-31 12:59 UTC (permalink / raw)
To: intel-gfx, intel-xe; +Cc: dibin.moolakadan.subrahmanian, Uma Shankar
The AS SDP skip-frame count is written to PR_ALPM_CTL only from
lnl_alpm_configure(), which runs from intel_psr_enable_locked() on a
Panel Replay disabled->enabled transition. VRR, however, can be enabled
and disabled seamlessly - without a modeset and without cycling Panel
Replay (intel_crtc_vrr_enabling()/disabling() in the pipe update path).
As a result, when a panel comes up with VRR off the non-zero skip count
is programmed, and when VRR is later turned on seamlessly PR stays
enabled, lnl_alpm_configure() is not re-invoked, and the stale skip
count is left in the register. This also leaves the coupled AS SDP
transmission / DC3CO idle-protocol bits inconsistent with the DC3co
state, which is recomputed on every commit.
Factor the PR_ALPM_CTL AS SDP programming out of lnl_alpm_configure()
into intel_alpm_configure_pr_as_sdp() and expose
intel_alpm_pr_as_sdp_update(), which recomputes those fields for the
current VRR state. Call it from the seamless VRR enable and disable
sites (non-modeset only; a modeset re-runs PR enable anyway) so the skip
counter always matches whether VRR is actively driving the refresh rate.
Assisted-by: Claude:claude-opus-4-8
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
---
drivers/gpu/drm/i915/display/intel_alpm.c | 122 +++++++++++++------
drivers/gpu/drm/i915/display/intel_alpm.h | 1 +
drivers/gpu/drm/i915/display/intel_display.c | 19 ++-
3 files changed, 104 insertions(+), 38 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_alpm.c b/drivers/gpu/drm/i915/display/intel_alpm.c
index 5f635f14a588..03d5bf5c526f 100644
--- a/drivers/gpu/drm/i915/display/intel_alpm.c
+++ b/drivers/gpu/drm/i915/display/intel_alpm.c
@@ -427,6 +427,89 @@ bool intel_alpm_pr_as_sdp_skip_frames_enabled(struct intel_dp *intel_dp,
return intel_pr_as_sdp_skip_frames(intel_dp) > 0;
}
+/*
+ * Program the AS SDP portion of PR_ALPM_CTL: the transmission position, the
+ * skip-frame counter and the coupled AS SDP transmission / DC3CO idle-protocol
+ * bits. This is a full recompute of those fields (the base value is built from
+ * scratch, not read back), so it can be called both at PR enable time and when
+ * VRR is toggled seamlessly - which changes whether periodic AS SDP is used.
+ *
+ * Caller must hold intel_dp->alpm.lock.
+ */
+static void intel_alpm_configure_pr_as_sdp(struct intel_dp *intel_dp,
+ const struct intel_crtc_state *crtc_state)
+{
+ struct intel_display *display = to_intel_display(intel_dp);
+ enum transcoder cpu_transcoder = crtc_state->cpu_transcoder;
+ u32 pr_alpm_ctl = get_pr_alpm_as_sdp_transmission_time(crtc_state);
+ u32 skip_frames = 0;
+
+ /*
+ * AS SDP skip frames field only exists on Xe3LPD+, and periodic AS SDP
+ * is only used when VRR is not actively driving the refresh rate.
+ */
+ if (DISPLAY_VER(display) >= 35 && !crtc_state->vrr.enable)
+ skip_frames = intel_pr_as_sdp_skip_frames(intel_dp);
+
+ if (crtc_state->link_off_after_as_sdp_when_pr_active)
+ pr_alpm_ctl |= PR_ALPM_CTL_ALLOW_LINK_OFF_BETWEEN_AS_SDP_AND_SU;
+
+ /*
+ * Skip frames needs the AS SDP to keep flowing during PR active, so it
+ * is mutually exclusive with disabling AS SDP transmission in active and
+ * with the DC3CO idle protocol.
+ */
+ if (skip_frames) {
+ pr_alpm_ctl |= PR_ALPM_CTL_AS_SDP_SKIP_FRAMES(skip_frames);
+ pr_alpm_ctl &= ~PR_ALPM_CTL_AS_SDP_TRANSMISSION_IN_ACTIVE_DISABLE;
+ pr_alpm_ctl &= ~PR_ALPM_CTL_USE_DC3CO_IDLE_PROTOCOL;
+ } else {
+ pr_alpm_ctl &= ~PR_ALPM_CTL_AS_SDP_SKIP_FRAMES_MASK;
+
+ if (crtc_state->disable_as_sdp_when_pr_active)
+ pr_alpm_ctl |= PR_ALPM_CTL_AS_SDP_TRANSMISSION_IN_ACTIVE_DISABLE;
+
+ if (intel_display_power_dc3co_allowed(display))
+ pr_alpm_ctl |= PR_ALPM_CTL_USE_DC3CO_IDLE_PROTOCOL;
+ }
+
+ intel_de_write(display, PR_ALPM_CTL(display, cpu_transcoder), pr_alpm_ctl);
+}
+
+/*
+ * VRR can be enabled or disabled seamlessly, i.e. without a modeset and without
+ * cycling Panel Replay, so the AS SDP skip-frame programming done at PR enable
+ * time would otherwise go stale across a VRR toggle. Reprogram it here so the
+ * skip counter (and the coupled bits) matches the new VRR state.
+ */
+void intel_alpm_pr_as_sdp_update(const struct intel_crtc_state *crtc_state)
+{
+ struct intel_display *display = to_intel_display(crtc_state);
+ struct intel_encoder *encoder;
+
+ /* AS SDP skip frames field only exists on Xe3LPD+ */
+ if (DISPLAY_VER(display) < 35)
+ return;
+
+ for_each_intel_encoder_mask(display->drm, encoder,
+ crtc_state->uapi.encoder_mask) {
+ struct intel_dp *intel_dp;
+
+ if (!intel_encoder_is_dp(encoder))
+ continue;
+
+ intel_dp = enc_to_intel_dp(encoder);
+
+ if (!intel_dp->as_sdp_supported ||
+ !intel_alpm_is_alpm_aux_less(intel_dp, crtc_state))
+ continue;
+
+ mutex_lock(&intel_dp->alpm.lock);
+ intel_alpm_configure_pr_as_sdp(intel_dp, crtc_state);
+ mutex_unlock(&intel_dp->alpm.lock);
+ }
+}
+
static void lnl_alpm_configure(struct intel_dp *intel_dp,
const struct intel_crtc_state *crtc_state)
{
@@ -449,43 +532,8 @@ static void lnl_alpm_configure(struct intel_dp *intel_dp,
ALPM_CTL_AUX_LESS_SLEEP_HOLD_TIME_50_SYMBOLS |
ALPM_CTL_AUX_LESS_WAKE_TIME(crtc_state->alpm_state.aux_less_wake_lines);
- if (intel_dp->as_sdp_supported) {
- u32 pr_alpm_ctl = get_pr_alpm_as_sdp_transmission_time(crtc_state);
- u32 skip_frames = 0;
-
- /*
- * AS SDP skip frames field only exists on Xe3LPD+, and
- * periodic AS SDP is only used when VRR is not actively
- * driving the refresh rate.
- */
- if (DISPLAY_VER(display) >= 35 && !crtc_state->vrr.enable)
- skip_frames = intel_pr_as_sdp_skip_frames(intel_dp);
-
- if (crtc_state->link_off_after_as_sdp_when_pr_active)
- pr_alpm_ctl |= PR_ALPM_CTL_ALLOW_LINK_OFF_BETWEEN_AS_SDP_AND_SU;
-
- /*
- * Skip frames needs the AS SDP to keep flowing during PR
- * active, so it is mutually exclusive with disabling AS SDP
- * transmission in active and with the DC3CO idle protocol.
- */
- if (skip_frames) {
- pr_alpm_ctl |= PR_ALPM_CTL_AS_SDP_SKIP_FRAMES(skip_frames);
- pr_alpm_ctl &= ~PR_ALPM_CTL_AS_SDP_TRANSMISSION_IN_ACTIVE_DISABLE;
- pr_alpm_ctl &= ~PR_ALPM_CTL_USE_DC3CO_IDLE_PROTOCOL;
- } else {
- pr_alpm_ctl &= ~PR_ALPM_CTL_AS_SDP_SKIP_FRAMES_MASK;
-
- if (crtc_state->disable_as_sdp_when_pr_active)
- pr_alpm_ctl |= PR_ALPM_CTL_AS_SDP_TRANSMISSION_IN_ACTIVE_DISABLE;
-
- if (intel_display_power_dc3co_allowed(display))
- pr_alpm_ctl |= PR_ALPM_CTL_USE_DC3CO_IDLE_PROTOCOL;
- }
-
- intel_de_write(display, PR_ALPM_CTL(display, cpu_transcoder),
- pr_alpm_ctl);
- }
+ if (intel_dp->as_sdp_supported)
+ intel_alpm_configure_pr_as_sdp(intel_dp, crtc_state);
} else {
alpm_ctl = ALPM_CTL_EXTENDED_FAST_WAKE_ENABLE |
diff --git a/drivers/gpu/drm/i915/display/intel_alpm.h b/drivers/gpu/drm/i915/display/intel_alpm.h
index 328920027f1c..f8f605d94f96 100644
--- a/drivers/gpu/drm/i915/display/intel_alpm.h
+++ b/drivers/gpu/drm/i915/display/intel_alpm.h
@@ -36,6 +36,7 @@ bool intel_alpm_is_alpm_aux_less(struct intel_dp *intel_dp,
const struct intel_crtc_state *crtc_state);
bool intel_alpm_pr_as_sdp_skip_frames_enabled(struct intel_dp *intel_dp,
const struct intel_crtc_state *crtc_state);
+void intel_alpm_pr_as_sdp_update(const struct intel_crtc_state *crtc_state);
void intel_alpm_disable(struct intel_dp *intel_dp);
bool intel_alpm_get_error(struct intel_dp *intel_dp);
void intel_alpm_lobf_compute_config_late(struct intel_dp *intel_dp,
diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
index fc30a455bed3..d0e74378670d 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -1232,6 +1232,14 @@ static void intel_pre_plane_update(struct intel_atomic_state *state,
intel_vrr_disable(old_crtc_state);
intel_vrr_dcb_reset(old_crtc_state, crtc);
intel_crtc_update_active_timings(old_crtc_state, false);
+
+ /*
+ * VRR is being disabled seamlessly (no modeset, Panel Replay
+ * stays enabled), so re-apply the AS SDP skip-frame programming
+ * for the new (VRR off) state.
+ */
+ if (!intel_crtc_needs_modeset(new_crtc_state))
+ intel_alpm_pr_as_sdp_update(new_crtc_state);
}
if (audio_disabling(old_crtc_state, new_crtc_state))
@@ -6844,8 +6852,17 @@ static void commit_pipe_post_planes(struct intel_atomic_state *state,
HAS_DOUBLE_BUFFERED_LUT(display))
intel_color_load_luts(new_crtc_state);
- if (intel_crtc_vrr_enabling(state, crtc))
+ if (intel_crtc_vrr_enabling(state, crtc)) {
intel_vrr_enable(new_crtc_state);
+
+ /*
+ * VRR is being enabled seamlessly (no modeset, Panel Replay
+ * stays enabled), so re-apply the AS SDP skip-frame programming
+ * for the new (VRR on) state.
+ */
+ if (!modeset)
+ intel_alpm_pr_as_sdp_update(new_crtc_state);
+ }
}
static void intel_enable_crtc(struct intel_atomic_state *state,
--
2.50.1
^ permalink raw reply related [flat|nested] 13+ messages in thread* Re: [v3 3/4] drm/i915/display: Reprogram AS SDP skip frames on seamless VRR transitions
2026-08-31 12:59 ` [v3 3/4] drm/i915/display: Reprogram AS SDP skip frames on seamless VRR transitions Uma Shankar
@ 2026-08-31 12:53 ` sashiko-bot
0 siblings, 0 replies; 13+ messages in thread
From: sashiko-bot @ 2026-08-31 12:53 UTC (permalink / raw)
To: Uma Shankar; +Cc: intel-xe, intel-gfx
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [High] Sleeping function mutex_lock() is called from atomic context during seamless VRR enable.
--
commit 130854c15003f92b491f6090e85bf6bc4afe74ed
Author: Uma Shankar <uma.shankar@intel.com>
drm/i915/display: Reprogram AS SDP skip frames on seamless VRR transitions
This commit factors out AS SDP skip-frame programming and exposes
intel_alpm_pr_as_sdp_update() to recompute fields for the current VRR
state. It calls this function from seamless VRR enable and disable sites
so the skip counter matches whether VRR is actively driving the refresh rate.
> diff --git a/drivers/gpu/drm/i915/display/intel_alpm.c b/drivers/gpu/drm/i915/display/intel_alpm.c
> index 5f635f14a5880..03d5bf5c526f6 100644
> --- a/drivers/gpu/drm/i915/display/intel_alpm.c
> +++ b/drivers/gpu/drm/i915/display/intel_alpm.c
> [ ... ]
> +void intel_alpm_pr_as_sdp_update(const struct intel_crtc_state *crtc_state)
> +{
> + struct intel_display *display = to_intel_display(crtc_state);
> + struct intel_encoder *encoder;
> +
> + /* AS SDP skip frames field only exists on Xe3LPD+ */
> + if (DISPLAY_VER(display) < 35)
> + return;
> +
> + for_each_intel_encoder_mask(display->drm, encoder,
> + crtc_state->uapi.encoder_mask) {
> + struct intel_dp *intel_dp;
> +
> + if (!intel_encoder_is_dp(encoder))
> + continue;
> +
> + intel_dp = enc_to_intel_dp(encoder);
> +
> + if (!intel_dp->as_sdp_supported ||
> + !intel_alpm_is_alpm_aux_less(intel_dp, crtc_state))
> + continue;
> +
> + mutex_lock(&intel_dp->alpm.lock);
^^^^^^^^^^
[Severity: High]
Is it safe to acquire a mutex here? This function is called from
commit_pipe_post_planes() and intel_pre_plane_update() during seamless VRR
transitions.
Since these callers execute within the vblank evasion critical section,
local interrupts are disabled and we are in an atomic context:
intel_update_crtc() {
intel_pipe_update_start(state, crtc); /* Disables local interrupts */
...
commit_pipe_post_planes(state, crtc);
...
}
Calling a sleeping lock like mutex_lock() from this atomic context will
trigger a scheduling while atomic oops and can lead to a hard system
deadlock when dynamically toggling VRR on a supported display.
> + intel_alpm_configure_pr_as_sdp(intel_dp, crtc_state);
> + mutex_unlock(&intel_dp->alpm.lock);
> + }
> +}
> [ ... ]
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
> index 9dfd095f325f7..a6b776da14b3a 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> [ ... ]
> @@ -6796,8 +6804,17 @@ static void commit_pipe_post_planes(struct intel_atomic_state *state,
> HAS_DOUBLE_BUFFERED_LUT(display))
> intel_color_load_luts(new_crtc_state);
>
> - if (intel_crtc_vrr_enabling(state, crtc))
> + if (intel_crtc_vrr_enabling(state, crtc)) {
> intel_vrr_enable(new_crtc_state);
> +
> + /*
> + * VRR is being enabled seamlessly (no modeset, Panel Replay
> + * stays enabled), so re-apply the AS SDP skip-frame programming
> + * for the new (VRR on) state.
> + */
> + if (!modeset)
> + intel_alpm_pr_as_sdp_update(new_crtc_state);
> + }
> }
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260831125914.1736501-1-uma.shankar@intel.com?part=3
^ permalink raw reply [flat|nested] 13+ messages in thread
* [v3 4/4] drm/i915/display: Gate periodic AS SDP skip frames behind a module parameter
2026-08-31 12:59 [v3 0/4] drm/i915/display: Enable AS SDP Skip Frames Uma Shankar
` (2 preceding siblings ...)
2026-08-31 12:59 ` [v3 3/4] drm/i915/display: Reprogram AS SDP skip frames on seamless VRR transitions Uma Shankar
@ 2026-08-31 12:59 ` Uma Shankar
2026-08-31 12:52 ` sashiko-bot
2026-08-31 16:05 ` ✗ CI.checkpatch: warning for drm/i915/display: Enable AS SDP Skip Frames (rev4) Patchwork
` (3 subsequent siblings)
7 siblings, 1 reply; 13+ messages in thread
From: Uma Shankar @ 2026-08-31 12:59 UTC (permalink / raw)
To: intel-gfx, intel-xe; +Cc: dibin.moolakadan.subrahmanian, Uma Shankar
Periodic AS SDP (skip frames) drives a Panel Replay panel down toward its
minimum refresh rate. It is a new, panel- and platform-sensitive behaviour,
so keep it opt-in rather than enabling it unconditionally.
Add a display module parameter, periodic_assdp_enable, shared by both the
i915 and xe drivers via the intel_display_params infrastructure. It defaults
to false (feature disabled); set it to true to enable periodic AS SDP.
Gate the feature at its single choke point, intel_pr_as_sdp_skip_frames():
returning a zero skip count when the parameter is off makes both the
PR_ALPM_CTL programming (intel_alpm_configure_pr_as_sdp()) and the DC3co
force-disable predicate (intel_alpm_pr_as_sdp_skip_frames_enabled()) a no-op,
so AS SDP continues to be sent on every frame as before.
Assisted-by: Claude:claude-opus-4-8
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
---
drivers/gpu/drm/i915/display/intel_alpm.c | 5 +++++
drivers/gpu/drm/i915/display/intel_display_params.c | 6 ++++++
drivers/gpu/drm/i915/display/intel_display_params.h | 1 +
3 files changed, 12 insertions(+)
diff --git a/drivers/gpu/drm/i915/display/intel_alpm.c b/drivers/gpu/drm/i915/display/intel_alpm.c
index 03d5bf5c526f..e723fa56e4d4 100644
--- a/drivers/gpu/drm/i915/display/intel_alpm.c
+++ b/drivers/gpu/drm/i915/display/intel_alpm.c
@@ -392,11 +392,16 @@ static u32 get_pr_alpm_as_sdp_transmission_time(const struct intel_crtc_state *c
*/
static u32 intel_pr_as_sdp_skip_frames(struct intel_dp *intel_dp)
{
+ struct intel_display *display = to_intel_display(intel_dp);
const struct drm_display_info *info =
&intel_dp->attached_connector->base.display_info;
int max_vrefresh = info->monitor_range.max_vfreq;
int min_vrefresh = info->monitor_range.min_vfreq;
+ /* Off by default; gated by the periodic_assdp_enable module parameter. */
+ if (!display->params.periodic_assdp_enable)
+ return 0;
+
if (min_vrefresh <= 0 || max_vrefresh <= min_vrefresh)
return 0;
diff --git a/drivers/gpu/drm/i915/display/intel_display_params.c b/drivers/gpu/drm/i915/display/intel_display_params.c
index 2aed110c5b09..a845d29610cf 100644
--- a/drivers/gpu/drm/i915/display/intel_display_params.c
+++ b/drivers/gpu/drm/i915/display/intel_display_params.c
@@ -139,6 +139,12 @@ intel_display_param_named_unsafe(enable_dmc_wl, int, 0400,
"(-1=use per-chip default, 0=disabled, 1=enabled, 2=match any register, 3=always locked) "
"Default: -1");
+intel_display_param_named_unsafe(periodic_assdp_enable, bool, 0600,
+ "Enable periodic Adaptive-Sync SDP (AS SDP skip frames) for Panel Replay "
+ "to drive the panel down to its minimum refresh rate "
+ "(0=disabled, 1=enabled) "
+ "Default: 0");
+
__maybe_unused
static void _param_print_bool(struct drm_printer *p, const char *driver_name,
const char *name, bool val)
diff --git a/drivers/gpu/drm/i915/display/intel_display_params.h b/drivers/gpu/drm/i915/display/intel_display_params.h
index b95ecf728daa..4d912aab4811 100644
--- a/drivers/gpu/drm/i915/display/intel_display_params.h
+++ b/drivers/gpu/drm/i915/display/intel_display_params.h
@@ -50,6 +50,7 @@ struct drm_printer;
param(bool, psr_safest_params, false, 0400) \
param(bool, enable_psr2_sel_fetch, true, 0400) \
param(int, enable_dmc_wl, -1, 0400) \
+ param(bool, periodic_assdp_enable, false, 0600) \
#define MEMBER(T, member, ...) T member;
struct intel_display_params {
--
2.50.1
^ permalink raw reply related [flat|nested] 13+ messages in thread* Re: [v3 4/4] drm/i915/display: Gate periodic AS SDP skip frames behind a module parameter
2026-08-31 12:59 ` [v3 4/4] drm/i915/display: Gate periodic AS SDP skip frames behind a module parameter Uma Shankar
@ 2026-08-31 12:52 ` sashiko-bot
0 siblings, 0 replies; 13+ messages in thread
From: sashiko-bot @ 2026-08-31 12:52 UTC (permalink / raw)
To: Uma Shankar; +Cc: intel-gfx, intel-xe
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] Time-Of-Check to Time-Of-Use (TOCTOU) race condition due to evaluating a writable module parameter (`periodic_assdp_enable`) dynamically during both the `atomic_check` and `atomic_commit` phases.
--
commit c6beee35e1043bf1a9c47428a8b14e66a470f378
Author: Uma Shankar <uma.shankar@intel.com>
drm/i915/display: Gate periodic AS SDP skip frames behind a module parameter
This commit adds a periodic_assdp_enable module parameter to optionally enable
periodic AS SDP (skip frames) for Panel Replay. The feature is disabled by
default and gated dynamically inside intel_pr_as_sdp_skip_frames().
> diff --git a/drivers/gpu/drm/i915/display/intel_alpm.c b/drivers/gpu/drm/i915/display/intel_alpm.c
> --- a/drivers/gpu/drm/i915/display/intel_alpm.c
> +++ b/drivers/gpu/drm/i915/display/intel_alpm.c
[ ... ]
> @@ -392,11 +392,16 @@ static u32 get_pr_alpm_as_sdp_transmission_time(const struct intel_crtc_state *c
> */
> static u32 intel_pr_as_sdp_skip_frames(struct intel_dp *intel_dp)
> {
> + struct intel_display *display = to_intel_display(intel_dp);
> const struct drm_display_info *info =
> &intel_dp->attached_connector->base.display_info;
> int max_vrefresh = info->monitor_range.max_vfreq;
> int min_vrefresh = info->monitor_range.min_vfreq;
>
> + /* Off by default; gated by the periodic_assdp_enable module parameter. */
> + if (!display->params.periodic_assdp_enable)
> + return 0;
[Severity: Medium]
Since the module parameter is writable at runtime (0600), could reading it
dynamically here introduce a race condition between the atomic_check and
atomic_commit phases?
The commit message notes this function serves as a choke point for both the
DC3co force-disable predicate (evaluated during check phase in
intel_display_power_dc3co_compute()) and PR_ALPM_CTL programming (evaluated
during commit phase in intel_alpm_configure_pr_as_sdp()).
If a user with root privileges changes the sysfs parameter from 0 to 1 after
the check phase completes but before hardware programming begins, could
the driver program the hardware inconsistently? For example, by keeping DC3co
enabled but also enabling AS SDP skip frames, which are documented as
incompatible?
Should this parameter be read once during the atomic check phase and cached
in the crtc_state to guarantee consistency across the DRM atomic pipeline?
> +
> if (min_vrefresh <= 0 || max_vrefresh <= min_vrefresh)
> return 0;
>
> diff --git a/drivers/gpu/drm/i915/display/intel_display_params.c b/drivers/gpu/drm/i915/display/intel_display_params.c
> --- a/drivers/gpu/drm/i915/display/intel_display_params.c
> +++ b/drivers/gpu/drm/i915/display/intel_display_params.c
[ ... ]
> @@ -139,6 +139,12 @@ intel_display_param_named_unsafe(enable_dmc_wl, int, 0400,
> "(-1=use per-chip default, 0=disabled, 1=enabled, 2=match any register, 3=always locked) "
> "Default: -1");
>
> +intel_display_param_named_unsafe(periodic_assdp_enable, bool, 0600,
> + "Enable periodic Adaptive-Sync SDP (AS SDP skip frames) for Panel Replay "
> + "to drive the panel down to its minimum refresh rate "
> + "(0=disabled, 1=enabled) "
> + "Default: 0");
[Severity: Medium]
Is it intentional to expose this as a writable parameter with 0600
permissions given the potential time-of-check to time-of-use issues
mentioned above?
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260831125914.1736501-1-uma.shankar@intel.com?part=4
^ permalink raw reply [flat|nested] 13+ messages in thread
* ✗ CI.checkpatch: warning for drm/i915/display: Enable AS SDP Skip Frames (rev4)
2026-08-31 12:59 [v3 0/4] drm/i915/display: Enable AS SDP Skip Frames Uma Shankar
` (3 preceding siblings ...)
2026-08-31 12:59 ` [v3 4/4] drm/i915/display: Gate periodic AS SDP skip frames behind a module parameter Uma Shankar
@ 2026-08-31 16:05 ` Patchwork
2026-08-31 16:06 ` ✓ CI.KUnit: success " Patchwork
` (2 subsequent siblings)
7 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2026-08-31 16:05 UTC (permalink / raw)
To: Shankar, Uma; +Cc: intel-xe
== Series Details ==
Series: drm/i915/display: Enable AS SDP Skip Frames (rev4)
URL : https://patchwork.freedesktop.org/series/162015/
State : warning
== Summary ==
+ KERNEL=/kernel
+ git clone https://gitlab.freedesktop.org/drm/maintainer-tools mt
Cloning into 'mt'...
warning: redirecting to https://gitlab.freedesktop.org/drm/maintainer-tools.git/
+ git -C mt rev-list -n1 origin/master
061140b9bc586ae7f40abc1249c97e1cc72d1b9d
+ cd /kernel
+ git config --global --add safe.directory /kernel
+ git log -n1
commit eb72fabad859cb0a7efe62643fa76464863d2f27
Author: Uma Shankar <uma.shankar@intel.com>
Date: Mon Aug 31 18:29:13 2026 +0530
drm/i915/display: Gate periodic AS SDP skip frames behind a module parameter
Periodic AS SDP (skip frames) drives a Panel Replay panel down toward its
minimum refresh rate. It is a new, panel- and platform-sensitive behaviour,
so keep it opt-in rather than enabling it unconditionally.
Add a display module parameter, periodic_assdp_enable, shared by both the
i915 and xe drivers via the intel_display_params infrastructure. It defaults
to false (feature disabled); set it to true to enable periodic AS SDP.
Gate the feature at its single choke point, intel_pr_as_sdp_skip_frames():
returning a zero skip count when the parameter is off makes both the
PR_ALPM_CTL programming (intel_alpm_configure_pr_as_sdp()) and the DC3co
force-disable predicate (intel_alpm_pr_as_sdp_skip_frames_enabled()) a no-op,
so AS SDP continues to be sent on every frame as before.
Assisted-by: Claude:claude-opus-4-8
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
+ /mt/dim checkpatch 43b9a5e9d30783bb6f4d7dacdd1739184666940f drm-intel
2d9a048558cb drm/i915/display: Enable periodic AS SDP skip frames
-:118: WARNING:LONG_LINE: line length of 105 exceeds 100 columns
#118: FILE: drivers/gpu/drm/i915/display/intel_alpm.c:457:
+ pr_alpm_ctl |= PR_ALPM_CTL_AS_SDP_TRANSMISSION_IN_ACTIVE_DISABLE;
-:135: WARNING:LONG_LINE: line length of 125 exceeds 100 columns
#135: FILE: drivers/gpu/drm/i915/display/intel_psr_regs.h:280:
+#define PR_ALPM_CTL_AS_SDP_SKIP_FRAMES(frames) REG_FIELD_PREP(PR_ALPM_CTL_AS_SDP_SKIP_FRAMES_MASK, (frames))
total: 0 errors, 2 warnings, 0 checks, 85 lines checked
c1fe83898ec6 drm/i915/display: Force disable DC3co when AS SDP skip frames is enabled
3929be60a25f drm/i915/display: Reprogram AS SDP skip frames on seamless VRR transitions
eb72fabad859 drm/i915/display: Gate periodic AS SDP skip frames behind a module parameter
-:12: WARNING:COMMIT_LOG_LONG_LINE: Prefer a maximum 75 chars per line (possible unwrapped commit description?)
#12:
i915 and xe drivers via the intel_display_params infrastructure. It defaults
-:54: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#54: FILE: drivers/gpu/drm/i915/display/intel_display_params.c:143:
+intel_display_param_named_unsafe(periodic_assdp_enable, bool, 0600,
+ "Enable periodic Adaptive-Sync SDP (AS SDP skip frames) for Panel Replay "
total: 0 errors, 1 warnings, 1 checks, 35 lines checked
^ permalink raw reply [flat|nested] 13+ messages in thread* ✓ CI.KUnit: success for drm/i915/display: Enable AS SDP Skip Frames (rev4)
2026-08-31 12:59 [v3 0/4] drm/i915/display: Enable AS SDP Skip Frames Uma Shankar
` (4 preceding siblings ...)
2026-08-31 16:05 ` ✗ CI.checkpatch: warning for drm/i915/display: Enable AS SDP Skip Frames (rev4) Patchwork
@ 2026-08-31 16:06 ` Patchwork
2026-08-31 17:16 ` ✓ Xe.CI.BAT: " Patchwork
2026-08-31 20:20 ` ✓ Xe.CI.FULL: " Patchwork
7 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2026-08-31 16:06 UTC (permalink / raw)
To: Shankar, Uma; +Cc: intel-xe
== Series Details ==
Series: drm/i915/display: Enable AS SDP Skip Frames (rev4)
URL : https://patchwork.freedesktop.org/series/162015/
State : success
== Summary ==
+ trap cleanup EXIT
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/xe/.kunitconfig
[16:05:16] Configuring KUnit Kernel ...
Generating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[16:05:21] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48
[16:05:53] Starting KUnit Kernel (1/1)...
[16:05:53] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[16:05:53] ============= refcount_interrupt (4 subtests) ==============
[16:05:53] [PASSED] test_single_irq_change
[16:05:53] [PASSED] test_nested_irq_change
[16:05:53] [PASSED] test_multiple_irq_change
[16:05:53] [PASSED] test_irq_save
[16:05:53] =============== [PASSED] refcount_interrupt ================
[16:05:53] ================== guc_buf (11 subtests) ===================
[16:05:53] [PASSED] test_smallest
[16:05:53] [PASSED] test_largest
[16:05:53] [PASSED] test_granular
[16:05:53] [PASSED] test_unique
[16:05:53] [PASSED] test_overlap
[16:05:53] [PASSED] test_reusable
[16:05:53] [PASSED] test_too_big
[16:05:53] [PASSED] test_flush
[16:05:53] [PASSED] test_lookup
[16:05:53] [PASSED] test_data
[16:05:53] [PASSED] test_class
[16:05:53] ===================== [PASSED] guc_buf =====================
[16:05:53] =================== guc_dbm (7 subtests) ===================
[16:05:53] [PASSED] test_empty
[16:05:53] [PASSED] test_default
[16:05:53] ======================== test_size ========================
[16:05:53] [PASSED] 4
[16:05:53] [PASSED] 8
[16:05:53] [PASSED] 32
[16:05:53] [PASSED] 256
[16:05:53] ==================== [PASSED] test_size ====================
[16:05:53] ======================= test_reuse ========================
[16:05:53] [PASSED] 4
[16:05:53] [PASSED] 8
[16:05:53] [PASSED] 32
[16:05:53] [PASSED] 256
[16:05:53] =================== [PASSED] test_reuse ====================
[16:05:53] =================== test_range_overlap ====================
[16:05:53] [PASSED] 4
[16:05:53] [PASSED] 8
[16:05:53] [PASSED] 32
[16:05:53] [PASSED] 256
[16:05:53] =============== [PASSED] test_range_overlap ================
[16:05:53] =================== test_range_compact ====================
[16:05:53] [PASSED] 4
[16:05:53] [PASSED] 8
[16:05:53] [PASSED] 32
[16:05:53] [PASSED] 256
[16:05:53] =============== [PASSED] test_range_compact ================
[16:05:53] ==================== test_range_spare =====================
[16:05:53] [PASSED] 4
[16:05:53] [PASSED] 8
[16:05:53] [PASSED] 32
[16:05:53] [PASSED] 256
[16:05:53] ================ [PASSED] test_range_spare =================
[16:05:53] ===================== [PASSED] guc_dbm =====================
[16:05:53] =================== guc_idm (6 subtests) ===================
[16:05:53] [PASSED] bad_init
[16:05:53] [PASSED] no_init
[16:05:53] [PASSED] init_fini
[16:05:53] [PASSED] check_used
[16:05:53] [PASSED] check_quota
[16:05:53] [PASSED] check_all
[16:05:53] ===================== [PASSED] guc_idm =====================
[16:05:53] =============== guc_klv_helpers (9 subtests) ===============
[16:05:53] [PASSED] test_count
[16:05:53] [PASSED] test_encode_u32
[16:05:53] [PASSED] test_encode_u64
[16:05:53] [PASSED] test_encode_string
[16:05:53] [PASSED] test_encode_object_raw
[16:05:53] [PASSED] test_encode_object_klv
[16:05:53] [PASSED] test_encode_object_nested
[16:05:53] [PASSED] test_encode_object_basic
[16:05:53] [PASSED] test_print
[16:05:53] ================= [PASSED] guc_klv_helpers =================
[16:05:53] =================== xe_log (4 subtests) ====================
[16:05:53] [PASSED] demo_cper
[16:05:53] [PASSED] demo_dmesg
[16:05:53] ======================= test_dmesg ========================
[16:05:53] [PASSED] test_fatal
[16:05:53] [PASSED] test_fatal_tile
[16:05:53] [PASSED] test_fatal_gt
[16:05:53] [PASSED] test_fatal_comp
[16:05:53] [PASSED] test_fatal_comp_tile
[16:05:53] [PASSED] test_fatal_comp_gt
[16:05:53] [PASSED] test_fatal_all
[16:05:53] [PASSED] test_recoverable
[16:05:53] [PASSED] test_recoverable_tile
[16:05:53] [PASSED] test_recoverable_gt
[16:05:53] [PASSED] test_recoverable_comp
[16:05:53] [PASSED] test_recoverable_comp_tile
[16:05:53] [PASSED] test_recoverable_comp_gt
[16:05:53] [PASSED] test_recoverable_all
[16:05:53] [PASSED] test_info
[16:05:53] [PASSED] test_info_tile
[16:05:53] [PASSED] test_info_gt
[16:05:53] [PASSED] test_info_err
[16:05:53] [PASSED] test_info_comp
[16:05:53] [PASSED] test_info_comp_tile
[16:05:53] [PASSED] test_info_comp_gt
[16:05:53] [PASSED] test_info_all
[16:05:53] [PASSED] test_hw_fatal
[16:05:53] [PASSED] test_hw_recoverable
[16:05:53] [PASSED] test_hw_corrected
[16:05:53] [PASSED] test_hw_informational
[16:05:53] =================== [PASSED] test_dmesg ====================
[16:05:53] ====================== test_invalid =======================
[16:05:53] [SKIPPED] no-component no-location no-warn (requires CONFIG_DRM_XE_DEBUG)
[16:05:53] [SKIPPED] reserved location (requires CONFIG_DRM_XE_DEBUG)
[16:05:53] [SKIPPED] unknown location (requires CONFIG_DRM_XE_DEBUG)
[16:05:53] [SKIPPED] nonzero-device-id location (requires CONFIG_DRM_XE_DEBUG)
[16:05:53] [SKIPPED] invalid-tile-id location (requires CONFIG_DRM_XE_DEBUG)
[16:05:53] [SKIPPED] invalid-gt-id location (requires CONFIG_DRM_XE_DEBUG)
[16:05:53] [SKIPPED] unknown component class (requires CONFIG_DRM_XE_DEBUG)
[16:05:53] [SKIPPED] unknown system component (requires CONFIG_DRM_XE_DEBUG)
[16:05:53] [SKIPPED] unknown hardware component (requires CONFIG_DRM_XE_DEBUG)
[16:05:53] [SKIPPED] unknown component and location (requires CONFIG_DRM_XE_DEBUG)
[16:05:53] ================== [SKIPPED] test_invalid ==================
[16:05:53] ===================== [PASSED] xe_log ======================
[16:05:53] ================== no_relay (3 subtests) ===================
[16:05:53] [PASSED] xe_drops_guc2pf_if_not_ready
[16:05:53] [PASSED] xe_drops_guc2vf_if_not_ready
[16:05:53] [PASSED] xe_rejects_send_if_not_ready
[16:05:53] ==================== [PASSED] no_relay =====================
[16:05:53] ================== pf_relay (14 subtests) ==================
[16:05:53] [PASSED] pf_rejects_guc2pf_too_short
[16:05:53] [PASSED] pf_rejects_guc2pf_too_long
[16:05:53] [PASSED] pf_rejects_guc2pf_no_payload
[16:05:53] [PASSED] pf_fails_no_payload
[16:05:53] [PASSED] pf_fails_bad_origin
[16:05:53] [PASSED] pf_fails_bad_type
[16:05:53] [PASSED] pf_txn_reports_error
[16:05:53] [PASSED] pf_txn_sends_pf2guc
[16:05:53] [PASSED] pf_sends_pf2guc
[16:05:53] [SKIPPED] pf_loopback_nop (requires CONFIG_DRM_XE_DEBUG_SRIOV)
[16:05:53] [SKIPPED] pf_loopback_echo (requires CONFIG_DRM_XE_DEBUG_SRIOV)
[16:05:53] [SKIPPED] pf_loopback_fail (requires CONFIG_DRM_XE_DEBUG_SRIOV)
[16:05:53] [SKIPPED] pf_loopback_busy (requires CONFIG_DRM_XE_DEBUG_SRIOV)
[16:05:53] [SKIPPED] pf_loopback_retry (requires CONFIG_DRM_XE_DEBUG_SRIOV)
[16:05:53] ==================== [PASSED] pf_relay =====================
[16:05:53] ================== vf_relay (3 subtests) ===================
[16:05:53] [PASSED] vf_rejects_guc2vf_too_short
[16:05:53] [PASSED] vf_rejects_guc2vf_too_long
[16:05:53] [PASSED] vf_rejects_guc2vf_no_payload
[16:05:53] ==================== [PASSED] vf_relay =====================
[16:05:53] ================ pf_gt_config (9 subtests) =================
[16:05:53] [PASSED] fair_contexts_1vf
[16:05:53] [PASSED] fair_doorbells_1vf
[16:05:53] [PASSED] fair_ggtt_1vf
[16:05:53] ====================== fair_vram_1vf ======================
[16:05:53] [PASSED] 3.50 GiB
[16:05:53] [PASSED] 11.5 GiB
[16:05:53] [PASSED] 15.5 GiB
[16:05:53] [PASSED] 31.5 GiB
[16:05:53] [PASSED] 63.5 GiB
[16:05:53] [PASSED] 1.91 GiB
[16:05:53] ================== [PASSED] fair_vram_1vf ==================
[16:05:53] ================ fair_vram_1vf_admin_only =================
[16:05:53] [PASSED] 3.50 GiB
[16:05:53] [PASSED] 11.5 GiB
[16:05:53] [PASSED] 15.5 GiB
[16:05:53] [PASSED] 31.5 GiB
[16:05:53] [PASSED] 63.5 GiB
[16:05:53] [PASSED] 1.91 GiB
[16:05:53] ============ [PASSED] fair_vram_1vf_admin_only =============
[16:05:53] ====================== fair_contexts ======================
[16:05:53] [PASSED] 1 VF
[16:05:53] [PASSED] 2 VFs
[16:05:53] [PASSED] 3 VFs
[16:05:53] [PASSED] 4 VFs
[16:05:53] [PASSED] 5 VFs
[16:05:53] [PASSED] 6 VFs
[16:05:53] [PASSED] 7 VFs
[16:05:53] [PASSED] 8 VFs
[16:05:53] [PASSED] 9 VFs
[16:05:53] [PASSED] 10 VFs
[16:05:53] [PASSED] 11 VFs
[16:05:53] [PASSED] 12 VFs
[16:05:53] [PASSED] 13 VFs
[16:05:53] [PASSED] 14 VFs
[16:05:53] [PASSED] 15 VFs
[16:05:53] [PASSED] 16 VFs
[16:05:53] [PASSED] 17 VFs
[16:05:53] [PASSED] 18 VFs
[16:05:53] [PASSED] 19 VFs
[16:05:53] [PASSED] 20 VFs
[16:05:53] [PASSED] 21 VFs
[16:05:53] [PASSED] 22 VFs
[16:05:53] [PASSED] 23 VFs
[16:05:53] [PASSED] 24 VFs
[16:05:53] [PASSED] 25 VFs
[16:05:53] [PASSED] 26 VFs
[16:05:53] [PASSED] 27 VFs
[16:05:53] [PASSED] 28 VFs
[16:05:53] [PASSED] 29 VFs
[16:05:53] [PASSED] 30 VFs
[16:05:53] [PASSED] 31 VFs
[16:05:53] [PASSED] 32 VFs
[16:05:53] [PASSED] 33 VFs
[16:05:53] [PASSED] 34 VFs
[16:05:53] [PASSED] 35 VFs
[16:05:53] [PASSED] 36 VFs
[16:05:53] [PASSED] 37 VFs
[16:05:53] [PASSED] 38 VFs
[16:05:53] [PASSED] 39 VFs
[16:05:53] [PASSED] 40 VFs
[16:05:53] [PASSED] 41 VFs
[16:05:53] [PASSED] 42 VFs
[16:05:53] [PASSED] 43 VFs
[16:05:53] [PASSED] 44 VFs
[16:05:53] [PASSED] 45 VFs
[16:05:53] [PASSED] 46 VFs
[16:05:53] [PASSED] 47 VFs
[16:05:53] [PASSED] 48 VFs
[16:05:53] [PASSED] 49 VFs
[16:05:53] [PASSED] 50 VFs
[16:05:53] [PASSED] 51 VFs
[16:05:53] [PASSED] 52 VFs
[16:05:53] [PASSED] 53 VFs
[16:05:53] [PASSED] 54 VFs
[16:05:53] [PASSED] 55 VFs
[16:05:53] [PASSED] 56 VFs
[16:05:53] [PASSED] 57 VFs
[16:05:53] [PASSED] 58 VFs
[16:05:53] [PASSED] 59 VFs
[16:05:53] [PASSED] 60 VFs
[16:05:53] [PASSED] 61 VFs
[16:05:53] [PASSED] 62 VFs
[16:05:53] [PASSED] 63 VFs
[16:05:53] ================== [PASSED] fair_contexts ==================
[16:05:53] ===================== fair_doorbells ======================
[16:05:53] [PASSED] 1 VF
[16:05:53] [PASSED] 2 VFs
[16:05:53] [PASSED] 3 VFs
[16:05:53] [PASSED] 4 VFs
[16:05:53] [PASSED] 5 VFs
[16:05:53] [PASSED] 6 VFs
[16:05:53] [PASSED] 7 VFs
[16:05:53] [PASSED] 8 VFs
[16:05:53] [PASSED] 9 VFs
[16:05:53] [PASSED] 10 VFs
[16:05:53] [PASSED] 11 VFs
[16:05:53] [PASSED] 12 VFs
[16:05:53] [PASSED] 13 VFs
[16:05:53] [PASSED] 14 VFs
[16:05:53] [PASSED] 15 VFs
[16:05:53] [PASSED] 16 VFs
[16:05:53] [PASSED] 17 VFs
[16:05:53] [PASSED] 18 VFs
[16:05:53] [PASSED] 19 VFs
[16:05:53] [PASSED] 20 VFs
[16:05:53] [PASSED] 21 VFs
[16:05:53] [PASSED] 22 VFs
[16:05:53] [PASSED] 23 VFs
[16:05:53] [PASSED] 24 VFs
[16:05:53] [PASSED] 25 VFs
[16:05:53] [PASSED] 26 VFs
[16:05:53] [PASSED] 27 VFs
[16:05:53] [PASSED] 28 VFs
[16:05:53] [PASSED] 29 VFs
[16:05:53] [PASSED] 30 VFs
[16:05:53] [PASSED] 31 VFs
[16:05:53] [PASSED] 32 VFs
[16:05:53] [PASSED] 33 VFs
[16:05:53] [PASSED] 34 VFs
[16:05:53] [PASSED] 35 VFs
[16:05:53] [PASSED] 36 VFs
[16:05:53] [PASSED] 37 VFs
[16:05:53] [PASSED] 38 VFs
[16:05:53] [PASSED] 39 VFs
[16:05:53] [PASSED] 40 VFs
[16:05:53] [PASSED] 41 VFs
[16:05:53] [PASSED] 42 VFs
[16:05:53] [PASSED] 43 VFs
[16:05:53] [PASSED] 44 VFs
[16:05:53] [PASSED] 45 VFs
[16:05:53] [PASSED] 46 VFs
[16:05:53] [PASSED] 47 VFs
[16:05:53] [PASSED] 48 VFs
[16:05:53] [PASSED] 49 VFs
[16:05:53] [PASSED] 50 VFs
[16:05:53] [PASSED] 51 VFs
[16:05:53] [PASSED] 52 VFs
[16:05:53] [PASSED] 53 VFs
[16:05:53] [PASSED] 54 VFs
[16:05:53] [PASSED] 55 VFs
[16:05:53] [PASSED] 56 VFs
[16:05:53] [PASSED] 57 VFs
[16:05:53] [PASSED] 58 VFs
[16:05:53] [PASSED] 59 VFs
[16:05:53] [PASSED] 60 VFs
[16:05:53] [PASSED] 61 VFs
[16:05:53] [PASSED] 62 VFs
[16:05:53] [PASSED] 63 VFs
[16:05:53] ================= [PASSED] fair_doorbells ==================
[16:05:53] ======================== fair_ggtt ========================
[16:05:53] [PASSED] 1 VF
[16:05:53] [PASSED] 2 VFs
[16:05:53] [PASSED] 3 VFs
[16:05:53] [PASSED] 4 VFs
[16:05:53] [PASSED] 5 VFs
[16:05:53] [PASSED] 6 VFs
[16:05:53] [PASSED] 7 VFs
[16:05:53] [PASSED] 8 VFs
[16:05:53] [PASSED] 9 VFs
[16:05:53] [PASSED] 10 VFs
[16:05:53] [PASSED] 11 VFs
[16:05:53] [PASSED] 12 VFs
[16:05:53] [PASSED] 13 VFs
[16:05:53] [PASSED] 14 VFs
[16:05:53] [PASSED] 15 VFs
[16:05:53] [PASSED] 16 VFs
[16:05:53] [PASSED] 17 VFs
[16:05:53] [PASSED] 18 VFs
[16:05:53] [PASSED] 19 VFs
[16:05:53] [PASSED] 20 VFs
[16:05:53] [PASSED] 21 VFs
[16:05:53] [PASSED] 22 VFs
[16:05:53] [PASSED] 23 VFs
[16:05:53] [PASSED] 24 VFs
[16:05:53] [PASSED] 25 VFs
[16:05:53] [PASSED] 26 VFs
[16:05:53] [PASSED] 27 VFs
[16:05:53] [PASSED] 28 VFs
[16:05:53] [PASSED] 29 VFs
[16:05:53] [PASSED] 30 VFs
[16:05:53] [PASSED] 31 VFs
[16:05:53] [PASSED] 32 VFs
[16:05:53] [PASSED] 33 VFs
[16:05:53] [PASSED] 34 VFs
[16:05:53] [PASSED] 35 VFs
[16:05:53] [PASSED] 36 VFs
[16:05:53] [PASSED] 37 VFs
[16:05:53] [PASSED] 38 VFs
[16:05:53] [PASSED] 39 VFs
[16:05:53] [PASSED] 40 VFs
[16:05:53] [PASSED] 41 VFs
[16:05:53] [PASSED] 42 VFs
[16:05:53] [PASSED] 43 VFs
[16:05:53] [PASSED] 44 VFs
[16:05:53] [PASSED] 45 VFs
[16:05:53] [PASSED] 46 VFs
[16:05:53] [PASSED] 47 VFs
[16:05:53] [PASSED] 48 VFs
[16:05:53] [PASSED] 49 VFs
[16:05:53] [PASSED] 50 VFs
[16:05:53] [PASSED] 51 VFs
[16:05:53] [PASSED] 52 VFs
[16:05:53] [PASSED] 53 VFs
[16:05:53] [PASSED] 54 VFs
[16:05:53] [PASSED] 55 VFs
[16:05:53] [PASSED] 56 VFs
[16:05:53] [PASSED] 57 VFs
[16:05:53] [PASSED] 58 VFs
[16:05:53] [PASSED] 59 VFs
[16:05:53] [PASSED] 60 VFs
[16:05:53] [PASSED] 61 VFs
[16:05:53] [PASSED] 62 VFs
[16:05:53] [PASSED] 63 VFs
[16:05:53] ==================== [PASSED] fair_ggtt ====================
[16:05:53] ======================== fair_vram ========================
[16:05:53] [PASSED] 1 VF
[16:05:53] [PASSED] 2 VFs
[16:05:53] [PASSED] 3 VFs
[16:05:53] [PASSED] 4 VFs
[16:05:53] [PASSED] 5 VFs
[16:05:53] [PASSED] 6 VFs
[16:05:53] [PASSED] 7 VFs
[16:05:53] [PASSED] 8 VFs
[16:05:53] [PASSED] 9 VFs
[16:05:53] [PASSED] 10 VFs
[16:05:53] [PASSED] 11 VFs
[16:05:53] [PASSED] 12 VFs
[16:05:53] [PASSED] 13 VFs
[16:05:53] [PASSED] 14 VFs
[16:05:53] [PASSED] 15 VFs
[16:05:53] [PASSED] 16 VFs
[16:05:53] [PASSED] 17 VFs
[16:05:53] [PASSED] 18 VFs
[16:05:53] [PASSED] 19 VFs
[16:05:53] [PASSED] 20 VFs
[16:05:53] [PASSED] 21 VFs
[16:05:53] [PASSED] 22 VFs
[16:05:53] [PASSED] 23 VFs
[16:05:53] [PASSED] 24 VFs
[16:05:53] [PASSED] 25 VFs
[16:05:53] [PASSED] 26 VFs
[16:05:53] [PASSED] 27 VFs
[16:05:53] [PASSED] 28 VFs
[16:05:53] [PASSED] 29 VFs
[16:05:53] [PASSED] 30 VFs
[16:05:53] [PASSED] 31 VFs
[16:05:53] [PASSED] 32 VFs
[16:05:53] [PASSED] 33 VFs
[16:05:53] [PASSED] 34 VFs
[16:05:53] [PASSED] 35 VFs
[16:05:53] [PASSED] 36 VFs
[16:05:53] [PASSED] 37 VFs
[16:05:53] [PASSED] 38 VFs
[16:05:53] [PASSED] 39 VFs
[16:05:53] [PASSED] 40 VFs
[16:05:53] [PASSED] 41 VFs
[16:05:53] [PASSED] 42 VFs
[16:05:53] [PASSED] 43 VFs
[16:05:53] [PASSED] 44 VFs
[16:05:53] [PASSED] 45 VFs
[16:05:53] [PASSED] 46 VFs
[16:05:53] [PASSED] 47 VFs
[16:05:53] [PASSED] 48 VFs
[16:05:53] [PASSED] 49 VFs
[16:05:53] [PASSED] 50 VFs
[16:05:53] [PASSED] 51 VFs
[16:05:53] [PASSED] 52 VFs
[16:05:53] [PASSED] 53 VFs
[16:05:53] [PASSED] 54 VFs
[16:05:53] [PASSED] 55 VFs
[16:05:53] [PASSED] 56 VFs
[16:05:53] [PASSED] 57 VFs
[16:05:53] [PASSED] 58 VFs
[16:05:53] [PASSED] 59 VFs
[16:05:53] [PASSED] 60 VFs
[16:05:53] [PASSED] 61 VFs
[16:05:53] [PASSED] 62 VFs
[16:05:53] [PASSED] 63 VFs
[16:05:53] ==================== [PASSED] fair_vram ====================
[16:05:53] ================== [PASSED] pf_gt_config ===================
[16:05:53] ===================== lmtt (1 subtest) =====================
[16:05:53] ======================== test_ops =========================
[16:05:54] [PASSED] 2-level
[16:05:54] [PASSED] multi-level
[16:05:54] ==================== [PASSED] test_ops =====================
[16:05:54] ====================== [PASSED] lmtt =======================
[16:05:54] ================= sriov_packet (1 subtest) =================
[16:05:54] [PASSED] test_descriptor_init
[16:05:54] ================== [PASSED] sriov_packet ===================
[16:05:54] ================= pf_service (11 subtests) =================
[16:05:54] [PASSED] pf_negotiate_any
[16:05:54] [PASSED] pf_negotiate_base_match
[16:05:54] [PASSED] pf_negotiate_base_newer
[16:05:54] [PASSED] pf_negotiate_base_next
[16:05:54] [SKIPPED] pf_negotiate_base_older (no older minor)
[16:05:54] [PASSED] pf_negotiate_base_prev
[16:05:54] [PASSED] pf_negotiate_latest_match
[16:05:54] [PASSED] pf_negotiate_latest_newer
[16:05:54] [PASSED] pf_negotiate_latest_next
[16:05:54] [SKIPPED] pf_negotiate_latest_older (no older minor)
[16:05:54] [SKIPPED] pf_negotiate_latest_prev (no prev major)
[16:05:54] =================== [PASSED] pf_service ====================
[16:05:54] ================= xe_guc_g2g (2 subtests) ==================
[16:05:54] ============== xe_live_guc_g2g_kunit_default ==============
[16:05:54] ========= [SKIPPED] xe_live_guc_g2g_kunit_default ==========
[16:05:54] ============== xe_live_guc_g2g_kunit_allmem ===============
[16:05:54] ========== [SKIPPED] xe_live_guc_g2g_kunit_allmem ==========
[16:05:54] =================== [SKIPPED] xe_guc_g2g ===================
[16:05:54] =================== xe_mocs (2 subtests) ===================
[16:05:54] ================ xe_live_mocs_kernel_kunit ================
[16:05:54] =========== [SKIPPED] xe_live_mocs_kernel_kunit ============
[16:05:54] ================ xe_live_mocs_reset_kunit =================
[16:05:54] ============ [SKIPPED] xe_live_mocs_reset_kunit ============
[16:05:54] ==================== [SKIPPED] xe_mocs =====================
[16:05:54] ================= xe_migrate (2 subtests) ==================
[16:05:54] ================= xe_migrate_sanity_kunit =================
[16:05:54] ============ [SKIPPED] xe_migrate_sanity_kunit =============
[16:05:54] ================== xe_validate_ccs_kunit ==================
[16:05:54] ============= [SKIPPED] xe_validate_ccs_kunit ==============
[16:05:54] =================== [SKIPPED] xe_migrate ===================
[16:05:54] ================== xe_dma_buf (1 subtest) ==================
[16:05:54] ==================== xe_dma_buf_kunit =====================
[16:05:54] ================ [SKIPPED] xe_dma_buf_kunit ================
[16:05:54] =================== [SKIPPED] xe_dma_buf ===================
[16:05:54] ================= xe_bo_shrink (1 subtest) =================
[16:05:54] =================== xe_bo_shrink_kunit ====================
[16:05:54] =============== [SKIPPED] xe_bo_shrink_kunit ===============
[16:05:54] ================== [SKIPPED] xe_bo_shrink ==================
[16:05:54] ==================== xe_bo (2 subtests) ====================
[16:05:54] ================== xe_ccs_migrate_kunit ===================
[16:05:54] ============== [SKIPPED] xe_ccs_migrate_kunit ==============
[16:05:54] ==================== xe_bo_evict_kunit ====================
[16:05:54] =============== [SKIPPED] xe_bo_evict_kunit ================
[16:05:54] ===================== [SKIPPED] xe_bo ======================
[16:05:54] =================== xe_any (9 subtests) ====================
[16:05:54] [PASSED] test_to_xe
[16:05:54] [PASSED] test_to_dev
[16:05:54] [PASSED] test_to_pdev
[16:05:54] [PASSED] test_to_drm
[16:05:54] [PASSED] test_if_pdev
[16:05:54] [PASSED] test_if_xe
[16:05:54] [PASSED] test_if_tile
[16:05:54] [PASSED] test_if_gt
[16:05:54] [PASSED] test_to_id
[16:05:54] ===================== [PASSED] xe_any ======================
[16:05:54] ==================== args (13 subtests) ====================
[16:05:54] [PASSED] count_args_test
[16:05:54] [PASSED] call_args_example
[16:05:54] [PASSED] call_args_test
[16:05:54] [PASSED] drop_first_arg_example
[16:05:54] [PASSED] drop_first_arg_test
[16:05:54] [PASSED] first_arg_example
[16:05:54] [PASSED] first_arg_test
[16:05:54] [PASSED] last_arg_example
[16:05:54] [PASSED] last_arg_test
[16:05:54] [PASSED] pick_arg_example
[16:05:54] [PASSED] if_args_example
[16:05:54] [PASSED] if_args_test
[16:05:54] [PASSED] sep_comma_example
[16:05:54] ====================== [PASSED] args =======================
[16:05:54] =================== xe_pci (3 subtests) ====================
[16:05:54] ==================== check_graphics_ip ====================
[16:05:54] [PASSED] 12.00 Xe_LP
[16:05:54] [PASSED] 12.10 Xe_LP+
[16:05:54] [PASSED] 12.55 Xe_HPG
[16:05:54] [PASSED] 12.60 Xe_HPC
[16:05:54] [PASSED] 12.70 Xe_LPG
[16:05:54] [PASSED] 12.71 Xe_LPG
[16:05:54] [PASSED] 12.74 Xe_LPG+
[16:05:54] [PASSED] 20.01 Xe2_HPG
[16:05:54] [PASSED] 20.02 Xe2_HPG
[16:05:54] [PASSED] 20.04 Xe2_LPG
[16:05:54] [PASSED] 30.00 Xe3_LPG
[16:05:54] [PASSED] 30.01 Xe3_LPG
[16:05:54] [PASSED] 30.03 Xe3_LPG
[16:05:54] [PASSED] 30.04 Xe3_LPG
[16:05:54] [PASSED] 30.05 Xe3_LPG
[16:05:54] [PASSED] 35.10 Xe3p_LPG
[16:05:54] [PASSED] 35.11 Xe3p_XPC
[16:05:54] ================ [PASSED] check_graphics_ip ================
[16:05:54] ===================== check_media_ip ======================
[16:05:54] [PASSED] 12.00 Xe_M
[16:05:54] [PASSED] 12.55 Xe_HPM
[16:05:54] [PASSED] 13.00 Xe_LPM+
[16:05:54] [PASSED] 13.01 Xe2_HPM
[16:05:54] [PASSED] 20.00 Xe2_LPM
[16:05:54] [PASSED] 30.00 Xe3_LPM
[16:05:54] [PASSED] 30.02 Xe3_LPM
[16:05:54] [PASSED] 35.00 Xe3p_LPM
[16:05:54] [PASSED] 35.03 Xe3p_HPM
[16:05:54] ================= [PASSED] check_media_ip ==================
[16:05:54] =================== check_platform_desc ===================
[16:05:54] [PASSED] 0x9A60 (TIGERLAKE)
[16:05:54] [PASSED] 0x9A68 (TIGERLAKE)
[16:05:54] [PASSED] 0x9A70 (TIGERLAKE)
[16:05:54] [PASSED] 0x9A40 (TIGERLAKE)
[16:05:54] [PASSED] 0x9A49 (TIGERLAKE)
[16:05:54] [PASSED] 0x9A59 (TIGERLAKE)
[16:05:54] [PASSED] 0x9A78 (TIGERLAKE)
[16:05:54] [PASSED] 0x9AC0 (TIGERLAKE)
[16:05:54] [PASSED] 0x9AC9 (TIGERLAKE)
[16:05:54] [PASSED] 0x9AD9 (TIGERLAKE)
[16:05:54] [PASSED] 0x9AF8 (TIGERLAKE)
[16:05:54] [PASSED] 0x4C80 (ROCKETLAKE)
[16:05:54] [PASSED] 0x4C8A (ROCKETLAKE)
[16:05:54] [PASSED] 0x4C8B (ROCKETLAKE)
[16:05:54] [PASSED] 0x4C8C (ROCKETLAKE)
[16:05:54] [PASSED] 0x4C90 (ROCKETLAKE)
[16:05:54] [PASSED] 0x4C9A (ROCKETLAKE)
[16:05:54] [PASSED] 0x4680 (ALDERLAKE_S)
[16:05:54] [PASSED] 0x4682 (ALDERLAKE_S)
[16:05:54] [PASSED] 0x4688 (ALDERLAKE_S)
[16:05:54] [PASSED] 0x468A (ALDERLAKE_S)
[16:05:54] [PASSED] 0x468B (ALDERLAKE_S)
[16:05:54] [PASSED] 0x4690 (ALDERLAKE_S)
[16:05:54] [PASSED] 0x4692 (ALDERLAKE_S)
[16:05:54] [PASSED] 0x4693 (ALDERLAKE_S)
[16:05:54] [PASSED] 0x46A0 (ALDERLAKE_P)
[16:05:54] [PASSED] 0x46A1 (ALDERLAKE_P)
[16:05:54] [PASSED] 0x46A2 (ALDERLAKE_P)
[16:05:54] [PASSED] 0x46A3 (ALDERLAKE_P)
[16:05:54] [PASSED] 0x46A6 (ALDERLAKE_P)
[16:05:54] [PASSED] 0x46A8 (ALDERLAKE_P)
[16:05:54] [PASSED] 0x46AA (ALDERLAKE_P)
[16:05:54] [PASSED] 0x462A (ALDERLAKE_P)
[16:05:54] [PASSED] 0x4626 (ALDERLAKE_P)
[16:05:54] [PASSED] 0x4628 (ALDERLAKE_P)
[16:05:54] [PASSED] 0x46B0 (ALDERLAKE_P)
[16:05:54] [PASSED] 0x46B1 (ALDERLAKE_P)
[16:05:54] [PASSED] 0x46B2 (ALDERLAKE_P)
[16:05:54] [PASSED] 0x46B3 (ALDERLAKE_P)
[16:05:54] [PASSED] 0x46C0 (ALDERLAKE_P)
[16:05:54] [PASSED] 0x46C1 (ALDERLAKE_P)
[16:05:54] [PASSED] 0x46C2 (ALDERLAKE_P)
[16:05:54] [PASSED] 0x46C3 (ALDERLAKE_P)
[16:05:54] [PASSED] 0x46D0 (ALDERLAKE_N)
[16:05:54] [PASSED] 0x46D1 (ALDERLAKE_N)
[16:05:54] [PASSED] 0x46D2 (ALDERLAKE_N)
[16:05:54] [PASSED] 0x46D3 (ALDERLAKE_N)
[16:05:54] [PASSED] 0x46D4 (ALDERLAKE_N)
[16:05:54] [PASSED] 0xA721 (ALDERLAKE_P)
[16:05:54] [PASSED] 0xA7A1 (ALDERLAKE_P)
[16:05:54] [PASSED] 0xA7A9 (ALDERLAKE_P)
[16:05:54] [PASSED] 0xA7AC (ALDERLAKE_P)
[16:05:54] [PASSED] 0xA7AD (ALDERLAKE_P)
[16:05:54] [PASSED] 0xA720 (ALDERLAKE_P)
[16:05:54] [PASSED] 0xA7A0 (ALDERLAKE_P)
[16:05:54] [PASSED] 0xA7A8 (ALDERLAKE_P)
[16:05:54] [PASSED] 0xA7AA (ALDERLAKE_P)
[16:05:54] [PASSED] 0xA7AB (ALDERLAKE_P)
[16:05:54] [PASSED] 0xA780 (ALDERLAKE_S)
[16:05:54] [PASSED] 0xA781 (ALDERLAKE_S)
[16:05:54] [PASSED] 0xA782 (ALDERLAKE_S)
[16:05:54] [PASSED] 0xA783 (ALDERLAKE_S)
[16:05:54] [PASSED] 0xA788 (ALDERLAKE_S)
[16:05:54] [PASSED] 0xA789 (ALDERLAKE_S)
[16:05:54] [PASSED] 0xA78A (ALDERLAKE_S)
[16:05:54] [PASSED] 0xA78B (ALDERLAKE_S)
[16:05:54] [PASSED] 0x4905 (DG1)
[16:05:54] [PASSED] 0x4906 (DG1)
[16:05:54] [PASSED] 0x4907 (DG1)
[16:05:54] [PASSED] 0x4908 (DG1)
[16:05:54] [PASSED] 0x4909 (DG1)
[16:05:54] [PASSED] 0x56C0 (DG2)
[16:05:54] [PASSED] 0x56C2 (DG2)
[16:05:54] [PASSED] 0x56C1 (DG2)
[16:05:54] [PASSED] 0x7D51 (METEORLAKE)
[16:05:54] [PASSED] 0x7DD1 (METEORLAKE)
[16:05:54] [PASSED] 0x7D41 (METEORLAKE)
[16:05:54] [PASSED] 0x7D67 (METEORLAKE)
[16:05:54] [PASSED] 0xB640 (METEORLAKE)
[16:05:54] [PASSED] 0x56A0 (DG2)
[16:05:54] [PASSED] 0x56A1 (DG2)
[16:05:54] [PASSED] 0x56A2 (DG2)
[16:05:54] [PASSED] 0x56BE (DG2)
[16:05:54] [PASSED] 0x56BF (DG2)
[16:05:54] [PASSED] 0x5690 (DG2)
[16:05:54] [PASSED] 0x5691 (DG2)
[16:05:54] [PASSED] 0x5692 (DG2)
[16:05:54] [PASSED] 0x56A5 (DG2)
[16:05:54] [PASSED] 0x56A6 (DG2)
[16:05:54] [PASSED] 0x56B0 (DG2)
[16:05:54] [PASSED] 0x56B1 (DG2)
[16:05:54] [PASSED] 0x56BA (DG2)
[16:05:54] [PASSED] 0x56BB (DG2)
[16:05:54] [PASSED] 0x56BC (DG2)
[16:05:54] [PASSED] 0x56BD (DG2)
[16:05:54] [PASSED] 0x5693 (DG2)
[16:05:54] [PASSED] 0x5694 (DG2)
[16:05:54] [PASSED] 0x5695 (DG2)
[16:05:54] [PASSED] 0x56A3 (DG2)
[16:05:54] [PASSED] 0x56A4 (DG2)
[16:05:54] [PASSED] 0x56B2 (DG2)
[16:05:54] [PASSED] 0x56B3 (DG2)
[16:05:54] [PASSED] 0x5696 (DG2)
[16:05:54] [PASSED] 0x5697 (DG2)
[16:05:54] [PASSED] 0xB69 (PVC)
[16:05:54] [PASSED] 0xB6E (PVC)
[16:05:54] [PASSED] 0xBD4 (PVC)
[16:05:54] [PASSED] 0xBD5 (PVC)
[16:05:54] [PASSED] 0xBD6 (PVC)
[16:05:54] [PASSED] 0xBD7 (PVC)
[16:05:54] [PASSED] 0xBD8 (PVC)
[16:05:54] [PASSED] 0xBD9 (PVC)
[16:05:54] [PASSED] 0xBDA (PVC)
[16:05:54] [PASSED] 0xBDB (PVC)
[16:05:54] [PASSED] 0xBE0 (PVC)
[16:05:54] [PASSED] 0xBE1 (PVC)
[16:05:54] [PASSED] 0xBE5 (PVC)
[16:05:54] [PASSED] 0x7D40 (METEORLAKE)
[16:05:54] [PASSED] 0x7D45 (METEORLAKE)
[16:05:54] [PASSED] 0x7D55 (METEORLAKE)
[16:05:54] [PASSED] 0x7D60 (METEORLAKE)
[16:05:54] [PASSED] 0x7DD5 (METEORLAKE)
[16:05:54] [PASSED] 0x6420 (LUNARLAKE)
[16:05:54] [PASSED] 0x64A0 (LUNARLAKE)
[16:05:54] [PASSED] 0x64B0 (LUNARLAKE)
[16:05:54] [PASSED] 0xE202 (BATTLEMAGE)
[16:05:54] [PASSED] 0xE209 (BATTLEMAGE)
[16:05:54] [PASSED] 0xE20B (BATTLEMAGE)
[16:05:54] [PASSED] 0xE20C (BATTLEMAGE)
[16:05:54] [PASSED] 0xE20D (BATTLEMAGE)
[16:05:54] [PASSED] 0xE210 (BATTLEMAGE)
[16:05:54] [PASSED] 0xE211 (BATTLEMAGE)
[16:05:54] [PASSED] 0xE212 (BATTLEMAGE)
[16:05:54] [PASSED] 0xE216 (BATTLEMAGE)
[16:05:54] [PASSED] 0xE220 (BATTLEMAGE)
[16:05:54] [PASSED] 0xE221 (BATTLEMAGE)
[16:05:54] [PASSED] 0xE222 (BATTLEMAGE)
[16:05:54] [PASSED] 0xE223 (BATTLEMAGE)
[16:05:54] [PASSED] 0xB080 (PANTHERLAKE)
[16:05:54] [PASSED] 0xB081 (PANTHERLAKE)
[16:05:54] [PASSED] 0xB082 (PANTHERLAKE)
[16:05:54] [PASSED] 0xB083 (PANTHERLAKE)
[16:05:54] [PASSED] 0xB084 (PANTHERLAKE)
[16:05:54] [PASSED] 0xB085 (PANTHERLAKE)
[16:05:54] [PASSED] 0xB086 (PANTHERLAKE)
[16:05:54] [PASSED] 0xB087 (PANTHERLAKE)
[16:05:54] [PASSED] 0xB08F (PANTHERLAKE)
[16:05:54] [PASSED] 0xB090 (PANTHERLAKE)
[16:05:54] [PASSED] 0xB0A0 (PANTHERLAKE)
[16:05:54] [PASSED] 0xB0B0 (PANTHERLAKE)
[16:05:54] [PASSED] 0xFD80 (PANTHERLAKE)
[16:05:54] [PASSED] 0xFD81 (PANTHERLAKE)
[16:05:54] [PASSED] 0xD740 (NOVALAKE_S)
[16:05:54] [PASSED] 0xD741 (NOVALAKE_S)
[16:05:54] [PASSED] 0xD742 (NOVALAKE_S)
[16:05:54] [PASSED] 0xD743 (NOVALAKE_S)
[16:05:54] [PASSED] 0xD745 (NOVALAKE_S)
[16:05:54] [PASSED] 0xD74A (NOVALAKE_S)
[16:05:54] [PASSED] 0xD74B (NOVALAKE_S)
[16:05:54] [PASSED] 0x674C (CRESCENTISLAND)
[16:05:54] [PASSED] 0x674D (CRESCENTISLAND)
[16:05:54] [PASSED] 0x674E (CRESCENTISLAND)
[16:05:54] [PASSED] 0x674F (CRESCENTISLAND)
[16:05:54] [PASSED] 0x6750 (CRESCENTISLAND)
[16:05:54] [PASSED] 0xD750 (NOVALAKE_P)
[16:05:54] [PASSED] 0xD751 (NOVALAKE_P)
[16:05:54] [PASSED] 0xD752 (NOVALAKE_P)
[16:05:54] [PASSED] 0xD753 (NOVALAKE_P)
[16:05:54] [PASSED] 0xD754 (NOVALAKE_P)
[16:05:54] [PASSED] 0xD755 (NOVALAKE_P)
[16:05:54] [PASSED] 0xD756 (NOVALAKE_P)
[16:05:54] [PASSED] 0xD757 (NOVALAKE_P)
[16:05:54] [PASSED] 0xD75F (NOVALAKE_P)
[16:05:54] =============== [PASSED] check_platform_desc ===============
[16:05:54] ===================== [PASSED] xe_pci ======================
[16:05:54] ============= xe_rtp_tables_test (5 subtests) ==============
[16:05:54] ================== xe_rtp_table_gt_test ===================
[16:05:54] [PASSED] gt_was/14011060649
[16:05:54] [PASSED] gt_was/14011059788
[16:05:54] [PASSED] gt_was/14015795083
[16:05:54] [PASSED] gt_was/16021867713
[16:05:54] [PASSED] gt_was/14019449301
[16:05:54] [PASSED] gt_was/16028005424
[16:05:54] [PASSED] gt_was/14026578760
[16:05:54] [PASSED] gt_was/1409420604
[16:05:54] [PASSED] gt_was/1408615072
[16:05:54] [PASSED] gt_was/22010523718
[16:05:54] [PASSED] gt_was/14011006942
[16:05:54] [PASSED] gt_was/14014830051
[16:05:54] [PASSED] gt_was/18018781329
[16:05:54] [PASSED] gt_was/1509235366
[16:05:54] [PASSED] gt_was/18018781329
[16:05:54] [PASSED] gt_was/16016694945
[16:05:54] [PASSED] gt_was/14018575942
[16:05:54] [PASSED] gt_was/22016670082
[16:05:54] [PASSED] gt_was/22016670082
[16:05:54] [PASSED] gt_was/14017421178
[16:05:54] [PASSED] gt_was/16025250150
[16:05:54] [PASSED] gt_was/14021871409
[16:05:54] [PASSED] gt_was/16021865536
[16:05:54] [PASSED] gt_was/14021486841
[16:05:54] [PASSED] gt_was/14025160223
[16:05:54] [PASSED] gt_was/14026144927, 16029437861, 14026127056
[16:05:54] [PASSED] gt_was/14025635424
[16:05:54] [PASSED] gt_was/16028005424
[16:05:54] ============== [PASSED] xe_rtp_table_gt_test ===============
[16:05:54] ================== xe_rtp_table_gt_test ===================
[16:05:54] [PASSED] gt_tunings/Tuning: Blend Fill Caching Optimization Disable
[16:05:54] [PASSED] gt_tunings/Tuning: 32B Access Enable
[16:05:54] [PASSED] gt_tunings/Tuning: L3 cache
[16:05:54] [PASSED] gt_tunings/Tuning: L3 cache - media
[16:05:54] [PASSED] gt_tunings/Tuning: Compression Overfetch
[16:05:54] [PASSED] gt_tunings/Tuning: Compression Overfetch - media
[16:05:54] [PASSED] gt_tunings/Tuning: Enable compressible partial write overfetch in L3
[16:05:54] [PASSED] gt_tunings/Tuning: Enable compressible partial write overfetch in L3 - media
[16:05:54] [PASSED] gt_tunings/Tuning: L2 Overfetch Compressible Only
[16:05:54] [PASSED] gt_tunings/Tuning: L2 Overfetch Compressible Only - media
[16:05:54] [PASSED] gt_tunings/Tuning: Stateless compression control
[16:05:54] [PASSED] gt_tunings/Tuning: Stateless compression control - media
[16:05:54] [PASSED] gt_tunings/Tuning: L3 RW flush all Cache
[16:05:54] [PASSED] gt_tunings/Tuning: L3 RW flush all cache - media
[16:05:54] [PASSED] gt_tunings/Tuning: Set STLB Bank Hash Mode to 4KB
[16:05:54] ============== [PASSED] xe_rtp_table_gt_test ===============
[16:05:54] ================== xe_rtp_table_oob_test ==================
[16:05:54] [PASSED] oob_was/1607983814
[16:05:54] [PASSED] oob_was/16010904313
[16:05:54] [PASSED] oob_was/18022495364
[16:05:54] [PASSED] oob_was/22012773006
[16:05:54] [PASSED] oob_was/14014475959
[16:05:54] [PASSED] oob_was/22011391025
[16:05:54] [PASSED] oob_was/22012727170
[16:05:54] [PASSED] oob_was/22012727685
[16:05:54] [PASSED] oob_was/22016596838
[16:05:54] [PASSED] oob_was/18020744125
[16:05:54] [PASSED] oob_was/1409600907
[16:05:54] [PASSED] oob_was/22014953428
[16:05:54] [PASSED] oob_was/16017236439
[16:05:54] [PASSED] oob_was/14019821291
[16:05:54] [PASSED] oob_was/14015076503
[16:05:54] [PASSED] oob_was/14018913170
[16:05:54] [PASSED] oob_was/14018094691
[16:05:54] [PASSED] oob_was/18024947630
[16:05:54] [PASSED] oob_was/16022287689
[16:05:54] [PASSED] oob_was/13011645652
[16:05:54] [PASSED] oob_was/14022293748
[16:05:54] [PASSED] oob_was/22019794406
[16:05:54] [PASSED] oob_was/22019338487
[16:05:54] [PASSED] oob_was/16023588340
[16:05:54] [PASSED] oob_was/14019789679
[16:05:54] [PASSED] oob_was/14022866841
[16:05:54] [PASSED] oob_was/16021333562
[16:05:54] [PASSED] oob_was/14016712196
[16:05:54] [PASSED] oob_was/14015568240
[16:05:54] [PASSED] oob_was/18013179988
[16:05:54] [PASSED] oob_was/1508761755
[16:05:54] [PASSED] oob_was/16023105232
[16:05:54] [PASSED] oob_was/16026508708
[16:05:54] [PASSED] oob_was/14020001231
[16:05:54] [PASSED] oob_was/16023683509
[16:05:54] [PASSED] oob_was/14025515070
[16:05:54] [PASSED] oob_was/15015404425_disable
[16:05:54] [PASSED] oob_was/16026007364
[16:05:54] [PASSED] oob_was/14020316580
[16:05:54] [PASSED] oob_was/14025883347
[16:05:54] [PASSED] oob_was/16029380221
[16:05:54] [PASSED] oob_was/22022079272
[16:05:54] [PASSED] oob_was/16029897822
[16:05:54] [PASSED] oob_was/14027054324
[16:05:54] ============== [PASSED] xe_rtp_table_oob_test ==============
[16:05:54] ================ xe_rtp_table_dev_oob_test ================
[16:05:54] [PASSED] device_oob_was/22010954014
[16:05:54] [PASSED] device_oob_was/15015404425
[16:05:54] [PASSED] device_oob_was/22019338487_display
[16:05:54] [PASSED] device_oob_was/14022085890
[16:05:54] [PASSED] device_oob_was/14026539277
[16:05:54] [PASSED] device_oob_was/14026633728
[16:05:54] [PASSED] device_oob_was/14026746987
[16:05:54] [PASSED] device_oob_was/14026779378
[16:05:54] ============ [PASSED] xe_rtp_table_dev_oob_test ============
[16:05:54] ========== xe_rtp_table_missing_upper_bound_test ==========
[16:05:54] [PASSED] register_whitelist/WaAllowPMDepthAndInvocationCountAccessFromUMD, 1408556865
[16:05:54] [PASSED] register_whitelist/1508744258, 14012131227, 1808121037
[16:05:54] [PASSED] register_whitelist/1806527549
[16:05:54] [PASSED] register_whitelist/allow_read_ctx_timestamp
[16:05:54] [PASSED] register_whitelist/allow_read_queue_timestamp
[16:05:54] [PASSED] register_whitelist/16014440446
[16:05:54] [PASSED] register_whitelist/16017236439
[16:05:54] [PASSED] register_whitelist/16020183090
[16:05:54] [PASSED] register_whitelist/14024997852
[16:05:54] [PASSED] register_whitelist/14024997852
[16:05:54] ====== [PASSED] xe_rtp_table_missing_upper_bound_test ======
[16:05:54] =============== [PASSED] xe_rtp_tables_test ================
[16:05:54] =================== xe_rtp (3 subtests) ====================
[16:05:54] =================== xe_rtp_rules_tests ====================
[16:05:54] [PASSED] no
[16:05:54] [PASSED] yes
[16:05:54] [PASSED] no-and-no
[16:05:54] [PASSED] no-and-yes
[16:05:54] [PASSED] yes-and-no
[16:05:54] [PASSED] yes-and-yes
[16:05:54] [PASSED] no-or-no
[16:05:54] [PASSED] no-or-yes
[16:05:54] [PASSED] yes-or-no
[16:05:54] [PASSED] yes-or-yes
[16:05:54] [PASSED] no-yes-or-yes-no
[16:05:54] [PASSED] no-yes-or-yes-yes
[16:05:54] [PASSED] yes-yes-or-no-yes
[16:05:54] [PASSED] yes-yes-or-yes-yes
[16:05:54] [PASSED] no-no-or-yes-or-no
[16:05:54] [PASSED] or
[16:05:54] [PASSED] or-yes
[16:05:54] [PASSED] or-no
[16:05:54] [PASSED] yes-or
[16:05:54] [PASSED] no-or
[16:05:54] [PASSED] no-or-or-yes
[16:05:54] [PASSED] yes-or-or-no
[16:05:54] [PASSED] no-or-or-no
[16:05:54] [PASSED] missing-context-engine-class
[16:05:54] [PASSED] missing-context-engine-class-or-yes
[16:05:54] [PASSED] missing-context-engine-class-or-or-yes
[16:05:54] =============== [PASSED] xe_rtp_rules_tests ================
[16:05:54] =============== xe_rtp_process_to_sr_tests ================
[16:05:54] [PASSED] coalesce-same-reg
[16:05:54] [PASSED] coalesce-same-reg-literal-and-func
[16:05:54] [PASSED] no-match-no-add
[16:05:54] [PASSED] two-regs-two-entries
[16:05:54] [PASSED] clr-one-set-other
[16:05:54] [PASSED] set-field
[16:05:54] [PASSED] conflict-duplicate
[16:05:54] [PASSED] conflict-not-disjoint
[16:05:54] [PASSED] conflict-not-disjoint-literal-and-func
[16:05:54] [PASSED] conflict-reg-type
[16:05:54] [PASSED] bad-mcr-reg-forced-to-regular
[16:05:54] [PASSED] bad-regular-reg-forced-to-mcr
[16:05:54] =========== [PASSED] xe_rtp_process_to_sr_tests ============
[16:05:54] ================== xe_rtp_process_tests ===================
[16:05:54] [PASSED] active1
[16:05:54] [PASSED] active2
[16:05:54] [PASSED] active-inactive
[16:05:54] [PASSED] inactive-active
[16:05:54] [PASSED] inactive-active-inactive
[16:05:54] [PASSED] inactive-inactive-inactive
[16:05:54] ============== [PASSED] xe_rtp_process_tests ===============
[16:05:54] ===================== [PASSED] xe_rtp ======================
[16:05:54] ==================== xe_wa (1 subtest) =====================
[16:05:54] ======================== xe_wa_gt =========================
[16:05:54] [PASSED] TIGERLAKE B0
[16:05:54] [PASSED] DG1 A0
[16:05:54] [PASSED] DG1 B0
[16:05:54] [PASSED] ALDERLAKE_S A0
[16:05:54] [PASSED] ALDERLAKE_S B0
[16:05:54] [PASSED] ALDERLAKE_S C0
[16:05:54] [PASSED] ALDERLAKE_S D0
[16:05:54] [PASSED] ALDERLAKE_P A0
[16:05:54] [PASSED] ALDERLAKE_P B0
[16:05:54] [PASSED] ALDERLAKE_P C0
[16:05:54] [PASSED] ALDERLAKE_S RPLS D0
[16:05:54] [PASSED] ALDERLAKE_P RPLU E0
[16:05:54] [PASSED] DG2 G10 C0
[16:05:54] [PASSED] DG2 G11 B1
[16:05:54] [PASSED] DG2 G12 A1
[16:05:54] [PASSED] METEORLAKE 12.70(Xe_LPG) A0 13.00(Xe_LPM+) A0
[16:05:54] [PASSED] METEORLAKE 12.71(Xe_LPG) A0 13.00(Xe_LPM+) A0
[16:05:54] [PASSED] METEORLAKE 12.74(Xe_LPG+) A0 13.00(Xe_LPM+) A0
[16:05:54] [PASSED] LUNARLAKE 20.04(Xe2_LPG) A0 20.00(Xe2_LPM) A0
[16:05:54] [PASSED] LUNARLAKE 20.04(Xe2_LPG) B0 20.00(Xe2_LPM) A0
[16:05:54] [PASSED] BATTLEMAGE 20.01(Xe2_HPG) A0 13.01(Xe2_HPM) A1
[16:05:54] [PASSED] PANTHERLAKE 30.00(Xe3_LPG) A0 30.00(Xe3_LPM) A0
[16:05:54] ==================== [PASSED] xe_wa_gt =====================
[16:05:54] ====================== [PASSED] xe_wa ======================
[16:05:54] ============================================================
[16:05:54] Testing complete. Ran 793 tests: passed: 765, skipped: 28
[16:05:54] Elapsed time: 37.175s total, 4.392s configuring, 32.066s building, 0.687s running
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/tests/.kunitconfig
[16:05:54] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[16:05:56] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48
[16:06:20] Starting KUnit Kernel (1/1)...
[16:06:20] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[16:06:20] ============= refcount_interrupt (4 subtests) ==============
[16:06:20] [PASSED] test_single_irq_change
[16:06:20] [PASSED] test_nested_irq_change
[16:06:20] [PASSED] test_multiple_irq_change
[16:06:20] [PASSED] test_irq_save
[16:06:20] =============== [PASSED] refcount_interrupt ================
[16:06:20] ============ drm_test_pick_cmdline (2 subtests) ============
[16:06:20] [PASSED] drm_test_pick_cmdline_res_1920_1080_60
[16:06:20] =============== drm_test_pick_cmdline_named ===============
[16:06:20] [PASSED] NTSC
[16:06:20] [PASSED] NTSC-J
[16:06:20] [PASSED] PAL
[16:06:20] [PASSED] PAL-M
[16:06:20] =========== [PASSED] drm_test_pick_cmdline_named ===========
[16:06:20] ============== [PASSED] drm_test_pick_cmdline ==============
[16:06:20] == drm_test_atomic_get_connector_for_encoder (1 subtest) ===
[16:06:20] [PASSED] drm_test_drm_atomic_get_connector_for_encoder
[16:06:20] ==== [PASSED] drm_test_atomic_get_connector_for_encoder ====
[16:06:20] =========== drm_validate_clone_mode (2 subtests) ===========
[16:06:20] ============== drm_test_check_in_clone_mode ===============
[16:06:20] [PASSED] in_clone_mode
[16:06:20] [PASSED] not_in_clone_mode
[16:06:20] ========== [PASSED] drm_test_check_in_clone_mode ===========
[16:06:20] =============== drm_test_check_valid_clones ===============
[16:06:20] [PASSED] not_in_clone_mode
[16:06:20] [PASSED] valid_clone
[16:06:20] [PASSED] invalid_clone
[16:06:20] =========== [PASSED] drm_test_check_valid_clones ===========
[16:06:20] ============= [PASSED] drm_validate_clone_mode =============
[16:06:20] ============= drm_validate_modeset (1 subtest) =============
[16:06:20] [PASSED] drm_test_check_connector_changed_modeset
[16:06:20] ============== [PASSED] drm_validate_modeset ===============
[16:06:20] ====== drm_test_bridge_get_current_state (1 subtest) =======
[16:06:20] [PASSED] drm_test_drm_bridge_get_current_state_atomic
[16:06:20] ======== [PASSED] drm_test_bridge_get_current_state ========
[16:06:20] ====== drm_test_bridge_helper_reset_crtc (3 subtests) ======
[16:06:20] [PASSED] drm_test_drm_bridge_helper_reset_crtc_atomic
[16:06:20] [PASSED] drm_test_drm_bridge_helper_reset_crtc_atomic_disabled
[16:06:20] [PASSED] drm_test_drm_bridge_helper_hdmi_output_bus_fmts
[16:06:20] ======== [PASSED] drm_test_bridge_helper_reset_crtc ========
[16:06:20] ============== drm_bridge_alloc (2 subtests) ===============
[16:06:20] [PASSED] drm_test_drm_bridge_alloc_basic
[16:06:20] [PASSED] drm_test_drm_bridge_alloc_get_put
[16:06:20] ================ [PASSED] drm_bridge_alloc =================
[16:06:20] ============= drm_bridge_bus_fmt (5 subtests) ==============
[16:06:20] [PASSED] drm_test_bridge_rgb_yuv_rgb
[16:06:20] [PASSED] drm_test_bridge_must_convert_to_yuv444
[16:06:20] [PASSED] drm_test_bridge_hdmi_auto_rgb
[16:06:20] [PASSED] drm_test_bridge_auto_first
[16:06:20] [PASSED] drm_test_bridge_rgb_yuv_no_path
[16:06:20] =============== [PASSED] drm_bridge_bus_fmt ================
[16:06:20] ============= drm_cmdline_parser (40 subtests) =============
[16:06:20] [PASSED] drm_test_cmdline_force_d_only
[16:06:20] [PASSED] drm_test_cmdline_force_D_only_dvi
[16:06:20] [PASSED] drm_test_cmdline_force_D_only_hdmi
[16:06:20] [PASSED] drm_test_cmdline_force_D_only_not_digital
[16:06:20] [PASSED] drm_test_cmdline_force_e_only
[16:06:20] [PASSED] drm_test_cmdline_res
[16:06:20] [PASSED] drm_test_cmdline_res_vesa
[16:06:20] [PASSED] drm_test_cmdline_res_vesa_rblank
[16:06:20] [PASSED] drm_test_cmdline_res_rblank
[16:06:20] [PASSED] drm_test_cmdline_res_bpp
[16:06:20] [PASSED] drm_test_cmdline_res_refresh
[16:06:20] [PASSED] drm_test_cmdline_res_bpp_refresh
[16:06:20] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced
[16:06:20] [PASSED] drm_test_cmdline_res_bpp_refresh_margins
[16:06:20] [PASSED] drm_test_cmdline_res_bpp_refresh_force_off
[16:06:20] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on
[16:06:20] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_analog
[16:06:20] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_digital
[16:06:20] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced_margins_force_on
[16:06:20] [PASSED] drm_test_cmdline_res_margins_force_on
[16:06:20] [PASSED] drm_test_cmdline_res_vesa_margins
[16:06:20] [PASSED] drm_test_cmdline_name
[16:06:20] [PASSED] drm_test_cmdline_name_bpp
[16:06:20] [PASSED] drm_test_cmdline_name_option
[16:06:20] [PASSED] drm_test_cmdline_name_bpp_option
[16:06:20] [PASSED] drm_test_cmdline_rotate_0
[16:06:20] [PASSED] drm_test_cmdline_rotate_90
[16:06:20] [PASSED] drm_test_cmdline_rotate_180
[16:06:20] [PASSED] drm_test_cmdline_rotate_270
[16:06:20] [PASSED] drm_test_cmdline_hmirror
[16:06:20] [PASSED] drm_test_cmdline_vmirror
[16:06:20] [PASSED] drm_test_cmdline_margin_options
[16:06:20] [PASSED] drm_test_cmdline_multiple_options
[16:06:20] [PASSED] drm_test_cmdline_bpp_extra_and_option
[16:06:20] [PASSED] drm_test_cmdline_extra_and_option
[16:06:20] [PASSED] drm_test_cmdline_freestanding_options
[16:06:20] [PASSED] drm_test_cmdline_freestanding_force_e_and_options
[16:06:20] [PASSED] drm_test_cmdline_panel_orientation
[16:06:20] ================ drm_test_cmdline_invalid =================
[16:06:20] [PASSED] margin_only
[16:06:20] [PASSED] interlace_only
[16:06:20] [PASSED] res_missing_x
[16:06:20] [PASSED] res_missing_y
[16:06:20] [PASSED] res_bad_y
[16:06:20] [PASSED] res_missing_y_bpp
[16:06:20] [PASSED] res_bad_bpp
[16:06:20] [PASSED] res_bad_refresh
[16:06:20] [PASSED] res_bpp_refresh_force_on_off
[16:06:20] [PASSED] res_invalid_mode
[16:06:20] [PASSED] res_bpp_wrong_place_mode
[16:06:20] [PASSED] name_bpp_refresh
[16:06:20] [PASSED] name_refresh
[16:06:20] [PASSED] name_refresh_wrong_mode
[16:06:20] [PASSED] name_refresh_invalid_mode
[16:06:20] [PASSED] rotate_multiple
[16:06:20] [PASSED] rotate_invalid_val
[16:06:20] [PASSED] rotate_truncated
[16:06:20] [PASSED] invalid_option
[16:06:20] [PASSED] invalid_tv_option
[16:06:20] [PASSED] truncated_tv_option
[16:06:20] ============ [PASSED] drm_test_cmdline_invalid =============
[16:06:20] =============== drm_test_cmdline_tv_options ===============
[16:06:20] [PASSED] NTSC
[16:06:20] [PASSED] NTSC_443
[16:06:20] [PASSED] NTSC_J
[16:06:20] [PASSED] PAL
[16:06:20] [PASSED] PAL_M
[16:06:20] [PASSED] PAL_N
[16:06:20] [PASSED] SECAM
[16:06:20] [PASSED] MONO_525
[16:06:20] [PASSED] MONO_625
[16:06:20] =========== [PASSED] drm_test_cmdline_tv_options ===========
[16:06:20] =============== [PASSED] drm_cmdline_parser ================
[16:06:20] ========== drmm_connector_hdmi_init (20 subtests) ==========
[16:06:20] [PASSED] drm_test_connector_hdmi_init_valid
[16:06:20] [PASSED] drm_test_connector_hdmi_init_bpc_8
[16:06:20] [PASSED] drm_test_connector_hdmi_init_bpc_10
[16:06:20] [PASSED] drm_test_connector_hdmi_init_bpc_12
[16:06:20] [PASSED] drm_test_connector_hdmi_init_bpc_invalid
[16:06:20] [PASSED] drm_test_connector_hdmi_init_bpc_null
[16:06:20] [PASSED] drm_test_connector_hdmi_init_formats_empty
[16:06:20] [PASSED] drm_test_connector_hdmi_init_formats_no_rgb
[16:06:20] === drm_test_connector_hdmi_init_formats_yuv420_allowed ===
[16:06:20] [PASSED] supported_formats=0x9 yuv420_allowed=1
[16:06:20] [PASSED] supported_formats=0x9 yuv420_allowed=0
[16:06:20] [PASSED] supported_formats=0x5 yuv420_allowed=1
[16:06:20] [PASSED] supported_formats=0x5 yuv420_allowed=0
[16:06:20] === [PASSED] drm_test_connector_hdmi_init_formats_yuv420_allowed ===
[16:06:20] [PASSED] drm_test_connector_hdmi_init_null_ddc
[16:06:20] [PASSED] drm_test_connector_hdmi_init_null_product
[16:06:20] [PASSED] drm_test_connector_hdmi_init_null_vendor
[16:06:20] [PASSED] drm_test_connector_hdmi_init_product_length_exact
[16:06:20] [PASSED] drm_test_connector_hdmi_init_product_length_too_long
[16:06:20] [PASSED] drm_test_connector_hdmi_init_product_valid
[16:06:20] [PASSED] drm_test_connector_hdmi_init_vendor_length_exact
[16:06:20] [PASSED] drm_test_connector_hdmi_init_vendor_length_too_long
[16:06:20] [PASSED] drm_test_connector_hdmi_init_vendor_valid
[16:06:20] ========= drm_test_connector_hdmi_init_type_valid =========
[16:06:20] [PASSED] HDMI-A
[16:06:20] [PASSED] HDMI-B
[16:06:20] ===== [PASSED] drm_test_connector_hdmi_init_type_valid =====
[16:06:20] ======== drm_test_connector_hdmi_init_type_invalid ========
[16:06:20] [PASSED] Unknown
[16:06:20] [PASSED] VGA
[16:06:20] [PASSED] DVI-I
[16:06:20] [PASSED] DVI-D
[16:06:20] [PASSED] DVI-A
[16:06:20] [PASSED] Composite
[16:06:20] [PASSED] SVIDEO
[16:06:20] [PASSED] LVDS
[16:06:20] [PASSED] Component
[16:06:20] [PASSED] DIN
[16:06:20] [PASSED] DP
[16:06:20] [PASSED] TV
[16:06:20] [PASSED] eDP
[16:06:20] [PASSED] Virtual
[16:06:20] [PASSED] DSI
[16:06:20] [PASSED] DPI
[16:06:20] [PASSED] Writeback
[16:06:20] [PASSED] SPI
[16:06:20] [PASSED] USB
[16:06:20] ==== [PASSED] drm_test_connector_hdmi_init_type_invalid ====
[16:06:20] ============ [PASSED] drmm_connector_hdmi_init =============
[16:06:20] ============= drmm_connector_init (3 subtests) =============
[16:06:20] [PASSED] drm_test_drmm_connector_init
[16:06:20] [PASSED] drm_test_drmm_connector_init_null_ddc
[16:06:20] ========= drm_test_drmm_connector_init_type_valid =========
[16:06:20] [PASSED] Unknown
[16:06:20] [PASSED] VGA
[16:06:20] [PASSED] DVI-I
[16:06:20] [PASSED] DVI-D
[16:06:20] [PASSED] DVI-A
[16:06:20] [PASSED] Composite
[16:06:20] [PASSED] SVIDEO
[16:06:20] [PASSED] LVDS
[16:06:20] [PASSED] Component
[16:06:20] [PASSED] DIN
[16:06:20] [PASSED] DP
[16:06:20] [PASSED] HDMI-A
[16:06:20] [PASSED] HDMI-B
[16:06:20] [PASSED] TV
[16:06:20] [PASSED] eDP
[16:06:20] [PASSED] Virtual
[16:06:20] [PASSED] DSI
[16:06:20] [PASSED] DPI
[16:06:20] [PASSED] Writeback
[16:06:20] [PASSED] SPI
[16:06:20] [PASSED] USB
[16:06:20] ===== [PASSED] drm_test_drmm_connector_init_type_valid =====
[16:06:20] =============== [PASSED] drmm_connector_init ===============
[16:06:20] ========= drm_connector_dynamic_init (6 subtests) ==========
[16:06:20] [PASSED] drm_test_drm_connector_dynamic_init
[16:06:20] [PASSED] drm_test_drm_connector_dynamic_init_null_ddc
[16:06:20] [PASSED] drm_test_drm_connector_dynamic_init_not_added
[16:06:20] [PASSED] drm_test_drm_connector_dynamic_init_properties
[16:06:20] ===== drm_test_drm_connector_dynamic_init_type_valid ======
[16:06:20] [PASSED] Unknown
[16:06:20] [PASSED] VGA
[16:06:20] [PASSED] DVI-I
[16:06:20] [PASSED] DVI-D
[16:06:20] [PASSED] DVI-A
[16:06:20] [PASSED] Composite
[16:06:20] [PASSED] SVIDEO
[16:06:20] [PASSED] LVDS
[16:06:20] [PASSED] Component
[16:06:20] [PASSED] DIN
[16:06:20] [PASSED] DP
[16:06:20] [PASSED] HDMI-A
[16:06:20] [PASSED] HDMI-B
[16:06:20] [PASSED] TV
[16:06:20] [PASSED] eDP
[16:06:20] [PASSED] Virtual
[16:06:20] [PASSED] DSI
[16:06:20] [PASSED] DPI
[16:06:20] [PASSED] Writeback
[16:06:20] [PASSED] SPI
[16:06:20] [PASSED] USB
[16:06:20] = [PASSED] drm_test_drm_connector_dynamic_init_type_valid ==
[16:06:20] ======== drm_test_drm_connector_dynamic_init_name =========
[16:06:20] [PASSED] Unknown
[16:06:20] [PASSED] VGA
[16:06:20] [PASSED] DVI-I
[16:06:20] [PASSED] DVI-D
[16:06:20] [PASSED] DVI-A
[16:06:20] [PASSED] Composite
[16:06:20] [PASSED] SVIDEO
[16:06:20] [PASSED] LVDS
[16:06:20] [PASSED] Component
[16:06:20] [PASSED] DIN
[16:06:20] [PASSED] DP
[16:06:20] [PASSED] HDMI-A
[16:06:20] [PASSED] HDMI-B
[16:06:20] [PASSED] TV
[16:06:20] [PASSED] eDP
[16:06:20] [PASSED] Virtual
[16:06:20] [PASSED] DSI
[16:06:20] [PASSED] DPI
[16:06:20] [PASSED] Writeback
[16:06:20] [PASSED] SPI
[16:06:20] [PASSED] USB
[16:06:20] ==== [PASSED] drm_test_drm_connector_dynamic_init_name =====
[16:06:20] =========== [PASSED] drm_connector_dynamic_init ============
[16:06:20] ==== drm_connector_dynamic_register_early (4 subtests) =====
[16:06:20] [PASSED] drm_test_drm_connector_dynamic_register_early_on_list
[16:06:20] [PASSED] drm_test_drm_connector_dynamic_register_early_defer
[16:06:20] [PASSED] drm_test_drm_connector_dynamic_register_early_no_init
[16:06:20] [PASSED] drm_test_drm_connector_dynamic_register_early_no_mode_object
[16:06:20] ====== [PASSED] drm_connector_dynamic_register_early =======
[16:06:20] ======= drm_connector_dynamic_register (7 subtests) ========
[16:06:20] [PASSED] drm_test_drm_connector_dynamic_register_on_list
[16:06:20] [PASSED] drm_test_drm_connector_dynamic_register_no_defer
[16:06:20] [PASSED] drm_test_drm_connector_dynamic_register_no_init
[16:06:20] [PASSED] drm_test_drm_connector_dynamic_register_mode_object
[16:06:20] [PASSED] drm_test_drm_connector_dynamic_register_sysfs
[16:06:20] [PASSED] drm_test_drm_connector_dynamic_register_sysfs_name
[16:06:20] [PASSED] drm_test_drm_connector_dynamic_register_debugfs
[16:06:20] ========= [PASSED] drm_connector_dynamic_register ==========
[16:06:20] = drm_connector_attach_broadcast_rgb_property (2 subtests) =
[16:06:20] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property
[16:06:20] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property_hdmi_connector
[16:06:20] === [PASSED] drm_connector_attach_broadcast_rgb_property ===
[16:06:20] ========== drm_get_tv_mode_from_name (2 subtests) ==========
[16:06:20] ========== drm_test_get_tv_mode_from_name_valid ===========
[16:06:20] [PASSED] NTSC
[16:06:20] [PASSED] NTSC-443
[16:06:20] [PASSED] NTSC-J
[16:06:20] [PASSED] PAL
[16:06:20] [PASSED] PAL-M
[16:06:20] [PASSED] PAL-N
[16:06:20] [PASSED] SECAM
[16:06:20] [PASSED] Mono
[16:06:20] ====== [PASSED] drm_test_get_tv_mode_from_name_valid =======
[16:06:20] [PASSED] drm_test_get_tv_mode_from_name_truncated
[16:06:20] ============ [PASSED] drm_get_tv_mode_from_name ============
[16:06:20] = drm_test_connector_hdmi_compute_mode_clock (12 subtests) =
[16:06:20] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb
[16:06:20] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc
[16:06:20] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc_vic_1
[16:06:20] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc
[16:06:20] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc_vic_1
[16:06:20] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_double
[16:06:20] = drm_test_connector_hdmi_compute_mode_clock_yuv420_valid =
[16:06:20] [PASSED] VIC 96
[16:06:20] [PASSED] VIC 97
[16:06:20] [PASSED] VIC 101
[16:06:20] [PASSED] VIC 102
[16:06:20] [PASSED] VIC 106
[16:06:20] [PASSED] VIC 107
[16:06:20] === [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_valid ===
[16:06:20] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_10_bpc
[16:06:20] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_12_bpc
[16:06:20] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_8_bpc
[16:06:20] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_10_bpc
[16:06:20] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_12_bpc
[16:06:20] === [PASSED] drm_test_connector_hdmi_compute_mode_clock ====
[16:06:20] == drm_hdmi_connector_get_broadcast_rgb_name (2 subtests) ==
[16:06:20] === drm_test_drm_hdmi_connector_get_broadcast_rgb_name ====
[16:06:20] [PASSED] Automatic
[16:06:20] [PASSED] Full
[16:06:20] [PASSED] Limited 16:235
[16:06:20] === [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name ===
[16:06:20] [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name_invalid
[16:06:20] ==== [PASSED] drm_hdmi_connector_get_broadcast_rgb_name ====
[16:06:20] == drm_hdmi_connector_get_output_format_name (2 subtests) ==
[16:06:20] === drm_test_drm_hdmi_connector_get_output_format_name ====
[16:06:20] [PASSED] RGB
[16:06:20] [PASSED] YUV 4:2:0
[16:06:20] [PASSED] YUV 4:2:2
[16:06:20] [PASSED] YUV 4:4:4
[16:06:20] === [PASSED] drm_test_drm_hdmi_connector_get_output_format_name ===
[16:06:20] [PASSED] drm_test_drm_hdmi_connector_get_output_format_name_invalid
[16:06:20] ==== [PASSED] drm_hdmi_connector_get_output_format_name ====
[16:06:20] ============= drm_damage_helper (21 subtests) ==============
[16:06:20] [PASSED] drm_test_damage_iter_no_damage
[16:06:20] [PASSED] drm_test_damage_iter_no_damage_fractional_src
[16:06:20] [PASSED] drm_test_damage_iter_no_damage_src_moved
[16:06:20] [PASSED] drm_test_damage_iter_no_damage_fractional_src_moved
[16:06:20] [PASSED] drm_test_damage_iter_no_damage_not_visible
[16:06:20] [PASSED] drm_test_damage_iter_no_damage_no_crtc
[16:06:20] [PASSED] drm_test_damage_iter_no_damage_no_fb
[16:06:20] [PASSED] drm_test_damage_iter_simple_damage
[16:06:21] [PASSED] drm_test_damage_iter_single_damage
[16:06:21] [PASSED] drm_test_damage_iter_single_damage_intersect_src
[16:06:21] [PASSED] drm_test_damage_iter_single_damage_outside_src
[16:06:21] [PASSED] drm_test_damage_iter_single_damage_fractional_src
[16:06:21] [PASSED] drm_test_damage_iter_single_damage_intersect_fractional_src
[16:06:21] [PASSED] drm_test_damage_iter_single_damage_outside_fractional_src
[16:06:21] [PASSED] drm_test_damage_iter_single_damage_src_moved
[16:06:21] [PASSED] drm_test_damage_iter_single_damage_fractional_src_moved
[16:06:21] [PASSED] drm_test_damage_iter_damage
[16:06:21] [PASSED] drm_test_damage_iter_damage_one_intersect
[16:06:21] [PASSED] drm_test_damage_iter_damage_one_outside
[16:06:21] [PASSED] drm_test_damage_iter_damage_src_moved
[16:06:21] [PASSED] drm_test_damage_iter_damage_not_visible
[16:06:21] ================ [PASSED] drm_damage_helper ================
[16:06:21] ============== drm_dp_mst_helper (3 subtests) ==============
[16:06:21] ============== drm_test_dp_mst_calc_pbn_mode ==============
[16:06:21] [PASSED] Clock 154000 BPP 30 DSC disabled
[16:06:21] [PASSED] Clock 234000 BPP 30 DSC disabled
[16:06:21] [PASSED] Clock 297000 BPP 24 DSC disabled
[16:06:21] [PASSED] Clock 332880 BPP 24 DSC enabled
[16:06:21] [PASSED] Clock 324540 BPP 24 DSC enabled
[16:06:21] ========== [PASSED] drm_test_dp_mst_calc_pbn_mode ==========
[16:06:21] ============== drm_test_dp_mst_calc_pbn_div ===============
[16:06:21] [PASSED] Link rate 2000000 lane count 4
[16:06:21] [PASSED] Link rate 2000000 lane count 2
[16:06:21] [PASSED] Link rate 2000000 lane count 1
[16:06:21] [PASSED] Link rate 1350000 lane count 4
[16:06:21] [PASSED] Link rate 1350000 lane count 2
[16:06:21] [PASSED] Link rate 1350000 lane count 1
[16:06:21] [PASSED] Link rate 1000000 lane count 4
[16:06:21] [PASSED] Link rate 1000000 lane count 2
[16:06:21] [PASSED] Link rate 1000000 lane count 1
[16:06:21] [PASSED] Link rate 810000 lane count 4
[16:06:21] [PASSED] Link rate 810000 lane count 2
[16:06:21] [PASSED] Link rate 810000 lane count 1
[16:06:21] [PASSED] Link rate 540000 lane count 4
[16:06:21] [PASSED] Link rate 540000 lane count 2
[16:06:21] [PASSED] Link rate 540000 lane count 1
[16:06:21] [PASSED] Link rate 270000 lane count 4
[16:06:21] [PASSED] Link rate 270000 lane count 2
[16:06:21] [PASSED] Link rate 270000 lane count 1
[16:06:21] [PASSED] Link rate 162000 lane count 4
[16:06:21] [PASSED] Link rate 162000 lane count 2
[16:06:21] [PASSED] Link rate 162000 lane count 1
[16:06:21] ========== [PASSED] drm_test_dp_mst_calc_pbn_div ===========
[16:06:21] ========= drm_test_dp_mst_sideband_msg_req_decode =========
[16:06:21] [PASSED] DP_ENUM_PATH_RESOURCES with port number
[16:06:21] [PASSED] DP_POWER_UP_PHY with port number
[16:06:21] [PASSED] DP_POWER_DOWN_PHY with port number
[16:06:21] [PASSED] DP_ALLOCATE_PAYLOAD with SDP stream sinks
[16:06:21] [PASSED] DP_ALLOCATE_PAYLOAD with port number
[16:06:21] [PASSED] DP_ALLOCATE_PAYLOAD with VCPI
[16:06:21] [PASSED] DP_ALLOCATE_PAYLOAD with PBN
[16:06:21] [PASSED] DP_QUERY_PAYLOAD with port number
[16:06:21] [PASSED] DP_QUERY_PAYLOAD with VCPI
[16:06:21] [PASSED] DP_REMOTE_DPCD_READ with port number
[16:06:21] [PASSED] DP_REMOTE_DPCD_READ with DPCD address
[16:06:21] [PASSED] DP_REMOTE_DPCD_READ with max number of bytes
[16:06:21] [PASSED] DP_REMOTE_DPCD_WRITE with port number
[16:06:21] [PASSED] DP_REMOTE_DPCD_WRITE with DPCD address
[16:06:21] [PASSED] DP_REMOTE_DPCD_WRITE with data array
[16:06:21] [PASSED] DP_REMOTE_I2C_READ with port number
[16:06:21] [PASSED] DP_REMOTE_I2C_READ with I2C device ID
[16:06:21] [PASSED] DP_REMOTE_I2C_READ with transactions array
[16:06:21] [PASSED] DP_REMOTE_I2C_WRITE with port number
[16:06:21] [PASSED] DP_REMOTE_I2C_WRITE with I2C device ID
[16:06:21] [PASSED] DP_REMOTE_I2C_WRITE with data array
[16:06:21] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream ID
[16:06:21] [PASSED] DP_QUERY_STREAM_ENC_STATUS with client ID
[16:06:21] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream event
[16:06:21] [PASSED] DP_QUERY_STREAM_ENC_STATUS with valid stream event
[16:06:21] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream behavior
[16:06:21] [PASSED] DP_QUERY_STREAM_ENC_STATUS with a valid stream behavior
[16:06:21] ===== [PASSED] drm_test_dp_mst_sideband_msg_req_decode =====
[16:06:21] ================ [PASSED] drm_dp_mst_helper ================
[16:06:21] ================== drm_exec (7 subtests) ===================
[16:06:21] [PASSED] sanitycheck
[16:06:21] [PASSED] test_lock
[16:06:21] [PASSED] test_lock_unlock
[16:06:21] [PASSED] test_duplicates
[16:06:21] [PASSED] test_prepare
[16:06:21] [PASSED] test_prepare_array
[16:06:21] [PASSED] test_multiple_loops
[16:06:21] ==================== [PASSED] drm_exec =====================
[16:06:21] =========== drm_format_helper_test (17 subtests) ===========
[16:06:21] ============== drm_test_fb_xrgb8888_to_gray8 ==============
[16:06:21] [PASSED] single_pixel_source_buffer
[16:06:21] [PASSED] single_pixel_clip_rectangle
[16:06:21] [PASSED] well_known_colors
[16:06:21] [PASSED] destination_pitch
[16:06:21] ========== [PASSED] drm_test_fb_xrgb8888_to_gray8 ==========
[16:06:21] ============= drm_test_fb_xrgb8888_to_rgb332 ==============
[16:06:21] [PASSED] single_pixel_source_buffer
[16:06:21] [PASSED] single_pixel_clip_rectangle
[16:06:21] [PASSED] well_known_colors
[16:06:21] [PASSED] destination_pitch
[16:06:21] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb332 ==========
[16:06:21] ============= drm_test_fb_xrgb8888_to_rgb565 ==============
[16:06:21] [PASSED] single_pixel_source_buffer
[16:06:21] [PASSED] single_pixel_clip_rectangle
[16:06:21] [PASSED] well_known_colors
[16:06:21] [PASSED] destination_pitch
[16:06:21] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb565 ==========
[16:06:21] ============ drm_test_fb_xrgb8888_to_xrgb1555 =============
[16:06:21] [PASSED] single_pixel_source_buffer
[16:06:21] [PASSED] single_pixel_clip_rectangle
[16:06:21] [PASSED] well_known_colors
[16:06:21] [PASSED] destination_pitch
[16:06:21] ======== [PASSED] drm_test_fb_xrgb8888_to_xrgb1555 =========
[16:06:21] ============ drm_test_fb_xrgb8888_to_argb1555 =============
[16:06:21] [PASSED] single_pixel_source_buffer
[16:06:21] [PASSED] single_pixel_clip_rectangle
[16:06:21] [PASSED] well_known_colors
[16:06:21] [PASSED] destination_pitch
[16:06:21] ======== [PASSED] drm_test_fb_xrgb8888_to_argb1555 =========
[16:06:21] ============ drm_test_fb_xrgb8888_to_rgba5551 =============
[16:06:21] [PASSED] single_pixel_source_buffer
[16:06:21] [PASSED] single_pixel_clip_rectangle
[16:06:21] [PASSED] well_known_colors
[16:06:21] [PASSED] destination_pitch
[16:06:21] ======== [PASSED] drm_test_fb_xrgb8888_to_rgba5551 =========
[16:06:21] ============= drm_test_fb_xrgb8888_to_rgb888 ==============
[16:06:21] [PASSED] single_pixel_source_buffer
[16:06:21] [PASSED] single_pixel_clip_rectangle
[16:06:21] [PASSED] well_known_colors
[16:06:21] [PASSED] destination_pitch
[16:06:21] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb888 ==========
[16:06:21] ============= drm_test_fb_xrgb8888_to_bgr888 ==============
[16:06:21] [PASSED] single_pixel_source_buffer
[16:06:21] [PASSED] single_pixel_clip_rectangle
[16:06:21] [PASSED] well_known_colors
[16:06:21] [PASSED] destination_pitch
[16:06:21] ========= [PASSED] drm_test_fb_xrgb8888_to_bgr888 ==========
[16:06:21] ============ drm_test_fb_xrgb8888_to_argb8888 =============
[16:06:21] [PASSED] single_pixel_source_buffer
[16:06:21] [PASSED] single_pixel_clip_rectangle
[16:06:21] [PASSED] well_known_colors
[16:06:21] [PASSED] destination_pitch
[16:06:21] ======== [PASSED] drm_test_fb_xrgb8888_to_argb8888 =========
[16:06:21] =========== drm_test_fb_xrgb8888_to_xrgb2101010 ===========
[16:06:21] [PASSED] single_pixel_source_buffer
[16:06:21] [PASSED] single_pixel_clip_rectangle
[16:06:21] [PASSED] well_known_colors
[16:06:21] [PASSED] destination_pitch
[16:06:21] ======= [PASSED] drm_test_fb_xrgb8888_to_xrgb2101010 =======
[16:06:21] =========== drm_test_fb_xrgb8888_to_argb2101010 ===========
[16:06:21] [PASSED] single_pixel_source_buffer
[16:06:21] [PASSED] single_pixel_clip_rectangle
[16:06:21] [PASSED] well_known_colors
[16:06:21] [PASSED] destination_pitch
[16:06:21] ======= [PASSED] drm_test_fb_xrgb8888_to_argb2101010 =======
[16:06:21] ============== drm_test_fb_xrgb8888_to_mono ===============
[16:06:21] [PASSED] single_pixel_source_buffer
[16:06:21] [PASSED] single_pixel_clip_rectangle
[16:06:21] [PASSED] well_known_colors
[16:06:21] [PASSED] destination_pitch
[16:06:21] ========== [PASSED] drm_test_fb_xrgb8888_to_mono ===========
[16:06:21] ==================== drm_test_fb_swab =====================
[16:06:21] [PASSED] single_pixel_source_buffer
[16:06:21] [PASSED] single_pixel_clip_rectangle
[16:06:21] [PASSED] well_known_colors
[16:06:21] [PASSED] destination_pitch
[16:06:21] ================ [PASSED] drm_test_fb_swab =================
[16:06:21] ============ drm_test_fb_xrgb8888_to_xbgr8888 =============
[16:06:21] [PASSED] single_pixel_source_buffer
[16:06:21] [PASSED] single_pixel_clip_rectangle
[16:06:21] [PASSED] well_known_colors
[16:06:21] [PASSED] destination_pitch
[16:06:21] ======== [PASSED] drm_test_fb_xrgb8888_to_xbgr8888 =========
[16:06:21] ============ drm_test_fb_xrgb8888_to_abgr8888 =============
[16:06:21] [PASSED] single_pixel_source_buffer
[16:06:21] [PASSED] single_pixel_clip_rectangle
[16:06:21] [PASSED] well_known_colors
[16:06:21] [PASSED] destination_pitch
[16:06:21] ======== [PASSED] drm_test_fb_xrgb8888_to_abgr8888 =========
[16:06:21] ================= drm_test_fb_clip_offset =================
[16:06:21] [PASSED] pass through
[16:06:21] [PASSED] horizontal offset
[16:06:21] [PASSED] vertical offset
[16:06:21] [PASSED] horizontal and vertical offset
[16:06:21] [PASSED] horizontal offset (custom pitch)
[16:06:21] [PASSED] vertical offset (custom pitch)
[16:06:21] [PASSED] horizontal and vertical offset (custom pitch)
[16:06:21] ============= [PASSED] drm_test_fb_clip_offset =============
[16:06:21] =================== drm_test_fb_memcpy ====================
[16:06:21] [PASSED] single_pixel_source_buffer: XR24 little-endian (0x34325258)
[16:06:21] [PASSED] single_pixel_source_buffer: XRA8 little-endian (0x38415258)
[16:06:21] [PASSED] single_pixel_source_buffer: YU24 little-endian (0x34325559)
[16:06:21] [PASSED] single_pixel_clip_rectangle: XB24 little-endian (0x34324258)
[16:06:21] [PASSED] single_pixel_clip_rectangle: XRA8 little-endian (0x38415258)
[16:06:21] [PASSED] single_pixel_clip_rectangle: YU24 little-endian (0x34325559)
[16:06:21] [PASSED] well_known_colors: XB24 little-endian (0x34324258)
[16:06:21] [PASSED] well_known_colors: XRA8 little-endian (0x38415258)
[16:06:21] [PASSED] well_known_colors: YU24 little-endian (0x34325559)
[16:06:21] [PASSED] destination_pitch: XB24 little-endian (0x34324258)
[16:06:21] [PASSED] destination_pitch: XRA8 little-endian (0x38415258)
[16:06:21] [PASSED] destination_pitch: YU24 little-endian (0x34325559)
[16:06:21] =============== [PASSED] drm_test_fb_memcpy ================
[16:06:21] ============= [PASSED] drm_format_helper_test ==============
[16:06:21] ================= drm_format (18 subtests) =================
[16:06:21] [PASSED] drm_test_format_block_width_invalid
[16:06:21] [PASSED] drm_test_format_block_width_one_plane
[16:06:21] [PASSED] drm_test_format_block_width_two_plane
[16:06:21] [PASSED] drm_test_format_block_width_three_plane
[16:06:21] [PASSED] drm_test_format_block_width_tiled
[16:06:21] [PASSED] drm_test_format_block_height_invalid
[16:06:21] [PASSED] drm_test_format_block_height_one_plane
[16:06:21] [PASSED] drm_test_format_block_height_two_plane
[16:06:21] [PASSED] drm_test_format_block_height_three_plane
[16:06:21] [PASSED] drm_test_format_block_height_tiled
[16:06:21] [PASSED] drm_test_format_min_pitch_invalid
[16:06:21] [PASSED] drm_test_format_min_pitch_one_plane_8bpp
[16:06:21] [PASSED] drm_test_format_min_pitch_one_plane_16bpp
[16:06:21] [PASSED] drm_test_format_min_pitch_one_plane_24bpp
[16:06:21] [PASSED] drm_test_format_min_pitch_one_plane_32bpp
[16:06:21] [PASSED] drm_test_format_min_pitch_two_plane
[16:06:21] [PASSED] drm_test_format_min_pitch_three_plane_8bpp
[16:06:21] [PASSED] drm_test_format_min_pitch_tiled
[16:06:21] =================== [PASSED] drm_format ====================
[16:06:21] ============== drm_framebuffer (10 subtests) ===============
[16:06:21] ========== drm_test_framebuffer_check_src_coords ==========
[16:06:21] [PASSED] Success: source fits into fb
[16:06:21] [PASSED] Fail: overflowing fb with x-axis coordinate
[16:06:21] [PASSED] Fail: overflowing fb with y-axis coordinate
[16:06:21] [PASSED] Fail: overflowing fb with source width
[16:06:21] [PASSED] Fail: overflowing fb with source height
[16:06:21] ====== [PASSED] drm_test_framebuffer_check_src_coords ======
[16:06:21] [PASSED] drm_test_framebuffer_cleanup
[16:06:21] =============== drm_test_framebuffer_create ===============
[16:06:21] [PASSED] ABGR8888 normal sizes
[16:06:21] [PASSED] ABGR8888 max sizes
[16:06:21] [PASSED] ABGR8888 pitch greater than min required
[16:06:21] [PASSED] ABGR8888 pitch less than min required
[16:06:21] [PASSED] ABGR8888 Invalid width
[16:06:21] [PASSED] ABGR8888 Invalid buffer handle
[16:06:21] [PASSED] No pixel format
[16:06:21] [PASSED] ABGR8888 Width 0
[16:06:21] [PASSED] ABGR8888 Height 0
[16:06:21] [PASSED] ABGR8888 Out of bound height * pitch combination
[16:06:21] [PASSED] ABGR8888 Large buffer offset
[16:06:21] [PASSED] ABGR8888 Buffer offset for inexistent plane
[16:06:21] [PASSED] ABGR8888 Invalid flag
[16:06:21] [PASSED] ABGR8888 Set DRM_MODE_FB_MODIFIERS without modifiers
[16:06:21] [PASSED] ABGR8888 Valid buffer modifier
[16:06:21] [PASSED] ABGR8888 Invalid buffer modifier(DRM_FORMAT_MOD_SAMSUNG_64_32_TILE)
[16:06:21] [PASSED] ABGR8888 Extra pitches without DRM_MODE_FB_MODIFIERS
[16:06:21] [PASSED] ABGR8888 Extra pitches with DRM_MODE_FB_MODIFIERS
[16:06:21] [PASSED] NV12 Normal sizes
[16:06:21] [PASSED] NV12 Max sizes
[16:06:21] [PASSED] NV12 Invalid pitch
[16:06:21] [PASSED] NV12 Invalid modifier/missing DRM_MODE_FB_MODIFIERS flag
[16:06:21] [PASSED] NV12 different modifier per-plane
[16:06:21] [PASSED] NV12 with DRM_FORMAT_MOD_SAMSUNG_64_32_TILE
[16:06:21] [PASSED] NV12 Valid modifiers without DRM_MODE_FB_MODIFIERS
[16:06:21] [PASSED] NV12 Modifier for inexistent plane
[16:06:21] [PASSED] NV12 Handle for inexistent plane
[16:06:21] [PASSED] NV12 Handle for inexistent plane without DRM_MODE_FB_MODIFIERS
[16:06:21] [PASSED] YVU420 DRM_MODE_FB_MODIFIERS set without modifier
[16:06:21] [PASSED] YVU420 Normal sizes
[16:06:21] [PASSED] YVU420 Max sizes
[16:06:21] [PASSED] YVU420 Invalid pitch
[16:06:21] [PASSED] YVU420 Different pitches
[16:06:21] [PASSED] YVU420 Different buffer offsets/pitches
[16:06:21] [PASSED] YVU420 Modifier set just for plane 0, without DRM_MODE_FB_MODIFIERS
[16:06:21] [PASSED] YVU420 Modifier set just for planes 0, 1, without DRM_MODE_FB_MODIFIERS
[16:06:21] [PASSED] YVU420 Modifier set just for plane 0, 1, with DRM_MODE_FB_MODIFIERS
[16:06:21] [PASSED] YVU420 Valid modifier
[16:06:21] [PASSED] YVU420 Different modifiers per plane
[16:06:21] [PASSED] YVU420 Modifier for inexistent plane
[16:06:21] [PASSED] YUV420_10BIT Invalid modifier(DRM_FORMAT_MOD_LINEAR)
[16:06:21] [PASSED] X0L2 Normal sizes
[16:06:21] [PASSED] X0L2 Max sizes
[16:06:21] [PASSED] X0L2 Invalid pitch
[16:06:21] [PASSED] X0L2 Pitch greater than minimum required
[16:06:21] [PASSED] X0L2 Handle for inexistent plane
[16:06:21] [PASSED] X0L2 Offset for inexistent plane, without DRM_MODE_FB_MODIFIERS set
[16:06:21] [PASSED] X0L2 Modifier without DRM_MODE_FB_MODIFIERS set
[16:06:21] [PASSED] X0L2 Valid modifier
[16:06:21] [PASSED] X0L2 Modifier for inexistent plane
[16:06:21] =========== [PASSED] drm_test_framebuffer_create ===========
[16:06:21] [PASSED] drm_test_framebuffer_free
[16:06:21] [PASSED] drm_test_framebuffer_init
[16:06:21] [PASSED] drm_test_framebuffer_init_bad_format
[16:06:21] [PASSED] drm_test_framebuffer_init_dev_mismatch
[16:06:21] [PASSED] drm_test_framebuffer_lookup
[16:06:21] [PASSED] drm_test_framebuffer_lookup_inexistent
[16:06:21] [PASSED] drm_test_framebuffer_modifiers_not_supported
[16:06:21] ================= [PASSED] drm_framebuffer =================
[16:06:21] ================ drm_gem_shmem (8 subtests) ================
[16:06:21] [PASSED] drm_gem_shmem_test_obj_create
[16:06:21] [PASSED] drm_gem_shmem_test_obj_create_private
[16:06:21] [PASSED] drm_gem_shmem_test_pin_pages
[16:06:21] [PASSED] drm_gem_shmem_test_vmap
[16:06:21] [PASSED] drm_gem_shmem_test_get_sg_table
[16:06:21] [PASSED] drm_gem_shmem_test_get_pages_sgt
[16:06:21] [PASSED] drm_gem_shmem_test_madvise
[16:06:21] [PASSED] drm_gem_shmem_test_purge
[16:06:21] ================== [PASSED] drm_gem_shmem ==================
[16:06:21] === drm_atomic_helper_connector_hdmi_check (29 subtests) ===
[16:06:21] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode
[16:06:21] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode_vic_1
[16:06:21] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode
[16:06:21] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode_vic_1
[16:06:21] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode
[16:06:21] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode_vic_1
[16:06:21] ====== drm_test_check_broadcast_rgb_cea_mode_yuv420 =======
[16:06:21] [PASSED] Automatic
[16:06:21] [PASSED] Full
[16:06:21] [PASSED] Limited 16:235
[16:06:21] == [PASSED] drm_test_check_broadcast_rgb_cea_mode_yuv420 ===
[16:06:21] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_changed
[16:06:21] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_not_changed
[16:06:21] [PASSED] drm_test_check_disable_connector
[16:06:21] [PASSED] drm_test_check_hdmi_funcs_reject_rate
[16:06:21] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_rgb
[16:06:21] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_yuv420
[16:06:21] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_ignore_yuv422
[16:06:21] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_ignore_yuv420
[16:06:21] [PASSED] drm_test_check_driver_unsupported_fallback_yuv420
[16:06:21] [PASSED] drm_test_check_output_bpc_crtc_mode_changed
[16:06:21] [PASSED] drm_test_check_output_bpc_crtc_mode_not_changed
[16:06:21] [PASSED] drm_test_check_output_bpc_dvi
[16:06:21] [PASSED] drm_test_check_output_bpc_format_vic_1
[16:06:21] [PASSED] drm_test_check_output_bpc_format_display_8bpc_only
[16:06:21] [PASSED] drm_test_check_output_bpc_format_display_rgb_only
[16:06:21] [PASSED] drm_test_check_output_bpc_format_driver_8bpc_only
[16:06:21] [PASSED] drm_test_check_output_bpc_format_driver_rgb_only
[16:06:21] [PASSED] drm_test_check_tmds_char_rate_rgb_8bpc
[16:06:21] [PASSED] drm_test_check_tmds_char_rate_rgb_10bpc
[16:06:21] [PASSED] drm_test_check_tmds_char_rate_rgb_12bpc
[16:06:21] ============ drm_test_check_hdmi_color_format =============
[16:06:21] [PASSED] AUTO -> RGB
[16:06:21] [PASSED] YCBCR422 -> YUV422
[16:06:21] [PASSED] YCBCR420 -> YUV420
[16:06:21] [PASSED] YCBCR444 -> YUV444
[16:06:21] [PASSED] RGB -> RGB
[16:06:21] ======== [PASSED] drm_test_check_hdmi_color_format =========
[16:06:21] ======== drm_test_check_hdmi_color_format_420_only ========
[16:06:21] [PASSED] RGB should fail
[16:06:21] [PASSED] YUV444 should fail
[16:06:21] [PASSED] YUV422 should fail
[16:06:21] [PASSED] YUV420 should work
[16:06:21] ==== [PASSED] drm_test_check_hdmi_color_format_420_only ====
[16:06:21] ===== [PASSED] drm_atomic_helper_connector_hdmi_check ======
[16:06:21] === drm_atomic_helper_connector_hdmi_reset (6 subtests) ====
[16:06:21] [PASSED] drm_test_check_broadcast_rgb_value
[16:06:21] [PASSED] drm_test_check_bpc_8_value
[16:06:21] [PASSED] drm_test_check_bpc_10_value
[16:06:21] [PASSED] drm_test_check_bpc_12_value
[16:06:21] [PASSED] drm_test_check_format_value
[16:06:21] [PASSED] drm_test_check_tmds_char_value
[16:06:21] ===== [PASSED] drm_atomic_helper_connector_hdmi_reset ======
[16:06:21] = drm_atomic_helper_connector_hdmi_mode_valid (7 subtests) =
[16:06:21] [PASSED] drm_test_check_mode_valid
[16:06:21] [PASSED] drm_test_check_mode_valid_reject
[16:06:21] [PASSED] drm_test_check_mode_valid_reject_rate
[16:06:21] [PASSED] drm_test_check_mode_valid_reject_max_clock
[16:06:21] [PASSED] drm_test_check_mode_valid_yuv420_only_max_clock
[16:06:21] [PASSED] drm_test_check_mode_valid_reject_yuv420_only_connector
[16:06:21] [PASSED] drm_test_check_mode_valid_accept_yuv420_also_connector_rgb
[16:06:21] === [PASSED] drm_atomic_helper_connector_hdmi_mode_valid ===
[16:06:21] = drm_atomic_helper_connector_hdmi_infoframes (5 subtests) =
[16:06:21] [PASSED] drm_test_check_infoframes
[16:06:21] [PASSED] drm_test_check_reject_avi_infoframe
[16:06:21] [PASSED] drm_test_check_reject_hdr_infoframe_bpc_8
[16:06:21] [PASSED] drm_test_check_reject_hdr_infoframe_bpc_10
[16:06:21] [PASSED] drm_test_check_reject_audio_infoframe
[16:06:21] === [PASSED] drm_atomic_helper_connector_hdmi_infoframes ===
[16:06:21] ================= drm_managed (2 subtests) =================
[16:06:21] [PASSED] drm_test_managed_release_action
[16:06:21] [PASSED] drm_test_managed_run_action
[16:06:21] =================== [PASSED] drm_managed ===================
[16:06:21] =================== drm_mm (6 subtests) ====================
[16:06:21] [PASSED] drm_test_mm_init
[16:06:21] [PASSED] drm_test_mm_debug
[16:06:21] [PASSED] drm_test_mm_align32
[16:06:21] [PASSED] drm_test_mm_align64
[16:06:21] [PASSED] drm_test_mm_lowest
[16:06:21] [PASSED] drm_test_mm_highest
[16:06:21] ===================== [PASSED] drm_mm ======================
[16:06:21] ============= drm_modes_analog_tv (5 subtests) =============
[16:06:21] [PASSED] drm_test_modes_analog_tv_mono_576i
[16:06:21] [PASSED] drm_test_modes_analog_tv_ntsc_480i
[16:06:21] [PASSED] drm_test_modes_analog_tv_ntsc_480i_inlined
[16:06:21] [PASSED] drm_test_modes_analog_tv_pal_576i
[16:06:21] [PASSED] drm_test_modes_analog_tv_pal_576i_inlined
[16:06:21] =============== [PASSED] drm_modes_analog_tv ===============
[16:06:21] ============== drm_plane_helper (2 subtests) ===============
[16:06:21] =============== drm_test_check_plane_state ================
[16:06:21] [PASSED] clipping_simple
[16:06:21] [PASSED] clipping_rotate_reflect
[16:06:21] [PASSED] positioning_simple
[16:06:21] [PASSED] upscaling
[16:06:21] [PASSED] downscaling
[16:06:21] [PASSED] rounding1
[16:06:21] [PASSED] rounding2
[16:06:21] [PASSED] rounding3
[16:06:21] [PASSED] rounding4
[16:06:21] =========== [PASSED] drm_test_check_plane_state ============
[16:06:21] =========== drm_test_check_invalid_plane_state ============
[16:06:21] [PASSED] positioning_invalid
[16:06:21] [PASSED] upscaling_invalid
[16:06:21] [PASSED] downscaling_invalid
[16:06:21] ======= [PASSED] drm_test_check_invalid_plane_state ========
[16:06:21] ================ [PASSED] drm_plane_helper =================
[16:06:21] ====== drm_connector_helper_tv_get_modes (1 subtest) =======
[16:06:21] ====== drm_test_connector_helper_tv_get_modes_check =======
[16:06:21] [PASSED] None
[16:06:21] [PASSED] PAL
[16:06:21] [PASSED] NTSC
[16:06:21] [PASSED] Both, NTSC Default
[16:06:21] [PASSED] Both, PAL Default
[16:06:21] [PASSED] Both, NTSC Default, with PAL on command-line
[16:06:21] [PASSED] Both, PAL Default, with NTSC on command-line
[16:06:21] == [PASSED] drm_test_connector_helper_tv_get_modes_check ===
[16:06:21] ======== [PASSED] drm_connector_helper_tv_get_modes ========
[16:06:21] ================== drm_rect (9 subtests) ===================
[16:06:21] [PASSED] drm_test_rect_clip_scaled_div_by_zero
[16:06:21] [PASSED] drm_test_rect_clip_scaled_not_clipped
[16:06:21] [PASSED] drm_test_rect_clip_scaled_clipped
[16:06:21] [PASSED] drm_test_rect_clip_scaled_signed_vs_unsigned
[16:06:21] ================= drm_test_rect_intersect =================
[16:06:21] [PASSED] top-left x bottom-right: 2x2+1+1 x 2x2+0+0
[16:06:21] [PASSED] top-right x bottom-left: 2x2+0+0 x 2x2+1-1
[16:06:21] [PASSED] bottom-left x top-right: 2x2+1-1 x 2x2+0+0
[16:06:21] [PASSED] bottom-right x top-left: 2x2+0+0 x 2x2+1+1
[16:06:21] [PASSED] right x left: 2x1+0+0 x 3x1+1+0
[16:06:21] [PASSED] left x right: 3x1+1+0 x 2x1+0+0
[16:06:21] [PASSED] up x bottom: 1x2+0+0 x 1x3+0-1
[16:06:21] [PASSED] bottom x up: 1x3+0-1 x 1x2+0+0
[16:06:21] [PASSED] touching corner: 1x1+0+0 x 2x2+1+1
[16:06:21] [PASSED] touching side: 1x1+0+0 x 1x1+1+0
[16:06:21] [PASSED] equal rects: 2x2+0+0 x 2x2+0+0
[16:06:21] [PASSED] inside another: 2x2+0+0 x 1x1+1+1
[16:06:21] [PASSED] far away: 1x1+0+0 x 1x1+3+6
[16:06:21] [PASSED] points intersecting: 0x0+5+10 x 0x0+5+10
[16:06:21] [PASSED] points not intersecting: 0x0+0+0 x 0x0+5+10
[16:06:21] ============= [PASSED] drm_test_rect_intersect =============
[16:06:21] ================ drm_test_rect_calc_hscale ================
[16:06:21] [PASSED] normal use
[16:06:21] [PASSED] out of max range
[16:06:21] [PASSED] out of min range
[16:06:21] [PASSED] zero dst
[16:06:21] [PASSED] negative src
[16:06:21] [PASSED] negative dst
[16:06:21] ============ [PASSED] drm_test_rect_calc_hscale ============
[16:06:21] ================ drm_test_rect_calc_vscale ================
[16:06:21] [PASSED] normal use
[16:06:21] [PASSED] out of max range
[16:06:21] [PASSED] out of min range
[16:06:21] [PASSED] zero dst
[16:06:21] [PASSED] negative src
[16:06:21] [PASSED] negative dst
[16:06:21] ============ [PASSED] drm_test_rect_calc_vscale ============
[16:06:21] ================== drm_test_rect_rotate ===================
[16:06:21] [PASSED] reflect-x
[16:06:21] [PASSED] reflect-y
[16:06:21] [PASSED] rotate-0
[16:06:21] [PASSED] rotate-90
[16:06:21] [PASSED] rotate-180
[16:06:21] [PASSED] rotate-270
[16:06:21] ============== [PASSED] drm_test_rect_rotate ===============
[16:06:21] ================ drm_test_rect_rotate_inv =================
[16:06:21] [PASSED] reflect-x
[16:06:21] [PASSED] reflect-y
[16:06:21] [PASSED] rotate-0
[16:06:21] [PASSED] rotate-90
[16:06:21] [PASSED] rotate-180
[16:06:21] [PASSED] rotate-270
[16:06:21] ============ [PASSED] drm_test_rect_rotate_inv =============
[16:06:21] ==================== [PASSED] drm_rect =====================
[16:06:21] ============ drm_sysfb_modeset_test (1 subtest) ============
[16:06:21] ============ drm_test_sysfb_build_fourcc_list =============
[16:06:21] [PASSED] no native formats
[16:06:21] [PASSED] XRGB8888 as native format
[16:06:21] [PASSED] remove duplicates
[16:06:21] [PASSED] convert alpha formats
[16:06:21] [PASSED] random formats
[16:06:21] ======== [PASSED] drm_test_sysfb_build_fourcc_list =========
[16:06:21] ============= [PASSED] drm_sysfb_modeset_test ==============
[16:06:21] ================== drm_fixp (2 subtests) ===================
[16:06:21] [PASSED] drm_test_int2fixp
[16:06:21] [PASSED] drm_test_sm2fixp
[16:06:21] ==================== [PASSED] drm_fixp =====================
[16:06:21] ============================================================
[16:06:21] Testing complete. Ran 641 tests: passed: 641
[16:06:21] Elapsed time: 26.793s total, 1.808s configuring, 24.816s building, 0.163s running
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/ttm/tests/.kunitconfig
[16:06:21] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[16:06:23] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48
[16:06:33] Starting KUnit Kernel (1/1)...
[16:06:33] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[16:06:33] ============= refcount_interrupt (4 subtests) ==============
[16:06:33] [PASSED] test_single_irq_change
[16:06:33] [PASSED] test_nested_irq_change
[16:06:33] [PASSED] test_multiple_irq_change
[16:06:33] [PASSED] test_irq_save
[16:06:33] =============== [PASSED] refcount_interrupt ================
[16:06:33] ================= ttm_device (5 subtests) ==================
[16:06:33] [PASSED] ttm_device_init_basic
[16:06:33] [PASSED] ttm_device_init_multiple
[16:06:33] [PASSED] ttm_device_fini_basic
[16:06:33] [PASSED] ttm_device_init_no_vma_man
[16:06:33] ================== ttm_device_init_pools ==================
[16:06:33] [PASSED] No DMA allocations, no DMA32 required
[16:06:33] [PASSED] DMA allocations, DMA32 required
[16:06:33] [PASSED] No DMA allocations, DMA32 required
[16:06:33] [PASSED] DMA allocations, no DMA32 required
[16:06:33] ============== [PASSED] ttm_device_init_pools ==============
[16:06:33] =================== [PASSED] ttm_device ====================
[16:06:33] ================== ttm_pool (8 subtests) ===================
[16:06:33] ================== ttm_pool_alloc_basic ===================
[16:06:33] [PASSED] One page
[16:06:33] [PASSED] More than one page
[16:06:33] [PASSED] Above the allocation limit
[16:06:33] [PASSED] One page, with coherent DMA mappings enabled
[16:06:33] [PASSED] Above the allocation limit, with coherent DMA mappings enabled
[16:06:33] ============== [PASSED] ttm_pool_alloc_basic ===============
[16:06:33] ============== ttm_pool_alloc_basic_dma_addr ==============
[16:06:33] [PASSED] One page
[16:06:33] [PASSED] More than one page
[16:06:33] [PASSED] Above the allocation limit
[16:06:33] [PASSED] One page, with coherent DMA mappings enabled
[16:06:33] [PASSED] Above the allocation limit, with coherent DMA mappings enabled
[16:06:33] ========== [PASSED] ttm_pool_alloc_basic_dma_addr ==========
[16:06:33] [PASSED] ttm_pool_alloc_order_caching_match
[16:06:33] [PASSED] ttm_pool_alloc_caching_mismatch
[16:06:33] [PASSED] ttm_pool_alloc_order_mismatch
[16:06:33] [PASSED] ttm_pool_free_dma_alloc
[16:06:33] [PASSED] ttm_pool_free_no_dma_alloc
[16:06:33] [PASSED] ttm_pool_fini_basic
[16:06:33] ==================== [PASSED] ttm_pool =====================
[16:06:33] ================ ttm_resource (8 subtests) =================
[16:06:33] ================= ttm_resource_init_basic =================
[16:06:33] [PASSED] Init resource in TTM_PL_SYSTEM
[16:06:33] [PASSED] Init resource in TTM_PL_VRAM
[16:06:33] [PASSED] Init resource in a private placement
[16:06:33] [PASSED] Init resource in TTM_PL_SYSTEM, set placement flags
[16:06:33] ============= [PASSED] ttm_resource_init_basic =============
[16:06:33] [PASSED] ttm_resource_init_pinned
[16:06:33] [PASSED] ttm_resource_fini_basic
[16:06:33] [PASSED] ttm_resource_manager_init_basic
[16:06:33] [PASSED] ttm_resource_manager_usage_basic
[16:06:33] [PASSED] ttm_resource_manager_set_used_basic
[16:06:33] [PASSED] ttm_sys_man_alloc_basic
[16:06:33] [PASSED] ttm_sys_man_free_basic
[16:06:33] ================== [PASSED] ttm_resource ===================
[16:06:33] =================== ttm_tt (15 subtests) ===================
[16:06:33] ==================== ttm_tt_init_basic ====================
[16:06:33] [PASSED] Page-aligned size
[16:06:33] [PASSED] Extra pages requested
[16:06:33] ================ [PASSED] ttm_tt_init_basic ================
[16:06:33] [PASSED] ttm_tt_init_misaligned
[16:06:33] [PASSED] ttm_tt_fini_basic
[16:06:33] [PASSED] ttm_tt_fini_sg
[16:06:33] [PASSED] ttm_tt_fini_shmem
[16:06:33] [PASSED] ttm_tt_create_basic
[16:06:33] [PASSED] ttm_tt_create_invalid_bo_type
[16:06:33] [PASSED] ttm_tt_create_ttm_exists
[16:06:33] [PASSED] ttm_tt_create_failed
[16:06:33] [PASSED] ttm_tt_destroy_basic
[16:06:33] [PASSED] ttm_tt_populate_null_ttm
[16:06:33] [PASSED] ttm_tt_populate_populated_ttm
[16:06:33] [PASSED] ttm_tt_unpopulate_basic
[16:06:33] [PASSED] ttm_tt_unpopulate_empty_ttm
[16:06:33] [PASSED] ttm_tt_swapin_basic
[16:06:33] ===================== [PASSED] ttm_tt ======================
[16:06:33] =================== ttm_bo (14 subtests) ===================
[16:06:33] =========== ttm_bo_reserve_optimistic_no_ticket ===========
[16:06:33] [PASSED] Cannot be interrupted and sleeps
[16:06:33] [PASSED] Cannot be interrupted, locks straight away
[16:06:33] [PASSED] Can be interrupted, sleeps
[16:06:33] ======= [PASSED] ttm_bo_reserve_optimistic_no_ticket =======
[16:06:33] [PASSED] ttm_bo_reserve_locked_no_sleep
[16:06:33] [PASSED] ttm_bo_reserve_no_wait_ticket
[16:06:33] [PASSED] ttm_bo_reserve_double_resv
[16:06:33] [PASSED] ttm_bo_reserve_interrupted
[16:06:33] [PASSED] ttm_bo_reserve_deadlock
[16:06:33] [PASSED] ttm_bo_unreserve_basic
[16:06:33] [PASSED] ttm_bo_unreserve_pinned
[16:06:33] [PASSED] ttm_bo_unreserve_bulk
[16:06:33] [PASSED] ttm_bo_fini_basic
[16:06:33] [PASSED] ttm_bo_fini_shared_resv
[16:06:33] [PASSED] ttm_bo_pin_basic
[16:06:33] [PASSED] ttm_bo_pin_unpin_resource
[16:06:33] [PASSED] ttm_bo_multiple_pin_one_unpin
[16:06:33] ===================== [PASSED] ttm_bo ======================
[16:06:33] ============== ttm_bo_validate (22 subtests) ===============
[16:06:33] ============== ttm_bo_init_reserved_sys_man ===============
[16:06:33] [PASSED] Buffer object for userspace
[16:06:33] [PASSED] Kernel buffer object
[16:06:33] [PASSED] Shared buffer object
[16:06:33] ========== [PASSED] ttm_bo_init_reserved_sys_man ===========
[16:06:33] ============== ttm_bo_init_reserved_mock_man ==============
[16:06:33] [PASSED] Buffer object for userspace
[16:06:33] [PASSED] Kernel buffer object
[16:06:33] [PASSED] Shared buffer object
[16:06:33] ========== [PASSED] ttm_bo_init_reserved_mock_man ==========
[16:06:33] [PASSED] ttm_bo_init_reserved_resv
[16:06:33] ================== ttm_bo_validate_basic ==================
[16:06:33] [PASSED] Buffer object for userspace
[16:06:33] [PASSED] Kernel buffer object
[16:06:33] [PASSED] Shared buffer object
[16:06:33] ============== [PASSED] ttm_bo_validate_basic ==============
[16:06:33] [PASSED] ttm_bo_validate_invalid_placement
[16:06:33] ============= ttm_bo_validate_same_placement ==============
[16:06:33] [PASSED] System manager
[16:06:33] [PASSED] VRAM manager
[16:06:33] ========= [PASSED] ttm_bo_validate_same_placement ==========
[16:06:33] [PASSED] ttm_bo_validate_failed_alloc
[16:06:33] [PASSED] ttm_bo_validate_pinned
[16:06:33] [PASSED] ttm_bo_validate_busy_placement
[16:06:33] ================ ttm_bo_validate_multihop =================
[16:06:33] [PASSED] Buffer object for userspace
[16:06:33] [PASSED] Kernel buffer object
[16:06:33] [PASSED] Shared buffer object
[16:06:33] ============ [PASSED] ttm_bo_validate_multihop =============
[16:06:33] ========== ttm_bo_validate_no_placement_signaled ==========
[16:06:33] [PASSED] Buffer object in system domain, no page vector
[16:06:33] [PASSED] Buffer object in system domain with an existing page vector
[16:06:33] ====== [PASSED] ttm_bo_validate_no_placement_signaled ======
[16:06:33] ======== ttm_bo_validate_no_placement_not_signaled ========
[16:06:33] [PASSED] Buffer object for userspace
[16:06:33] [PASSED] Kernel buffer object
[16:06:33] [PASSED] Shared buffer object
[16:06:33] ==== [PASSED] ttm_bo_validate_no_placement_not_signaled ====
[16:06:33] [PASSED] ttm_bo_validate_move_fence_signaled
[16:06:33] ========= ttm_bo_validate_move_fence_not_signaled =========
[16:06:33] [PASSED] Waits for GPU
[16:06:33] [PASSED] Tries to lock straight away
[16:06:33] ===== [PASSED] ttm_bo_validate_move_fence_not_signaled =====
[16:06:33] [PASSED] ttm_bo_validate_swapout
[16:06:33] [PASSED] ttm_bo_validate_happy_evict
[16:06:33] [PASSED] ttm_bo_validate_all_pinned_evict
[16:06:33] [PASSED] ttm_bo_validate_allowed_only_evict
[16:06:33] [PASSED] ttm_bo_validate_deleted_evict
[16:06:33] [PASSED] ttm_bo_validate_busy_domain_evict
[16:06:33] [PASSED] ttm_bo_validate_evict_gutting
[16:06:33] [PASSED] ttm_bo_validate_recrusive_evict
[16:06:33] ================= [PASSED] ttm_bo_validate =================
[16:06:33] ============================================================
[16:06:33] Testing complete. Ran 106 tests: passed: 106
[16:06:33] Elapsed time: 12.213s total, 1.830s configuring, 10.168s building, 0.181s running
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/dma-buf/.kunitconfig
[16:06:33] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[16:06:35] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48
[16:06:44] Starting KUnit Kernel (1/1)...
[16:06:44] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[16:06:44] ============= refcount_interrupt (4 subtests) ==============
[16:06:44] [PASSED] test_single_irq_change
[16:06:44] [PASSED] test_nested_irq_change
[16:06:44] [PASSED] test_multiple_irq_change
[16:06:44] [PASSED] test_irq_save
[16:06:44] =============== [PASSED] refcount_interrupt ================
[16:06:44] =============== dma-buf-fence (12 subtests) ================
[16:06:44] [PASSED] test_sanitycheck
[16:06:44] [PASSED] test_signaling
[16:06:44] [PASSED] test_add_callback
[16:06:44] [PASSED] test_late_add_callback
[16:06:44] [PASSED] test_rm_callback
[16:06:44] [PASSED] test_late_rm_callback
[16:06:44] [PASSED] test_status
[16:06:44] [PASSED] test_error
[16:06:44] [PASSED] test_wait
[16:06:44] [PASSED] test_wait_timeout
[16:06:44] [PASSED] test_stub
[16:06:44] [SKIPPED] test_race_signal_callback (requires at least 2 CPUs)
[16:06:44] ================== [PASSED] dma-buf-fence ==================
[16:06:44] ============ dma-buf-fence-chain (11 subtests) =============
[16:06:44] [PASSED] test_sanitycheck
[16:06:44] [PASSED] test_find_seqno
[16:06:44] [PASSED] test_find_signaled
[16:06:44] [PASSED] test_find_out_of_order
[16:06:49] [PASSED] test_find_gap
[16:06:49] [PASSED] test_find_race
[16:06:49] [PASSED] test_signal_forward
[16:06:49] [PASSED] test_signal_backward
[16:06:49] [PASSED] test_wait_forward
[16:06:49] [PASSED] test_wait_backward
[16:06:49] [PASSED] test_wait_random
[16:06:49] =============== [PASSED] dma-buf-fence-chain ===============
[16:06:49] ============ dma-buf-fence-unwrap (10 subtests) ============
[16:06:49] [PASSED] test_sanitycheck
[16:06:49] [PASSED] test_unwrap_array
[16:06:49] [PASSED] test_unwrap_chain
[16:06:49] [PASSED] test_unwrap_chain_array
[16:06:49] [PASSED] test_unwrap_merge
[16:06:49] [PASSED] test_unwrap_merge_duplicate
[16:06:49] [PASSED] test_unwrap_merge_seqno
[16:06:49] [PASSED] test_unwrap_merge_order
[16:06:49] [PASSED] test_unwrap_merge_complex
[16:06:49] [PASSED] test_unwrap_merge_complex_seqno
[16:06:49] ============== [PASSED] dma-buf-fence-unwrap ===============
[16:06:49] ================ dma-buf-resv (5 subtests) =================
[16:06:49] [PASSED] test_sanitycheck
[16:06:49] ===================== test_signaling ======================
[16:06:49] [PASSED] kernel
[16:06:49] [PASSED] write
[16:06:49] [PASSED] read
[16:06:49] [PASSED] bookkeep
[16:06:49] ================= [PASSED] test_signaling ==================
[16:06:49] ====================== test_for_each ======================
[16:06:49] [PASSED] kernel
[16:06:49] [PASSED] write
[16:06:49] [PASSED] read
[16:06:49] [PASSED] bookkeep
[16:06:49] ================== [PASSED] test_for_each ==================
[16:06:49] ================= test_for_each_unlocked ==================
[16:06:49] [PASSED] kernel
[16:06:49] [PASSED] write
[16:06:49] [PASSED] read
[16:06:49] [PASSED] bookkeep
[16:06:49] ============= [PASSED] test_for_each_unlocked ==============
[16:06:49] ===================== test_get_fences =====================
[16:06:49] [PASSED] kernel
[16:06:49] [PASSED] write
[16:06:49] [PASSED] read
[16:06:49] [PASSED] bookkeep
[16:06:49] ================= [PASSED] test_get_fences =================
[16:06:49] ================== [PASSED] dma-buf-resv ===================
[16:06:49] ============================================================
[16:06:49] Testing complete. Ran 54 tests: passed: 53, skipped: 1
[16:06:49] Elapsed time: 15.794s total, 1.812s configuring, 8.661s building, 5.275s running
+ cleanup
++ stat -c %u:%g /kernel
+ chown -R 1003:1003 /kernel
^ permalink raw reply [flat|nested] 13+ messages in thread* ✓ Xe.CI.BAT: success for drm/i915/display: Enable AS SDP Skip Frames (rev4)
2026-08-31 12:59 [v3 0/4] drm/i915/display: Enable AS SDP Skip Frames Uma Shankar
` (5 preceding siblings ...)
2026-08-31 16:06 ` ✓ CI.KUnit: success " Patchwork
@ 2026-08-31 17:16 ` Patchwork
2026-08-31 20:20 ` ✓ Xe.CI.FULL: " Patchwork
7 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2026-08-31 17:16 UTC (permalink / raw)
To: Shankar, Uma; +Cc: intel-xe
[-- Attachment #1: Type: text/plain, Size: 8941 bytes --]
== Series Details ==
Series: drm/i915/display: Enable AS SDP Skip Frames (rev4)
URL : https://patchwork.freedesktop.org/series/162015/
State : success
== Summary ==
CI Bug Log - changes from xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6_BAT -> xe-pw-162015v4_BAT
====================================================
Summary
-------
**SUCCESS**
No regressions found.
Participating hosts (11 -> 9)
------------------------------
Additional (2): bat-bmg-2 bat-nvls-1
Missing (4): bat-bmg-1 bat-lnl-2 bat-adlp-7 bat-atsm-2
Known issues
------------
Here are the changes found in xe-pw-162015v4_BAT that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@fbdev@nullptr:
- bat-bmg-2: NOTRUN -> [SKIP][1] ([Intel XE#2134]) +4 other tests skip
[1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-bmg-2/igt@fbdev@nullptr.html
* igt@kms_addfb_basic@addfb25-y-tiled-small-legacy:
- bat-bmg-2: NOTRUN -> [SKIP][2] ([Intel XE#2233])
[2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-bmg-2/igt@kms_addfb_basic@addfb25-y-tiled-small-legacy.html
- bat-nvls-1: NOTRUN -> [SKIP][3] ([Intel XE#8757])
[3]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-nvls-1/igt@kms_addfb_basic@addfb25-y-tiled-small-legacy.html
* igt@kms_cursor_legacy@basic-flip-after-cursor-legacy:
- bat-bmg-2: NOTRUN -> [SKIP][4] ([Intel XE#2489] / [Intel XE#3419]) +13 other tests skip
[4]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-bmg-2/igt@kms_cursor_legacy@basic-flip-after-cursor-legacy.html
* igt@kms_dsc@dsc-basic:
- bat-nvls-1: NOTRUN -> [SKIP][5] ([Intel XE#8759])
[5]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-nvls-1/igt@kms_dsc@dsc-basic.html
* igt@kms_flip@basic-flip-vs-modeset:
- bat-bmg-2: NOTRUN -> [SKIP][6] ([Intel XE#2482]) +3 other tests skip
[6]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-bmg-2/igt@kms_flip@basic-flip-vs-modeset.html
* igt@kms_frontbuffer_tracking@basic:
- bat-bmg-2: NOTRUN -> [SKIP][7] ([Intel XE#2434] / [Intel XE#2548] / [Intel XE#6314])
[7]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-bmg-2/igt@kms_frontbuffer_tracking@basic.html
* igt@kms_psr@psr-sprite-plane-onoff:
- bat-bmg-2: NOTRUN -> [SKIP][8] ([Intel XE#2234] / [Intel XE#2850]) +2 other tests skip
[8]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-bmg-2/igt@kms_psr@psr-sprite-plane-onoff.html
* igt@xe_evict@evict-beng-small-multi-vm:
- bat-nvls-1: NOTRUN -> [SKIP][9] ([Intel XE#8777]) +9 other tests skip
[9]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-nvls-1/igt@xe_evict@evict-beng-small-multi-vm.html
* igt@xe_evict_ccs@evict-overcommit-parallel-nofree-samefd:
- bat-nvls-1: NOTRUN -> [SKIP][10] ([Intel XE#8744]) +1 other test skip
[10]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-nvls-1/igt@xe_evict_ccs@evict-overcommit-parallel-nofree-samefd.html
* igt@xe_exec_balancer@twice-virtual-userptr-invalidate:
- bat-nvls-1: NOTRUN -> [SKIP][11] ([Intel XE#8741]) +17 other tests skip
[11]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-nvls-1/igt@xe_exec_balancer@twice-virtual-userptr-invalidate.html
* igt@xe_exec_multi_queue@priority:
- bat-bmg-2: NOTRUN -> [SKIP][12] ([Intel XE#8364]) +13 other tests skip
[12]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-bmg-2/igt@xe_exec_multi_queue@priority.html
- bat-nvls-1: NOTRUN -> [SKIP][13] ([Intel XE#8377]) +13 other tests skip
[13]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-nvls-1/igt@xe_exec_multi_queue@priority.html
* igt@xe_huc_copy@huc_copy:
- bat-nvls-1: NOTRUN -> [SKIP][14] ([Intel XE#8746])
[14]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-nvls-1/igt@xe_huc_copy@huc_copy.html
* igt@xe_live_ktest@xe_bo:
- bat-nvls-1: NOTRUN -> [SKIP][15] ([Intel XE#8792])
[15]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-nvls-1/igt@xe_live_ktest@xe_bo.html
* igt@xe_live_ktest@xe_bo@xe_bo_evict_kunit:
- bat-nvls-1: NOTRUN -> [SKIP][16] ([Intel XE#8791] / [Intel XE#8792])
[16]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-nvls-1/igt@xe_live_ktest@xe_bo@xe_bo_evict_kunit.html
* igt@xe_live_ktest@xe_bo@xe_ccs_migrate_kunit:
- bat-bmg-2: NOTRUN -> [SKIP][17] ([Intel XE#2229])
[17]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-bmg-2/igt@xe_live_ktest@xe_bo@xe_ccs_migrate_kunit.html
* igt@xe_live_ktest@xe_migrate@xe_validate_ccs_kunit:
- bat-nvls-1: NOTRUN -> [SKIP][18] ([Intel XE#8791])
[18]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-nvls-1/igt@xe_live_ktest@xe_migrate@xe_validate_ccs_kunit.html
* igt@xe_mmap@vram:
- bat-nvls-1: NOTRUN -> [SKIP][19] ([Intel XE#8747])
[19]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-nvls-1/igt@xe_mmap@vram.html
* igt@xe_pat@pat-index-xehpc:
- bat-bmg-2: NOTRUN -> [SKIP][20] ([Intel XE#1420] / [Intel XE#7590])
[20]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-bmg-2/igt@xe_pat@pat-index-xehpc.html
- bat-nvls-1: NOTRUN -> [SKIP][21] ([Intel XE#8748])
[21]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-nvls-1/igt@xe_pat@pat-index-xehpc.html
* igt@xe_pat@pat-index-xelp:
- bat-bmg-2: NOTRUN -> [SKIP][22] ([Intel XE#2245] / [Intel XE#7590])
[22]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-bmg-2/igt@xe_pat@pat-index-xelp.html
- bat-nvls-1: NOTRUN -> [SKIP][23] ([Intel XE#8743])
[23]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-nvls-1/igt@xe_pat@pat-index-xelp.html
* igt@xe_pat@pat-index-xelpg:
- bat-bmg-2: NOTRUN -> [SKIP][24] ([Intel XE#2236] / [Intel XE#7590])
[24]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-bmg-2/igt@xe_pat@pat-index-xelpg.html
- bat-nvls-1: NOTRUN -> [SKIP][25] ([Intel XE#8745])
[25]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/bat-nvls-1/igt@xe_pat@pat-index-xelpg.html
[Intel XE#1420]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1420
[Intel XE#2134]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2134
[Intel XE#2229]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2229
[Intel XE#2233]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2233
[Intel XE#2234]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2234
[Intel XE#2236]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2236
[Intel XE#2245]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2245
[Intel XE#2434]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2434
[Intel XE#2482]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2482
[Intel XE#2489]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2489
[Intel XE#2548]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2548
[Intel XE#2850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2850
[Intel XE#3419]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3419
[Intel XE#6314]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6314
[Intel XE#7590]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7590
[Intel XE#8364]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8364
[Intel XE#8377]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8377
[Intel XE#8741]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8741
[Intel XE#8743]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8743
[Intel XE#8744]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8744
[Intel XE#8745]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8745
[Intel XE#8746]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8746
[Intel XE#8747]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8747
[Intel XE#8748]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8748
[Intel XE#8757]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8757
[Intel XE#8759]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8759
[Intel XE#8777]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8777
[Intel XE#8791]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8791
[Intel XE#8792]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8792
Build changes
-------------
* Linux: xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6 -> xe-pw-162015v4
IGT_9078: 9078
xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6: 37b6bb1186b8170c2031b312e82205caa05e19d6
xe-pw-162015v4: 162015v4
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/index.html
[-- Attachment #2: Type: text/html, Size: 10192 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread* ✓ Xe.CI.FULL: success for drm/i915/display: Enable AS SDP Skip Frames (rev4)
2026-08-31 12:59 [v3 0/4] drm/i915/display: Enable AS SDP Skip Frames Uma Shankar
` (6 preceding siblings ...)
2026-08-31 17:16 ` ✓ Xe.CI.BAT: " Patchwork
@ 2026-08-31 20:20 ` Patchwork
7 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2026-08-31 20:20 UTC (permalink / raw)
To: Shankar, Uma; +Cc: intel-xe
[-- Attachment #1: Type: text/plain, Size: 31541 bytes --]
== Series Details ==
Series: drm/i915/display: Enable AS SDP Skip Frames (rev4)
URL : https://patchwork.freedesktop.org/series/162015/
State : success
== Summary ==
CI Bug Log - changes from xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6_FULL -> xe-pw-162015v4_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-162015v4_FULL that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@core_hotunplug@hotunbind-rebind-with-load:
- shard-bmg: [PASS][1] -> [ABORT][2] ([Intel XE#8007])
[1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-10/igt@core_hotunplug@hotunbind-rebind-with-load.html
[2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-7/igt@core_hotunplug@hotunbind-rebind-with-load.html
* igt@kms_big_fb@linear-32bpp-rotate-270:
- shard-bmg: NOTRUN -> [SKIP][3] ([Intel XE#2327]) +1 other test skip
[3]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-4/igt@kms_big_fb@linear-32bpp-rotate-270.html
* igt@kms_big_fb@linear-64bpp-rotate-90:
- shard-lnl: NOTRUN -> [SKIP][4] ([Intel XE#1407])
[4]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@kms_big_fb@linear-64bpp-rotate-90.html
* igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0:
- shard-lnl: NOTRUN -> [SKIP][5] ([Intel XE#1124])
[5]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0.html
* igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0-hflip:
- shard-bmg: NOTRUN -> [SKIP][6] ([Intel XE#1124]) +1 other test skip
[6]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0-hflip.html
* igt@kms_bw@connected-linear-tiling-2-displays-target-1920x1080p:
- shard-lnl: NOTRUN -> [SKIP][7] ([Intel XE#7679])
[7]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@kms_bw@connected-linear-tiling-2-displays-target-1920x1080p.html
* igt@kms_ccs@bad-rotation-90-4-tiled-bmg-ccs@pipe-a-edp-1:
- shard-lnl: NOTRUN -> [SKIP][8] ([Intel XE#2669] / [Intel XE#7389]) +3 other tests skip
[8]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@kms_ccs@bad-rotation-90-4-tiled-bmg-ccs@pipe-a-edp-1.html
* igt@kms_ccs@crc-primary-basic-yf-tiled-ccs:
- shard-bmg: NOTRUN -> [SKIP][9] ([Intel XE#2887])
[9]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@kms_ccs@crc-primary-basic-yf-tiled-ccs.html
* igt@kms_ccs@crc-primary-rotation-180-yf-tiled-ccs:
- shard-lnl: NOTRUN -> [SKIP][10] ([Intel XE#2887])
[10]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@kms_ccs@crc-primary-rotation-180-yf-tiled-ccs.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-mc-ccs:
- shard-bmg: NOTRUN -> [SKIP][11] ([Intel XE#3432])
[11]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-mc-ccs.html
* igt@kms_chamelium_color@ctm-0-75:
- shard-bmg: NOTRUN -> [SKIP][12] ([Intel XE#2325] / [Intel XE#7358])
[12]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@kms_chamelium_color@ctm-0-75.html
* igt@kms_chamelium_edid@dp-edid-resolution-list:
- shard-lnl: NOTRUN -> [SKIP][13] ([Intel XE#373])
[13]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@kms_chamelium_edid@dp-edid-resolution-list.html
* igt@kms_chamelium_hpd@dp-hpd-storm:
- shard-bmg: NOTRUN -> [SKIP][14] ([Intel XE#2252]) +1 other test skip
[14]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@kms_chamelium_hpd@dp-hpd-storm.html
* igt@kms_content_protection@lic-type-0@pipe-a-dp-2:
- shard-bmg: NOTRUN -> [FAIL][15] ([Intel XE#1178] / [Intel XE#3304] / [Intel XE#7374]) +1 other test fail
[15]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@kms_content_protection@lic-type-0@pipe-a-dp-2.html
* igt@kms_cursor_crc@cursor-offscreen-128x42:
- shard-bmg: NOTRUN -> [SKIP][16] ([Intel XE#2320])
[16]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@kms_cursor_crc@cursor-offscreen-128x42.html
* igt@kms_dsc@dsc-with-formats:
- shard-lnl: NOTRUN -> [SKIP][17] ([Intel XE#8265])
[17]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@kms_dsc@dsc-with-formats.html
* igt@kms_fbcon_fbt@psr:
- shard-bmg: NOTRUN -> [SKIP][18] ([Intel XE#8680])
[18]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@kms_fbcon_fbt@psr.html
* igt@kms_feature_discovery@display-3x:
- shard-bmg: NOTRUN -> [SKIP][19] ([Intel XE#2373] / [Intel XE#7448])
[19]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@kms_feature_discovery@display-3x.html
* igt@kms_flip@2x-plain-flip-ts-check-interruptible:
- shard-lnl: NOTRUN -> [SKIP][20] ([Intel XE#1421])
[20]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@kms_flip@2x-plain-flip-ts-check-interruptible.html
* igt@kms_flip@flip-vs-expired-vblank-interruptible:
- shard-lnl: [PASS][21] -> [FAIL][22] ([Intel XE#301] / [Intel XE#3149]) +1 other test fail
[21]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-lnl-6/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
[22]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-6/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
* igt@kms_flip@plain-flip-ts-check-interruptible@a-dp2:
- shard-bmg: [PASS][23] -> [FAIL][24] ([Intel XE#3098]) +1 other test fail
[23]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-8/igt@kms_flip@plain-flip-ts-check-interruptible@a-dp2.html
[24]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-5/igt@kms_flip@plain-flip-ts-check-interruptible@a-dp2.html
* igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling:
- shard-lnl: NOTRUN -> [SKIP][25] ([Intel XE#7178] / [Intel XE#7349])
[25]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling.html
* igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling:
- shard-lnl: NOTRUN -> [SKIP][26] ([Intel XE#7178] / [Intel XE#7351])
[26]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling:
- shard-bmg: NOTRUN -> [SKIP][27] ([Intel XE#7178] / [Intel XE#7349])
[27]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-upscaling:
- shard-bmg: NOTRUN -> [SKIP][28] ([Intel XE#7178] / [Intel XE#7351])
[28]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-4/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-upscaling.html
* igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-cur-indfb-onoff:
- shard-lnl: NOTRUN -> [SKIP][29] ([Intel XE#656] / [Intel XE#7905]) +4 other tests skip
[29]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-cur-indfb-onoff.html
* igt@kms_frontbuffer_tracking@drrs-argb161616f-draw-render:
- shard-lnl: NOTRUN -> [SKIP][30] ([Intel XE#7061] / [Intel XE#7356]) +1 other test skip
[30]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@kms_frontbuffer_tracking@drrs-argb161616f-draw-render.html
* igt@kms_frontbuffer_tracking@drrs-shrfb-scaledprimary:
- shard-lnl: NOTRUN -> [SKIP][31] ([Intel XE#6312] / [Intel XE#651]) +1 other test skip
[31]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@kms_frontbuffer_tracking@drrs-shrfb-scaledprimary.html
* igt@kms_frontbuffer_tracking@drrshdr-1p-primscrn-pri-indfb-draw-mmap-wc:
- shard-bmg: NOTRUN -> [SKIP][32] ([Intel XE#2311]) +7 other tests skip
[32]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-4/igt@kms_frontbuffer_tracking@drrshdr-1p-primscrn-pri-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-move:
- shard-bmg: NOTRUN -> [SKIP][33] ([Intel XE#4141]) +1 other test skip
[33]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-move.html
* igt@kms_frontbuffer_tracking@fbcdrrs-tiling-y:
- shard-bmg: NOTRUN -> [SKIP][34] ([Intel XE#2352] / [Intel XE#7399])
[34]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@kms_frontbuffer_tracking@fbcdrrs-tiling-y.html
* igt@kms_frontbuffer_tracking@fbcdrrshdr-1p-primscrn-spr-indfb-move:
- shard-lnl: NOTRUN -> [SKIP][35] ([Intel XE#6312]) +1 other test skip
[35]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@kms_frontbuffer_tracking@fbcdrrshdr-1p-primscrn-spr-indfb-move.html
* igt@kms_frontbuffer_tracking@fbcpsrhdr-argb161616f-draw-render:
- shard-lnl: NOTRUN -> [SKIP][36] ([Intel XE#7061])
[36]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@kms_frontbuffer_tracking@fbcpsrhdr-argb161616f-draw-render.html
* igt@kms_frontbuffer_tracking@hdr-2p-scndscrn-indfb-msflip-blt:
- shard-lnl: NOTRUN -> [SKIP][37] ([Intel XE#7905]) +6 other tests skip
[37]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@kms_frontbuffer_tracking@hdr-2p-scndscrn-indfb-msflip-blt.html
* igt@kms_frontbuffer_tracking@psr-1p-offscreen-pri-shrfb-draw-mmap-wc:
- shard-bmg: NOTRUN -> [SKIP][38] ([Intel XE#2313]) +9 other tests skip
[38]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@kms_frontbuffer_tracking@psr-1p-offscreen-pri-shrfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@psrhdr-suspend:
- shard-lnl: NOTRUN -> [SKIP][39] ([Intel XE#7865]) +5 other tests skip
[39]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@kms_frontbuffer_tracking@psrhdr-suspend.html
* igt@kms_plane@pixel-format-yf-tiled-modifier:
- shard-bmg: NOTRUN -> [SKIP][40] ([Intel XE#7283])
[40]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@kms_plane@pixel-format-yf-tiled-modifier.html
* igt@kms_plane_lowres@tiling-y:
- shard-lnl: NOTRUN -> [SKIP][41] ([Intel XE#599])
[41]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@kms_plane_lowres@tiling-y.html
* igt@kms_plane_multiple@2x-tiling-x:
- shard-lnl: NOTRUN -> [SKIP][42] ([Intel XE#4596] / [Intel XE#5854])
[42]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@kms_plane_multiple@2x-tiling-x.html
* igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-75@pipe-b:
- shard-bmg: NOTRUN -> [SKIP][43] ([Intel XE#2763] / [Intel XE#6886]) +4 other tests skip
[43]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-75@pipe-b.html
* igt@kms_pm_dc@dc3co-vpb-simulation:
- shard-lnl: NOTRUN -> [SKIP][44] ([Intel XE#8395] / [Intel XE#8396]) +1 other test skip
[44]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@kms_pm_dc@dc3co-vpb-simulation.html
* igt@kms_pm_dc@dc3co-vpb-simulation@psr2-yuv420:
- shard-lnl: NOTRUN -> [SKIP][45] ([Intel XE#8396]) +1 other test skip
[45]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@kms_pm_dc@dc3co-vpb-simulation@psr2-yuv420.html
* igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-sf:
- shard-bmg: NOTRUN -> [SKIP][46] ([Intel XE#1489]) +1 other test skip
[46]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-sf.html
* igt@kms_psr@psr-cursor-plane-onoff:
- shard-bmg: NOTRUN -> [SKIP][47] ([Intel XE#2234] / [Intel XE#2850]) +2 other tests skip
[47]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@kms_psr@psr-cursor-plane-onoff.html
* igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180:
- shard-lnl: NOTRUN -> [SKIP][48] ([Intel XE#1127] / [Intel XE#5813])
[48]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180.html
* igt@kms_sharpness_filter@invalid-filter-with-nearest-neighbor:
- shard-bmg: NOTRUN -> [SKIP][49] ([Intel XE#6503])
[49]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@kms_sharpness_filter@invalid-filter-with-nearest-neighbor.html
* igt@xe_evict@evict-beng-mixed-threads-large:
- shard-lnl: NOTRUN -> [SKIP][50] ([Intel XE#6540] / [Intel XE#688])
[50]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@xe_evict@evict-beng-mixed-threads-large.html
* igt@xe_evict@evict-small-external-multi-queue-cm:
- shard-bmg: NOTRUN -> [SKIP][51] ([Intel XE#8370])
[51]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@xe_evict@evict-small-external-multi-queue-cm.html
* igt@xe_exec_balancer@once-cm-parallel-userptr:
- shard-lnl: NOTRUN -> [SKIP][52] ([Intel XE#7482]) +1 other test skip
[52]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@xe_exec_balancer@once-cm-parallel-userptr.html
* igt@xe_exec_basic@multigpu-once-bindexecqueue-userptr-invalidate:
- shard-bmg: NOTRUN -> [SKIP][53] ([Intel XE#2322] / [Intel XE#7372])
[53]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@xe_exec_basic@multigpu-once-bindexecqueue-userptr-invalidate.html
* igt@xe_exec_fault_mode@twice-multi-queue-rebind-prefetch:
- shard-lnl: NOTRUN -> [SKIP][54] ([Intel XE#8374]) +1 other test skip
[54]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@xe_exec_fault_mode@twice-multi-queue-rebind-prefetch.html
* igt@xe_exec_fault_mode@twice-multi-queue-userptr-invalidate-race:
- shard-bmg: NOTRUN -> [SKIP][55] ([Intel XE#8374])
[55]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@xe_exec_fault_mode@twice-multi-queue-userptr-invalidate-race.html
* igt@xe_exec_multi_queue@few-execs-preempt-mode-basic-smem:
- shard-lnl: NOTRUN -> [SKIP][56] ([Intel XE#8364]) +4 other tests skip
[56]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@xe_exec_multi_queue@few-execs-preempt-mode-basic-smem.html
* igt@xe_exec_multi_queue@many-execs-preempt-mode-fault-userptr-invalidate:
- shard-bmg: NOTRUN -> [SKIP][57] ([Intel XE#8364]) +5 other tests skip
[57]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@xe_exec_multi_queue@many-execs-preempt-mode-fault-userptr-invalidate.html
* igt@xe_exec_reset@cm-multi-queue-close-execqueues:
- shard-bmg: NOTRUN -> [SKIP][58] ([Intel XE#8369])
[58]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@xe_exec_reset@cm-multi-queue-close-execqueues.html
* igt@xe_exec_threads@threads-multi-queue-mixed-shared-vm-userptr:
- shard-lnl: NOTRUN -> [SKIP][59] ([Intel XE#8378]) +1 other test skip
[59]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@xe_exec_threads@threads-multi-queue-mixed-shared-vm-userptr.html
* igt@xe_exec_threads@threads-multi-queue-rebind-err:
- shard-bmg: NOTRUN -> [SKIP][60] ([Intel XE#8378]) +2 other tests skip
[60]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@xe_exec_threads@threads-multi-queue-rebind-err.html
* igt@xe_gt_freq@freq_suspend:
- shard-lnl: NOTRUN -> [SKIP][61] ([Intel XE#584] / [Intel XE#7369])
[61]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@xe_gt_freq@freq_suspend.html
* igt@xe_module_load@load:
- shard-bmg: ([PASS][62], [PASS][63], [PASS][64], [PASS][65], [PASS][66], [PASS][67], [PASS][68], [PASS][69], [PASS][70], [PASS][71], [PASS][72], [PASS][73], [PASS][74], [PASS][75], [PASS][76], [PASS][77], [PASS][78], [PASS][79], [PASS][80], [PASS][81], [PASS][82], [PASS][83], [PASS][84], [PASS][85], [PASS][86]) -> ([PASS][87], [PASS][88], [PASS][89], [PASS][90], [PASS][91], [PASS][92], [PASS][93], [PASS][94], [PASS][95], [PASS][96], [PASS][97], [PASS][98], [PASS][99], [PASS][100], [PASS][101], [PASS][102], [PASS][103], [PASS][104], [PASS][105], [SKIP][106]) ([Intel XE#2457] / [Intel XE#7405])
[62]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-7/igt@xe_module_load@load.html
[63]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-1/igt@xe_module_load@load.html
[64]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-3/igt@xe_module_load@load.html
[65]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-9/igt@xe_module_load@load.html
[66]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-9/igt@xe_module_load@load.html
[67]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-5/igt@xe_module_load@load.html
[68]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-3/igt@xe_module_load@load.html
[69]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-10/igt@xe_module_load@load.html
[70]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-10/igt@xe_module_load@load.html
[71]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-4/igt@xe_module_load@load.html
[72]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-8/igt@xe_module_load@load.html
[73]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-3/igt@xe_module_load@load.html
[74]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-10/igt@xe_module_load@load.html
[75]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-6/igt@xe_module_load@load.html
[76]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-6/igt@xe_module_load@load.html
[77]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-7/igt@xe_module_load@load.html
[78]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-7/igt@xe_module_load@load.html
[79]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-8/igt@xe_module_load@load.html
[80]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-2/igt@xe_module_load@load.html
[81]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-4/igt@xe_module_load@load.html
[82]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-2/igt@xe_module_load@load.html
[83]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-4/igt@xe_module_load@load.html
[84]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-5/igt@xe_module_load@load.html
[85]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-1/igt@xe_module_load@load.html
[86]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-8/igt@xe_module_load@load.html
[87]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-8/igt@xe_module_load@load.html
[88]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-7/igt@xe_module_load@load.html
[89]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-2/igt@xe_module_load@load.html
[90]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-2/igt@xe_module_load@load.html
[91]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-7/igt@xe_module_load@load.html
[92]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-7/igt@xe_module_load@load.html
[93]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@xe_module_load@load.html
[94]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@xe_module_load@load.html
[95]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-2/igt@xe_module_load@load.html
[96]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-8/igt@xe_module_load@load.html
[97]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-5/igt@xe_module_load@load.html
[98]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-4/igt@xe_module_load@load.html
[99]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-4/igt@xe_module_load@load.html
[100]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-1/igt@xe_module_load@load.html
[101]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-1/igt@xe_module_load@load.html
[102]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-10/igt@xe_module_load@load.html
[103]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-6/igt@xe_module_load@load.html
[104]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-6/igt@xe_module_load@load.html
[105]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-6/igt@xe_module_load@load.html
[106]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@xe_module_load@load.html
* igt@xe_multigpu_svm@mgpu-pagefault-prefetch:
- shard-lnl: NOTRUN -> [SKIP][107] ([Intel XE#6964])
[107]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@xe_multigpu_svm@mgpu-pagefault-prefetch.html
* igt@xe_multigpu_svm@mgpu-xgpu-access-basic:
- shard-bmg: NOTRUN -> [SKIP][108] ([Intel XE#6964])
[108]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@xe_multigpu_svm@mgpu-xgpu-access-basic.html
* igt@xe_page_reclaim@prl-max-entries:
- shard-bmg: NOTRUN -> [SKIP][109] ([Intel XE#7793])
[109]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@xe_page_reclaim@prl-max-entries.html
* igt@xe_pat@l2-flush-opt-svm-pat-restrict:
- shard-lnl: NOTRUN -> [SKIP][110] ([Intel XE#7590] / [Intel XE#7772])
[110]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@xe_pat@l2-flush-opt-svm-pat-restrict.html
* igt@xe_query@multigpu-query-invalid-query:
- shard-bmg: NOTRUN -> [SKIP][111] ([Intel XE#944])
[111]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@xe_query@multigpu-query-invalid-query.html
* igt@xe_sriov_admin@default-sched-attributes-vfs-disabled:
- shard-lnl: NOTRUN -> [SKIP][112] ([Intel XE#7174])
[112]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@xe_sriov_admin@default-sched-attributes-vfs-disabled.html
* igt@xe_sriov_scheduling@equal-throughput-normal-priority:
- shard-lnl: NOTRUN -> [SKIP][113] ([Intel XE#8339])
[113]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-lnl-2/igt@xe_sriov_scheduling@equal-throughput-normal-priority.html
#### Possible fixes ####
* igt@xe_wedged@wedged-mode-toggle:
- shard-bmg: [ABORT][114] ([Intel XE#8007]) -> [PASS][115]
[114]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6/shard-bmg-4/igt@xe_wedged@wedged-mode-toggle.html
[115]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/shard-bmg-3/igt@xe_wedged@wedged-mode-toggle.html
[Intel XE#1124]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1124
[Intel XE#1127]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1127
[Intel XE#1178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1178
[Intel XE#1407]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1407
[Intel XE#1421]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1421
[Intel XE#1489]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1489
[Intel XE#2234]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2234
[Intel XE#2252]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2252
[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#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#2352]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2352
[Intel XE#2373]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2373
[Intel XE#2457]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2457
[Intel XE#2669]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2669
[Intel XE#2763]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2763
[Intel XE#2850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2850
[Intel XE#2887]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2887
[Intel XE#301]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/301
[Intel XE#3098]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3098
[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#3432]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3432
[Intel XE#373]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/373
[Intel XE#4141]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4141
[Intel XE#4596]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4596
[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#5854]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5854
[Intel XE#599]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/599
[Intel XE#6312]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6312
[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#688]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/688
[Intel XE#6886]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6886
[Intel XE#6964]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6964
[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#7349]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7349
[Intel XE#7351]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7351
[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#7369]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7369
[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#7389]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7389
[Intel XE#7399]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7399
[Intel XE#7405]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7405
[Intel XE#7448]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7448
[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#7679]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7679
[Intel XE#7772]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7772
[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#8007]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8007
[Intel XE#8265]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8265
[Intel XE#8339]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8339
[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#8370]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8370
[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#8395]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8395
[Intel XE#8396]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8396
[Intel XE#8680]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8680
[Intel XE#944]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/944
Build changes
-------------
* Linux: xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6 -> xe-pw-162015v4
IGT_9078: 9078
xe-5664-37b6bb1186b8170c2031b312e82205caa05e19d6: 37b6bb1186b8170c2031b312e82205caa05e19d6
xe-pw-162015v4: 162015v4
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-162015v4/index.html
[-- Attachment #2: Type: text/html, Size: 35004 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread