* [PATCH i-g-t v2] tests/kms_setmode: Relax vblank timing tolerance from 1 scanline to 1%
@ 2026-04-16 14:45 Jason-JH Lin
2026-04-16 15:00 ` Ville Syrjälä
` (3 more replies)
0 siblings, 4 replies; 7+ messages in thread
From: Jason-JH Lin @ 2026-04-16 14:45 UTC (permalink / raw)
To: igt-dev, Karthik B S, Swati Sharma, Jani, Jeevan, Kamil Konieczny,
Fei Shao
Cc: Juha-Pekka Heikkila, Bhanuprakash Modem, Jason-JH Lin,
Paul-PL Chen, Nancy Lin, Singo Chang, Gil Dekel, Yacoub,
Project_Global_Chrome_Upstream_Group
The original check_timings() validation required vblank intervals to be
within 1 scanline (~15us for 1080p60) which is overly strict and causes
false failures due to userspace measurement overhead.
Changes:
- Keep original strict checks (1 scanline, 1.718 sigma) as warnings only
- Add relaxed validation with 1% relative tolerance for pass/fail
- Use 3 sigma threshold (99.7% confidence) instead of 1.718 sigma (90%)
Rationale:
Hardware specs (VESA/HDMI/DP) allow ±0.5% pixel clock tolerance, which
translates to ±0.5% frame time due to inverse relationship. However,
userspace measurement via read() syscall adds ~0.3-0.5% overhead from:
- Interrupt latency and scheduling delays (5-50 us)
- System call overhead (1-5 us)
- Variable delays depending on system load
Total tolerance: ±0.5% (hardware) + ~0.5% (software) = ±1.0%
This makes the test ~11x more tolerant while still detecting real timing
issues and aligning with industry hardware specifications.
Signed-off-by: Jason-JH Lin <jason-jh.lin@mediatek.com>
Suggested-by: Jeevain B <jeevan.b@intel.com>
---
tests/kms_setmode.c | 71 +++++++++++++++++++++++++++++++++++++--------
1 file changed, 59 insertions(+), 12 deletions(-)
diff --git a/tests/kms_setmode.c b/tests/kms_setmode.c
index 1f2849bc26cf..b452f8a9e997 100644
--- a/tests/kms_setmode.c
+++ b/tests/kms_setmode.c
@@ -495,6 +495,7 @@ static bool check_timings(int crtc_idx, const drmModeModeInfo *kmode)
double mean;
double stddev;
int n;
+ bool strict_failed = false;
memset(&wait, 0, sizeof(wait));
wait.request.type = kmstest_get_vbl_flag(crtc_idx);
@@ -563,10 +564,9 @@ static bool check_timings(int crtc_idx, const drmModeModeInfo *kmode)
/* 99.7% samples within one scanline on each side of mean */
if (accuracy >= line_time(kmode)) {
- igt_info("vblank accuracy (%.3fus, %.1f%%) worse than a scanline (%.3fus)\n",
- accuracy, 100 * accuracy / mean, line_time(kmode));
-
- return false;
+ igt_warn("vblank accuracy (%.3fus, %.1f%%) worse than a scanline (%.3fus)\n",
+ accuracy, 100 * accuracy / mean, line_time(kmode));
+ strict_failed = true;
}
/* At least 90% of frame times fall within the one scanline on each
@@ -591,14 +591,61 @@ static bool check_timings(int crtc_idx, const drmModeModeInfo *kmode)
* https://en.wikipedia.org/wiki/Standard_deviation#Rules_for_normally_distributed_data
*/
if (fabs(mean - expected) >= max(line_time(kmode), 1.718 * stddev)) {
- igt_info("vblank interval differs from modeline! expected %.1fus, "
- "measured %1.fus +- %.3fus, difference %.1fus (%.1f sigma, %.1f scanlines)\n",
- expected, mean, stddev,
- fabs(mean - expected),
- fabs(mean - expected) / stddev,
- fabs(mean - expected) / line_time(kmode));
-
- return false;
+ igt_warn("vblank interval differs from modeline! expected %.1fus, "
+ "measured %1.fus +- %.3fus, difference %.1fus "
+ "(%.1f sigma, %.1f scanlines)\n",
+ expected, mean, stddev,
+ fabs(mean - expected),
+ fabs(mean - expected) / stddev,
+ fabs(mean - expected) / line_time(kmode));
+ strict_failed = true;
+ }
+
+ if (strict_failed) {
+ /* Relaxed validation: 1% relative tolerance for accuracy and deviation
+ *
+ * Hardware specifications (VESA/HDMI/DP) allow ±0.5% pixel clock tolerance.
+ * Since frame_time = (htotal × vtotal) / pixel_clock, the relationship is
+ * inverse: ±0.5% pixel clock → ±0.5% frame time (in opposite direction).
+ *
+ * However, userspace measurement introduces additional overhead (~0.3-0.5%):
+ * - Interrupt latency and scheduling delays (5-50 μs)
+ * - System call overhead for read() (1-5 μs)
+ * - Variable delays depending on system load
+ *
+ * Total tolerance: ±0.5% (hardware) + ~0.5% (software) ≈ ±1.0%
+ *
+ * For stricter validation matching hardware spec only, use 0.005 (0.5%),
+ * but expect potential false failures due to measurement noise.
+ */
+ double tolerance_pct = 0.01; /* 1% tolerance */
+ double tolerance_us = expected * tolerance_pct;
+ double relative_accuracy = accuracy / expected;
+
+ /* Check 1: 99.7% samples within 1% of the mean */
+ if (accuracy >= tolerance_us) {
+ igt_info("FAIL: vblank accuracy (%.3fus, %.2f%%) exceeds 1%% tolerance "
+ "(%.3fus)\n",
+ accuracy, 100 * relative_accuracy, tolerance_us);
+ return false;
+ }
+
+ /* Check 2: Mean within 1% of expected, or within 3 sigma (99.7% confidence) */
+ if (fabs(mean - expected) >= max(tolerance_us, 3.0 * stddev)) {
+ igt_info("FAIL: vblank interval differs from expected! expected %.1fus, "
+ "measured %.1fus +- %.3fus, difference %.1fus "
+ "(%.1f sigma, %.2f%%), "
+ "exceeds 1%% tolerance or 3-sigma threshold\n",
+ expected, mean, stddev,
+ fabs(mean - expected),
+ fabs(mean - expected) / stddev,
+ 100 * fabs(mean - expected) / expected);
+ return false;
+ }
+
+ igt_info("Passed relaxed validation (strict failed)\n");
+ } else {
+ igt_info("Passed strict validation\n");
}
return true;
--
2.43.0
^ permalink raw reply related [flat|nested] 7+ messages in thread* Re: [PATCH i-g-t v2] tests/kms_setmode: Relax vblank timing tolerance from 1 scanline to 1% 2026-04-16 14:45 [PATCH i-g-t v2] tests/kms_setmode: Relax vblank timing tolerance from 1 scanline to 1% Jason-JH Lin @ 2026-04-16 15:00 ` Ville Syrjälä 2026-04-16 15:29 ` Ville Syrjälä 2026-04-17 0:04 ` ✓ Xe.CI.BAT: success for tests/kms_setmode: Relax vblank timing tolerance from 1 scanline to 1% (rev2) Patchwork ` (2 subsequent siblings) 3 siblings, 1 reply; 7+ messages in thread From: Ville Syrjälä @ 2026-04-16 15:00 UTC (permalink / raw) To: Jason-JH Lin Cc: igt-dev, Karthik B S, Swati Sharma, Jani, Jeevan, Kamil Konieczny, Fei Shao, Juha-Pekka Heikkila, Bhanuprakash Modem, Paul-PL Chen, Nancy Lin, Singo Chang, Gil Dekel, Yacoub, Project_Global_Chrome_Upstream_Group On Thu, Apr 16, 2026 at 10:45:28PM +0800, Jason-JH Lin wrote: > The original check_timings() validation required vblank intervals to be > within 1 scanline (~15us for 1080p60) which is overly strict and causes > false failures due to userspace measurement overhead. > > Changes: > - Keep original strict checks (1 scanline, 1.718 sigma) as warnings only > - Add relaxed validation with 1% relative tolerance for pass/fail > - Use 3 sigma threshold (99.7% confidence) instead of 1.718 sigma (90%) > > Rationale: > Hardware specs (VESA/HDMI/DP) allow ±0.5% pixel clock tolerance, which > translates to ±0.5% frame time due to inverse relationship. However, > userspace measurement via read() syscall adds ~0.3-0.5% overhead from: read() overhead is irrelevant here. This is measuring the accuracy of the kernel generated vblank event timestamps. If you are having problems with this then that would indicate your kernel driver isn't generating particularly good timestamps, or it's using a dotclock that doesn't quite match what userspace specified originally. > - Interrupt latency and scheduling delays (5-50 us) > - System call overhead (1-5 us) > - Variable delays depending on system load > > Total tolerance: ±0.5% (hardware) + ~0.5% (software) = ±1.0% > > This makes the test ~11x more tolerant while still detecting real timing > issues and aligning with industry hardware specifications. > > Signed-off-by: Jason-JH Lin <jason-jh.lin@mediatek.com> > Suggested-by: Jeevain B <jeevan.b@intel.com> > --- > tests/kms_setmode.c | 71 +++++++++++++++++++++++++++++++++++++-------- > 1 file changed, 59 insertions(+), 12 deletions(-) > > diff --git a/tests/kms_setmode.c b/tests/kms_setmode.c > index 1f2849bc26cf..b452f8a9e997 100644 > --- a/tests/kms_setmode.c > +++ b/tests/kms_setmode.c > @@ -495,6 +495,7 @@ static bool check_timings(int crtc_idx, const drmModeModeInfo *kmode) > double mean; > double stddev; > int n; > + bool strict_failed = false; > > memset(&wait, 0, sizeof(wait)); > wait.request.type = kmstest_get_vbl_flag(crtc_idx); > @@ -563,10 +564,9 @@ static bool check_timings(int crtc_idx, const drmModeModeInfo *kmode) > > /* 99.7% samples within one scanline on each side of mean */ > if (accuracy >= line_time(kmode)) { > - igt_info("vblank accuracy (%.3fus, %.1f%%) worse than a scanline (%.3fus)\n", > - accuracy, 100 * accuracy / mean, line_time(kmode)); > - > - return false; > + igt_warn("vblank accuracy (%.3fus, %.1f%%) worse than a scanline (%.3fus)\n", > + accuracy, 100 * accuracy / mean, line_time(kmode)); > + strict_failed = true; > } > > /* At least 90% of frame times fall within the one scanline on each > @@ -591,14 +591,61 @@ static bool check_timings(int crtc_idx, const drmModeModeInfo *kmode) > * https://en.wikipedia.org/wiki/Standard_deviation#Rules_for_normally_distributed_data > */ > if (fabs(mean - expected) >= max(line_time(kmode), 1.718 * stddev)) { > - igt_info("vblank interval differs from modeline! expected %.1fus, " > - "measured %1.fus +- %.3fus, difference %.1fus (%.1f sigma, %.1f scanlines)\n", > - expected, mean, stddev, > - fabs(mean - expected), > - fabs(mean - expected) / stddev, > - fabs(mean - expected) / line_time(kmode)); > - > - return false; > + igt_warn("vblank interval differs from modeline! expected %.1fus, " > + "measured %1.fus +- %.3fus, difference %.1fus " > + "(%.1f sigma, %.1f scanlines)\n", > + expected, mean, stddev, > + fabs(mean - expected), > + fabs(mean - expected) / stddev, > + fabs(mean - expected) / line_time(kmode)); > + strict_failed = true; > + } > + > + if (strict_failed) { > + /* Relaxed validation: 1% relative tolerance for accuracy and deviation > + * > + * Hardware specifications (VESA/HDMI/DP) allow ±0.5% pixel clock tolerance. > + * Since frame_time = (htotal × vtotal) / pixel_clock, the relationship is > + * inverse: ±0.5% pixel clock → ±0.5% frame time (in opposite direction). > + * > + * However, userspace measurement introduces additional overhead (~0.3-0.5%): > + * - Interrupt latency and scheduling delays (5-50 μs) > + * - System call overhead for read() (1-5 μs) > + * - Variable delays depending on system load > + * > + * Total tolerance: ±0.5% (hardware) + ~0.5% (software) ≈ ±1.0% > + * > + * For stricter validation matching hardware spec only, use 0.005 (0.5%), > + * but expect potential false failures due to measurement noise. > + */ > + double tolerance_pct = 0.01; /* 1% tolerance */ > + double tolerance_us = expected * tolerance_pct; > + double relative_accuracy = accuracy / expected; > + > + /* Check 1: 99.7% samples within 1% of the mean */ > + if (accuracy >= tolerance_us) { > + igt_info("FAIL: vblank accuracy (%.3fus, %.2f%%) exceeds 1%% tolerance " > + "(%.3fus)\n", > + accuracy, 100 * relative_accuracy, tolerance_us); > + return false; > + } > + > + /* Check 2: Mean within 1% of expected, or within 3 sigma (99.7% confidence) */ > + if (fabs(mean - expected) >= max(tolerance_us, 3.0 * stddev)) { > + igt_info("FAIL: vblank interval differs from expected! expected %.1fus, " > + "measured %.1fus +- %.3fus, difference %.1fus " > + "(%.1f sigma, %.2f%%), " > + "exceeds 1%% tolerance or 3-sigma threshold\n", > + expected, mean, stddev, > + fabs(mean - expected), > + fabs(mean - expected) / stddev, > + 100 * fabs(mean - expected) / expected); > + return false; > + } > + > + igt_info("Passed relaxed validation (strict failed)\n"); > + } else { > + igt_info("Passed strict validation\n"); > } > > return true; > -- > 2.43.0 -- Ville Syrjälä Intel ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH i-g-t v2] tests/kms_setmode: Relax vblank timing tolerance from 1 scanline to 1% 2026-04-16 15:00 ` Ville Syrjälä @ 2026-04-16 15:29 ` Ville Syrjälä 2026-04-17 8:50 ` Jason-JH Lin (林睿祥) 0 siblings, 1 reply; 7+ messages in thread From: Ville Syrjälä @ 2026-04-16 15:29 UTC (permalink / raw) To: Jason-JH Lin Cc: igt-dev, Karthik B S, Swati Sharma, Jani, Jeevan, Kamil Konieczny, Fei Shao, Juha-Pekka Heikkila, Bhanuprakash Modem, Paul-PL Chen, Nancy Lin, Singo Chang, Gil Dekel, Yacoub, Project_Global_Chrome_Upstream_Group On Thu, Apr 16, 2026 at 06:00:58PM +0300, Ville Syrjälä wrote: > On Thu, Apr 16, 2026 at 10:45:28PM +0800, Jason-JH Lin wrote: > > The original check_timings() validation required vblank intervals to be > > within 1 scanline (~15us for 1080p60) which is overly strict and causes > > false failures due to userspace measurement overhead. > > > > Changes: > > - Keep original strict checks (1 scanline, 1.718 sigma) as warnings only > > - Add relaxed validation with 1% relative tolerance for pass/fail > > - Use 3 sigma threshold (99.7% confidence) instead of 1.718 sigma (90%) > > > > Rationale: > > Hardware specs (VESA/HDMI/DP) allow ±0.5% pixel clock tolerance, which > > translates to ±0.5% frame time due to inverse relationship. However, > > userspace measurement via read() syscall adds ~0.3-0.5% overhead from: > > read() overhead is irrelevant here. This is measuring the accuracy > of the kernel generated vblank event timestamps. If you are having > problems with this then that would indicate your kernel driver isn't > generating particularly good timestamps, or it's using a dotclock that > doesn't quite match what userspace specified originally. > > > - Interrupt latency and scheduling delays (5-50 us) > > - System call overhead (1-5 us) > > - Variable delays depending on system load > > > > Total tolerance: ±0.5% (hardware) + ~0.5% (software) = ±1.0% > > > > This makes the test ~11x more tolerant while still detecting real timing > > issues and aligning with industry hardware specifications. > > > > Signed-off-by: Jason-JH Lin <jason-jh.lin@mediatek.com> > > Suggested-by: Jeevain B <jeevan.b@intel.com> > > --- > > tests/kms_setmode.c | 71 +++++++++++++++++++++++++++++++++++++-------- > > 1 file changed, 59 insertions(+), 12 deletions(-) > > > > diff --git a/tests/kms_setmode.c b/tests/kms_setmode.c > > index 1f2849bc26cf..b452f8a9e997 100644 > > --- a/tests/kms_setmode.c > > +++ b/tests/kms_setmode.c > > @@ -495,6 +495,7 @@ static bool check_timings(int crtc_idx, const drmModeModeInfo *kmode) > > double mean; > > double stddev; > > int n; > > + bool strict_failed = false; > > > > memset(&wait, 0, sizeof(wait)); > > wait.request.type = kmstest_get_vbl_flag(crtc_idx); > > @@ -563,10 +564,9 @@ static bool check_timings(int crtc_idx, const drmModeModeInfo *kmode) > > > > /* 99.7% samples within one scanline on each side of mean */ > > if (accuracy >= line_time(kmode)) { > > - igt_info("vblank accuracy (%.3fus, %.1f%%) worse than a scanline (%.3fus)\n", > > - accuracy, 100 * accuracy / mean, line_time(kmode)); > > - > > - return false; > > + igt_warn("vblank accuracy (%.3fus, %.1f%%) worse than a scanline (%.3fus)\n", > > + accuracy, 100 * accuracy / mean, line_time(kmode)); > > + strict_failed = true; Failing this would indicate the driver isn't generating particularly good timestamps. > > } > > > > /* At least 90% of frame times fall within the one scanline on each > > @@ -591,14 +591,61 @@ static bool check_timings(int crtc_idx, const drmModeModeInfo *kmode) > > * https://en.wikipedia.org/wiki/Standard_deviation#Rules_for_normally_distributed_data > > */ > > if (fabs(mean - expected) >= max(line_time(kmode), 1.718 * stddev)) { And assuming the timestamps were good, failing this would indicate the actual timings don't quite match what userspace specified (eg. dotclock could be a bit off). I suppose we should allow that VESA specified .5% error here. > > - igt_info("vblank interval differs from modeline! expected %.1fus, " > > - "measured %1.fus +- %.3fus, difference %.1fus (%.1f sigma, %.1f scanlines)\n", > > - expected, mean, stddev, > > - fabs(mean - expected), > > - fabs(mean - expected) / stddev, > > - fabs(mean - expected) / line_time(kmode)); > > - > > - return false; > > + igt_warn("vblank interval differs from modeline! expected %.1fus, " > > + "measured %1.fus +- %.3fus, difference %.1fus " > > + "(%.1f sigma, %.1f scanlines)\n", > > + expected, mean, stddev, > > + fabs(mean - expected), > > + fabs(mean - expected) / stddev, > > + fabs(mean - expected) / line_time(kmode)); > > + strict_failed = true; > > + } > > + > > + if (strict_failed) { > > + /* Relaxed validation: 1% relative tolerance for accuracy and deviation > > + * > > + * Hardware specifications (VESA/HDMI/DP) allow ±0.5% pixel clock tolerance. > > + * Since frame_time = (htotal × vtotal) / pixel_clock, the relationship is > > + * inverse: ±0.5% pixel clock → ±0.5% frame time (in opposite direction). > > + * > > + * However, userspace measurement introduces additional overhead (~0.3-0.5%): > > + * - Interrupt latency and scheduling delays (5-50 μs) > > + * - System call overhead for read() (1-5 μs) > > + * - Variable delays depending on system load > > + * > > + * Total tolerance: ±0.5% (hardware) + ~0.5% (software) ≈ ±1.0% > > + * > > + * For stricter validation matching hardware spec only, use 0.005 (0.5%), > > + * but expect potential false failures due to measurement noise. > > + */ > > + double tolerance_pct = 0.01; /* 1% tolerance */ > > + double tolerance_us = expected * tolerance_pct; > > + double relative_accuracy = accuracy / expected; > > + > > + /* Check 1: 99.7% samples within 1% of the mean */ > > + if (accuracy >= tolerance_us) { > > + igt_info("FAIL: vblank accuracy (%.3fus, %.2f%%) exceeds 1%% tolerance " > > + "(%.3fus)\n", > > + accuracy, 100 * relative_accuracy, tolerance_us); > > + return false; > > + } > > + > > + /* Check 2: Mean within 1% of expected, or within 3 sigma (99.7% confidence) */ > > + if (fabs(mean - expected) >= max(tolerance_us, 3.0 * stddev)) { > > + igt_info("FAIL: vblank interval differs from expected! expected %.1fus, " > > + "measured %.1fus +- %.3fus, difference %.1fus " > > + "(%.1f sigma, %.2f%%), " > > + "exceeds 1%% tolerance or 3-sigma threshold\n", > > + expected, mean, stddev, > > + fabs(mean - expected), > > + fabs(mean - expected) / stddev, > > + 100 * fabs(mean - expected) / expected); > > + return false; > > + } > > + > > + igt_info("Passed relaxed validation (strict failed)\n"); > > + } else { > > + igt_info("Passed strict validation\n"); > > } > > > > return true; > > -- > > 2.43.0 > > -- > Ville Syrjälä > Intel -- Ville Syrjälä Intel ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH i-g-t v2] tests/kms_setmode: Relax vblank timing tolerance from 1 scanline to 1% 2026-04-16 15:29 ` Ville Syrjälä @ 2026-04-17 8:50 ` Jason-JH Lin (林睿祥) 0 siblings, 0 replies; 7+ messages in thread From: Jason-JH Lin (林睿祥) @ 2026-04-17 8:50 UTC (permalink / raw) To: ville.syrjala@linux.intel.com Cc: karthik.b.s@intel.com, swati2.sharma@intel.com, jani.nikula@intel.com, juhapekka.heikkila@gmail.com, Singo Chang (張興國), jeevan.b@intel.com, bhanuprakash.modem@gmail.com, igt-dev@lists.freedesktop.org, Paul-pl Chen (陳柏霖), kamil.konieczny@linux.intel.com, Project_Global_Chrome_Upstream_Group, Nancy Lin (林欣螢), fshao@chromium.org, markyacoub@chromium.org, gildekel@google.com On Thu, 2026-04-16 at 18:29 +0300, Ville Syrjälä wrote: > On Thu, Apr 16, 2026 at 06:00:58PM +0300, Ville Syrjälä wrote: > > On Thu, Apr 16, 2026 at 10:45:28PM +0800, Jason-JH Lin wrote: > > > The original check_timings() validation required vblank intervals > > > to be > > > within 1 scanline (~15us for 1080p60) which is overly strict and > > > causes > > > false failures due to userspace measurement overhead. > > > > > > Changes: > > > - Keep original strict checks (1 scanline, 1.718 sigma) as > > > warnings only > > > - Add relaxed validation with 1% relative tolerance for pass/fail > > > - Use 3 sigma threshold (99.7% confidence) instead of 1.718 sigma > > > (90%) > > > > > > Rationale: > > > Hardware specs (VESA/HDMI/DP) allow ±0.5% pixel clock tolerance, > > > which > > > translates to ±0.5% frame time due to inverse relationship. > > > However, > > > userspace measurement via read() syscall adds ~0.3-0.5% overhead > > > from: > > > > read() overhead is irrelevant here. This is measuring the accuracy > > of the kernel generated vblank event timestamps. If you are having > > problems with this then that would indicate your kernel driver > > isn't > > generating particularly good timestamps, or it's using a dotclock > > that > > doesn't quite match what userspace specified originally. > > > > > - Interrupt latency and scheduling delays (5-50 us) > > > - System call overhead (1-5 us) > > > - Variable delays depending on system load > > > > > > Total tolerance: ±0.5% (hardware) + ~0.5% (software) = ±1.0% > > > > > > This makes the test ~11x more tolerant while still detecting real > > > timing > > > issues and aligning with industry hardware specifications. > > > > > > Signed-off-by: Jason-JH Lin <jason-jh.lin@mediatek.com> > > > Suggested-by: Jeevain B <jeevan.b@intel.com> > > > --- > > > tests/kms_setmode.c | 71 +++++++++++++++++++++++++++++++++++++-- > > > ------ > > > 1 file changed, 59 insertions(+), 12 deletions(-) > > > > > > diff --git a/tests/kms_setmode.c b/tests/kms_setmode.c > > > index 1f2849bc26cf..b452f8a9e997 100644 > > > --- a/tests/kms_setmode.c > > > +++ b/tests/kms_setmode.c > > > @@ -495,6 +495,7 @@ static bool check_timings(int crtc_idx, const > > > drmModeModeInfo *kmode) > > > double mean; > > > double stddev; > > > int n; > > > + bool strict_failed = false; > > > > > > memset(&wait, 0, sizeof(wait)); > > > wait.request.type = kmstest_get_vbl_flag(crtc_idx); > > > @@ -563,10 +564,9 @@ static bool check_timings(int crtc_idx, > > > const drmModeModeInfo *kmode) > > > > > > /* 99.7% samples within one scanline on each side of > > > mean */ > > > if (accuracy >= line_time(kmode)) { > > > - igt_info("vblank accuracy (%.3fus, %.1f%%) worse > > > than a scanline (%.3fus)\n", > > > - accuracy, 100 * accuracy / mean, > > > line_time(kmode)); > > > - > > > - return false; > > > + igt_warn("vblank accuracy (%.3fus, %.1f%%) worse > > > than a scanline (%.3fus)\n", > > > + accuracy, 100 * accuracy / mean, > > > line_time(kmode)); > > > + strict_failed = true; > > Failing this would indicate the driver isn't generating particularly > good timestamps. > > > > } > > > > > > /* At least 90% of frame times fall within the one > > > scanline on each > > > @@ -591,14 +591,61 @@ static bool check_timings(int crtc_idx, > > > const drmModeModeInfo *kmode) > > > * > > > https://urldefense.com/v3/__https://en.wikipedia.org/wiki/Standard_deviation*Rules_for_normally_distributed_data__;Iw!!CTRNKA9wMg0ARbw!mn4DeRxVpp3Y-PmcRLBfMYD4u4qjPzmx5JvBQ1PYYCBiTI_ygLNR5s_T01CTM6Ti-vnDSzzPxB509bsBcxgFBERpcqqRgSO5QA$ > > > > > > */ > > > if (fabs(mean - expected) >= max(line_time(kmode), 1.718 > > > * stddev)) { > > And assuming the timestamps were good, failing this would indicate > the > actual timings don't quite match what userspace specified (eg. > dotclock > could be a bit off). I suppose we should allow that VESA specified > .5% error here. Thank you for the review. You are right that read() overhead is irrelevant here since check_timings() is measuring kernel generated vblank event timestamps. I will remove that part of the rationale. Regarding the two checks: For Check 1 (timestamp accuracy >= line_time): You pointed out that failing this indicates the kernel driver isn't generating good timestamps. We will investigate and fix MTK's vblank timestamp implementation at the kernel driver level rather than relaxing the test. For Check 2 (mean deviation from expected): I will update the patch to only relax this check to allow the VESA specified ±0.5% pixel clock tolerance, and remove the read() overhead rationale from the commit message. Regards, Jason-JH Lin ^ permalink raw reply [flat|nested] 7+ messages in thread
* ✓ Xe.CI.BAT: success for tests/kms_setmode: Relax vblank timing tolerance from 1 scanline to 1% (rev2) 2026-04-16 14:45 [PATCH i-g-t v2] tests/kms_setmode: Relax vblank timing tolerance from 1 scanline to 1% Jason-JH Lin 2026-04-16 15:00 ` Ville Syrjälä @ 2026-04-17 0:04 ` Patchwork 2026-04-17 0:08 ` ✗ i915.CI.BAT: failure " Patchwork 2026-04-17 2:31 ` ✗ Xe.CI.FULL: " Patchwork 3 siblings, 0 replies; 7+ messages in thread From: Patchwork @ 2026-04-17 0:04 UTC (permalink / raw) To: Jason-JH Lin; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 1803 bytes --] == Series Details == Series: tests/kms_setmode: Relax vblank timing tolerance from 1 scanline to 1% (rev2) URL : https://patchwork.freedesktop.org/series/164961/ State : success == Summary == CI Bug Log - changes from XEIGT_8863_BAT -> XEIGTPW_15001_BAT ==================================================== Summary ------- **SUCCESS** No regressions found. Participating hosts (13 -> 13) ------------------------------ No changes in participating hosts Known issues ------------ Here are the changes found in XEIGTPW_15001_BAT that come from known issues: ### IGT changes ### #### Issues hit #### * igt@core_hotunplug@unbind-rebind: - bat-bmg-2: [PASS][1] -> [ABORT][2] ([Intel XE#7249] / [Intel XE#7578]) [1]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/bat-bmg-2/igt@core_hotunplug@unbind-rebind.html [2]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/bat-bmg-2/igt@core_hotunplug@unbind-rebind.html [Intel XE#7249]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7249 [Intel XE#7578]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7578 Build changes ------------- * IGT: IGT_8863 -> IGTPW_15001 * Linux: xe-4917-ff84b38d86b994ebb03d940be1c73a63e231f454 -> xe-4918-2a1c604bebed8cbbe6aea00f761777eed424dc55 IGTPW_15001: 6ba5a61a913adfbdccf86f3351be3fbadde1f379 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git IGT_8863: 5b279a8b71dc1672099205a1a9e8135c7c7fadb5 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git xe-4917-ff84b38d86b994ebb03d940be1c73a63e231f454: ff84b38d86b994ebb03d940be1c73a63e231f454 xe-4918-2a1c604bebed8cbbe6aea00f761777eed424dc55: 2a1c604bebed8cbbe6aea00f761777eed424dc55 == Logs == For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/index.html [-- Attachment #2: Type: text/html, Size: 2372 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* ✗ i915.CI.BAT: failure for tests/kms_setmode: Relax vblank timing tolerance from 1 scanline to 1% (rev2) 2026-04-16 14:45 [PATCH i-g-t v2] tests/kms_setmode: Relax vblank timing tolerance from 1 scanline to 1% Jason-JH Lin 2026-04-16 15:00 ` Ville Syrjälä 2026-04-17 0:04 ` ✓ Xe.CI.BAT: success for tests/kms_setmode: Relax vblank timing tolerance from 1 scanline to 1% (rev2) Patchwork @ 2026-04-17 0:08 ` Patchwork 2026-04-17 2:31 ` ✗ Xe.CI.FULL: " Patchwork 3 siblings, 0 replies; 7+ messages in thread From: Patchwork @ 2026-04-17 0:08 UTC (permalink / raw) To: Jason-JH Lin; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 3342 bytes --] == Series Details == Series: tests/kms_setmode: Relax vblank timing tolerance from 1 scanline to 1% (rev2) URL : https://patchwork.freedesktop.org/series/164961/ State : failure == Summary == CI Bug Log - changes from IGT_8863 -> IGTPW_15001 ==================================================== Summary ------- **FAILURE** Serious unknown changes coming with IGTPW_15001 absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in IGTPW_15001, please notify your bug team (I915-ci-infra@lists.freedesktop.org) to allow them to document this new failure mode, which will reduce false positives in CI. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15001/index.html Participating hosts (42 -> 40) ------------------------------ Missing (2): bat-dg2-13 fi-snb-2520m Possible new issues ------------------- Here are the unknown changes that may have been introduced in IGTPW_15001: ### IGT changes ### #### Possible regressions #### * igt@i915_selftest@live@workarounds: - bat-twl-1: [PASS][1] -> [ABORT][2] +1 other test abort [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8863/bat-twl-1/igt@i915_selftest@live@workarounds.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15001/bat-twl-1/igt@i915_selftest@live@workarounds.html Known issues ------------ Here are the changes found in IGTPW_15001 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@dmabuf@all-tests: - fi-skl-6600u: NOTRUN -> [SKIP][3] [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15001/fi-skl-6600u/igt@dmabuf@all-tests.html * igt@i915_selftest@live: - bat-mtlp-8: [PASS][4] -> [DMESG-FAIL][5] ([i915#12061]) +1 other test dmesg-fail [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8863/bat-mtlp-8/igt@i915_selftest@live.html [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15001/bat-mtlp-8/igt@i915_selftest@live.html #### Possible fixes #### * igt@i915_selftest@live: - fi-skl-6600u: [INCOMPLETE][6] ([i915#15859]) -> [PASS][7] [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8863/fi-skl-6600u/igt@i915_selftest@live.html [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15001/fi-skl-6600u/igt@i915_selftest@live.html * igt@i915_selftest@live@gtt: - fi-skl-6600u: [INCOMPLETE][8] -> [PASS][9] [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8863/fi-skl-6600u/igt@i915_selftest@live@gtt.html [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15001/fi-skl-6600u/igt@i915_selftest@live@gtt.html [i915#12061]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12061 [i915#15859]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15859 Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_8863 -> IGTPW_15001 CI-20190529: 20190529 CI_DRM_18347: 2a1c604bebed8cbbe6aea00f761777eed424dc55 @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_15001: 6ba5a61a913adfbdccf86f3351be3fbadde1f379 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git IGT_8863: 5b279a8b71dc1672099205a1a9e8135c7c7fadb5 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15001/index.html [-- Attachment #2: Type: text/html, Size: 4075 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* ✗ Xe.CI.FULL: failure for tests/kms_setmode: Relax vblank timing tolerance from 1 scanline to 1% (rev2) 2026-04-16 14:45 [PATCH i-g-t v2] tests/kms_setmode: Relax vblank timing tolerance from 1 scanline to 1% Jason-JH Lin ` (2 preceding siblings ...) 2026-04-17 0:08 ` ✗ i915.CI.BAT: failure " Patchwork @ 2026-04-17 2:31 ` Patchwork 3 siblings, 0 replies; 7+ messages in thread From: Patchwork @ 2026-04-17 2:31 UTC (permalink / raw) To: Jason-JH Lin; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 15392 bytes --] == Series Details == Series: tests/kms_setmode: Relax vblank timing tolerance from 1 scanline to 1% (rev2) URL : https://patchwork.freedesktop.org/series/164961/ State : failure == Summary == CI Bug Log - changes from XEIGT_8863_FULL -> XEIGTPW_15001_FULL ==================================================== Summary ------- **FAILURE** Serious unknown changes coming with XEIGTPW_15001_FULL absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in XEIGTPW_15001_FULL, please notify your bug team (I915-ci-infra@lists.freedesktop.org) to allow them to document this new failure mode, which will reduce false positives in CI. Participating hosts (2 -> 2) ------------------------------ No changes in participating hosts Possible new issues ------------------- Here are the unknown changes that may have been introduced in XEIGTPW_15001_FULL: ### IGT changes ### #### Possible regressions #### * igt@kms_flip@2x-wf_vblank-ts-check-interruptible@ad-dp2-hdmi-a3: - shard-bmg: [PASS][1] -> [FAIL][2] +4 other tests fail [1]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-5/igt@kms_flip@2x-wf_vblank-ts-check-interruptible@ad-dp2-hdmi-a3.html [2]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-bmg-3/igt@kms_flip@2x-wf_vblank-ts-check-interruptible@ad-dp2-hdmi-a3.html New tests --------- New tests have been introduced between XEIGT_8863_FULL and XEIGTPW_15001_FULL: ### New IGT tests (9) ### * igt@kms_hdr@invalid-metadata-sizes@pipe-a-hdmi-a-3-xrgb16161616f: - Statuses : 1 pass(s) - Exec time: [0.0] s * igt@kms_hdr@invalid-metadata-sizes@pipe-a-hdmi-a-3-xrgb2101010: - Statuses : 1 pass(s) - Exec time: [0.0] s * igt@kms_hdr@static-toggle-dpms@pipe-a-hdmi-a-3-xrgb16161616f: - Statuses : 1 pass(s) - Exec time: [1.23] s * igt@kms_hdr@static-toggle-dpms@pipe-a-hdmi-a-3-xrgb2101010: - Statuses : 1 pass(s) - Exec time: [1.48] s * igt@xe_render_copy@render-stress-0-copies: - Statuses : 2 pass(s) - Exec time: [3.22, 3.23] s * igt@xe_render_copy@render-stress-1-copies: - Statuses : 2 pass(s) - Exec time: [3.23, 3.24] s * igt@xe_render_copy@render-stress-2-copies: - Statuses : 2 pass(s) - Exec time: [3.23, 3.24] s * igt@xe_render_copy@render-stress-4-copies: - Statuses : 2 pass(s) - Exec time: [3.24] s * igt@xe_spin_batch@spin-mem-copy: - Statuses : 2 pass(s) - Exec time: [0.11, 0.24] s Known issues ------------ Here are the changes found in XEIGTPW_15001_FULL that come from known issues: ### IGT changes ### #### Issues hit #### * igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs: - shard-bmg: [PASS][3] -> [INCOMPLETE][4] ([Intel XE#7084]) +1 other test incomplete [3]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-10/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html [4]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-bmg-5/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html * igt@kms_content_protection@dp-mst-lic-type-0-hdcp14: - shard-bmg: NOTRUN -> [SKIP][5] ([Intel XE#6974]) [5]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-bmg-3/igt@kms_content_protection@dp-mst-lic-type-0-hdcp14.html * igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-upscaling: - shard-bmg: NOTRUN -> [SKIP][6] ([Intel XE#7178] / [Intel XE#7351]) [6]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-bmg-1/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-upscaling.html * igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-render: - shard-bmg: NOTRUN -> [SKIP][7] ([Intel XE#2311]) +3 other tests skip [7]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-bmg-7/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-render.html * igt@kms_hdr@invalid-hdr: - shard-bmg: [PASS][8] -> [SKIP][9] ([Intel XE#1503]) [8]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-3/igt@kms_hdr@invalid-hdr.html [9]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-bmg-6/igt@kms_hdr@invalid-hdr.html * igt@kms_pm_dc@dc5-dpms: - shard-lnl: [PASS][10] -> [FAIL][11] ([Intel XE#7340] / [Intel XE#7504]) [10]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-lnl-4/igt@kms_pm_dc@dc5-dpms.html [11]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-lnl-5/igt@kms_pm_dc@dc5-dpms.html * igt@kms_pm_dc@dc6-dpms: - shard-lnl: [PASS][12] -> [FAIL][13] ([Intel XE#7340]) [12]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-lnl-4/igt@kms_pm_dc@dc6-dpms.html [13]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-lnl-3/igt@kms_pm_dc@dc6-dpms.html * igt@kms_psr@fbc-psr2-primary-blt: - shard-bmg: NOTRUN -> [SKIP][14] ([Intel XE#2234] / [Intel XE#2850]) [14]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-bmg-7/igt@kms_psr@fbc-psr2-primary-blt.html * igt@kms_vrr@flip-dpms: - shard-bmg: NOTRUN -> [SKIP][15] ([Intel XE#1499]) [15]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-bmg-9/igt@kms_vrr@flip-dpms.html * igt@xe_exec_multi_queue@two-queues-preempt-mode-dyn-priority: - shard-bmg: NOTRUN -> [SKIP][16] ([Intel XE#6874]) [16]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-bmg-4/igt@xe_exec_multi_queue@two-queues-preempt-mode-dyn-priority.html * igt@xe_module_load@force-load: - shard-bmg: [PASS][17] -> [ABORT][18] ([Intel XE#7578]) [17]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-5/igt@xe_module_load@force-load.html [18]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-bmg-3/igt@xe_module_load@force-load.html * igt@xe_sriov_flr@flr-vf1-clear: - shard-bmg: [PASS][19] -> [FAIL][20] ([Intel XE#6569]) [19]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-8/igt@xe_sriov_flr@flr-vf1-clear.html [20]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-bmg-1/igt@xe_sriov_flr@flr-vf1-clear.html #### Possible fixes #### * igt@intel_hwmon@hwmon-write: - shard-bmg: [FAIL][21] ([Intel XE#7445]) -> [PASS][22] [21]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-10/igt@intel_hwmon@hwmon-write.html [22]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-bmg-2/igt@intel_hwmon@hwmon-write.html * igt@kms_flip@2x-absolute-wf_vblank-interruptible@bc-dp2-hdmi-a3: - shard-bmg: [FAIL][23] -> [PASS][24] +3 other tests pass [23]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-3/igt@kms_flip@2x-absolute-wf_vblank-interruptible@bc-dp2-hdmi-a3.html [24]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-bmg-9/igt@kms_flip@2x-absolute-wf_vblank-interruptible@bc-dp2-hdmi-a3.html * igt@kms_flip@2x-flip-vs-expired-vblank@ac-dp2-hdmi-a3: - shard-bmg: [FAIL][25] ([Intel XE#3321]) -> [PASS][26] +1 other test pass [25]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-10/igt@kms_flip@2x-flip-vs-expired-vblank@ac-dp2-hdmi-a3.html [26]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-bmg-7/igt@kms_flip@2x-flip-vs-expired-vblank@ac-dp2-hdmi-a3.html * igt@kms_flip@flip-vs-expired-vblank-interruptible: - shard-lnl: [FAIL][27] ([Intel XE#301]) -> [PASS][28] +3 other tests pass [27]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-lnl-8/igt@kms_flip@flip-vs-expired-vblank-interruptible.html [28]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-lnl-4/igt@kms_flip@flip-vs-expired-vblank-interruptible.html * igt@kms_hdmi_inject@inject-audio: - shard-bmg: [SKIP][29] ([Intel XE#7308]) -> [PASS][30] [29]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-3/igt@kms_hdmi_inject@inject-audio.html [30]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-bmg-7/igt@kms_hdmi_inject@inject-audio.html * igt@kms_universal_plane@disable-primary-vs-flip: - shard-bmg: [DMESG-WARN][31] ([Intel XE#7725]) -> [PASS][32] +1 other test pass [31]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-3/igt@kms_universal_plane@disable-primary-vs-flip.html [32]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-bmg-10/igt@kms_universal_plane@disable-primary-vs-flip.html * igt@kms_vrr@flipline: - shard-lnl: [FAIL][33] ([Intel XE#4227] / [Intel XE#7397]) -> [PASS][34] +1 other test pass [33]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-lnl-2/igt@kms_vrr@flipline.html [34]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-lnl-2/igt@kms_vrr@flipline.html * igt@kms_vrr@seamless-rr-switch-virtual@pipe-a-edp-1: - shard-lnl: [FAIL][35] ([Intel XE#2142]) -> [PASS][36] +1 other test pass [35]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-lnl-5/igt@kms_vrr@seamless-rr-switch-virtual@pipe-a-edp-1.html [36]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-lnl-5/igt@kms_vrr@seamless-rr-switch-virtual@pipe-a-edp-1.html * igt@xe_evict@evict-mixed-many-threads-small: - shard-bmg: [INCOMPLETE][37] ([Intel XE#6321]) -> [PASS][38] +1 other test pass [37]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-4/igt@xe_evict@evict-mixed-many-threads-small.html [38]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-bmg-9/igt@xe_evict@evict-mixed-many-threads-small.html * igt@xe_exec_system_allocator@pat-index-madvise-pat-idx-uc-multi-vma: - shard-lnl: [FAIL][39] ([Intel XE#5625]) -> [PASS][40] +1 other test pass [39]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-lnl-1/igt@xe_exec_system_allocator@pat-index-madvise-pat-idx-uc-multi-vma.html [40]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-lnl-2/igt@xe_exec_system_allocator@pat-index-madvise-pat-idx-uc-multi-vma.html * igt@xe_sriov_flr@flr-each-isolation: - shard-bmg: [FAIL][41] ([Intel XE#6569]) -> [PASS][42] [41]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-7/igt@xe_sriov_flr@flr-each-isolation.html [42]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-bmg-9/igt@xe_sriov_flr@flr-each-isolation.html #### Warnings #### * igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-blt: - shard-bmg: [SKIP][43] ([Intel XE#2312]) -> [SKIP][44] ([Intel XE#2311]) [43]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-3/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-blt.html [44]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-bmg-10/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-blt.html * igt@kms_hdr@brightness-with-hdr: - shard-bmg: [SKIP][45] ([Intel XE#3374] / [Intel XE#3544]) -> [SKIP][46] ([Intel XE#3544]) [45]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-1/igt@kms_hdr@brightness-with-hdr.html [46]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-bmg-2/igt@kms_hdr@brightness-with-hdr.html * igt@kms_tiled_display@basic-test-pattern: - shard-bmg: [FAIL][47] ([Intel XE#1729] / [Intel XE#7424]) -> [SKIP][48] ([Intel XE#2426] / [Intel XE#5848]) [47]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-4/igt@kms_tiled_display@basic-test-pattern.html [48]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-bmg-3/igt@kms_tiled_display@basic-test-pattern.html * igt@kms_tiled_display@basic-test-pattern-with-chamelium: - shard-bmg: [SKIP][49] ([Intel XE#2509] / [Intel XE#7437]) -> [SKIP][50] ([Intel XE#2426] / [Intel XE#5848]) [49]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-2/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html [50]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/shard-bmg-8/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html [Intel XE#1499]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1499 [Intel XE#1503]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1503 [Intel XE#1729]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1729 [Intel XE#2142]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2142 [Intel XE#2234]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2234 [Intel XE#2311]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2311 [Intel XE#2312]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2312 [Intel XE#2426]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2426 [Intel XE#2509]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2509 [Intel XE#2850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2850 [Intel XE#301]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/301 [Intel XE#3321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3321 [Intel XE#3374]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3374 [Intel XE#3544]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3544 [Intel XE#4227]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4227 [Intel XE#5625]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5625 [Intel XE#5848]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5848 [Intel XE#6321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6321 [Intel XE#6569]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6569 [Intel XE#6874]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6874 [Intel XE#6974]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6974 [Intel XE#7084]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7084 [Intel XE#7178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7178 [Intel XE#7308]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7308 [Intel XE#7340]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7340 [Intel XE#7351]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7351 [Intel XE#7397]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7397 [Intel XE#7424]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7424 [Intel XE#7437]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7437 [Intel XE#7445]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7445 [Intel XE#7504]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7504 [Intel XE#7578]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7578 [Intel XE#7725]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7725 Build changes ------------- * IGT: IGT_8863 -> IGTPW_15001 * Linux: xe-4917-ff84b38d86b994ebb03d940be1c73a63e231f454 -> xe-4918-2a1c604bebed8cbbe6aea00f761777eed424dc55 IGTPW_15001: 6ba5a61a913adfbdccf86f3351be3fbadde1f379 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git IGT_8863: 5b279a8b71dc1672099205a1a9e8135c7c7fadb5 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git xe-4917-ff84b38d86b994ebb03d940be1c73a63e231f454: ff84b38d86b994ebb03d940be1c73a63e231f454 xe-4918-2a1c604bebed8cbbe6aea00f761777eed424dc55: 2a1c604bebed8cbbe6aea00f761777eed424dc55 == Logs == For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15001/index.html [-- Attachment #2: Type: text/html, Size: 17244 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2026-04-17 8:50 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2026-04-16 14:45 [PATCH i-g-t v2] tests/kms_setmode: Relax vblank timing tolerance from 1 scanline to 1% Jason-JH Lin 2026-04-16 15:00 ` Ville Syrjälä 2026-04-16 15:29 ` Ville Syrjälä 2026-04-17 8:50 ` Jason-JH Lin (林睿祥) 2026-04-17 0:04 ` ✓ Xe.CI.BAT: success for tests/kms_setmode: Relax vblank timing tolerance from 1 scanline to 1% (rev2) Patchwork 2026-04-17 0:08 ` ✗ i915.CI.BAT: failure " Patchwork 2026-04-17 2:31 ` ✗ Xe.CI.FULL: " Patchwork
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox