[PATCH i-g-t 4/6] tests/intel/xe_oa: Only sanity check timer PEC reports
Umesh Nerlige Ramappa
umesh.nerlige.ramappa at intel.com
Mon Apr 14 22:36:06 UTC 2025
On Tue, Apr 08, 2025 at 11:12:08AM -0700, Ashutosh Dixit wrote:
>Empirical testing revealed that when reports of different types/reasons are
>intermixed, this throws off gpu_ticks and test_event1_cycles_xecore* in PEC
>data, causing test failures. To avoid this, restrict testing to only
>timer/periodic reports.
>
>Signed-off-by: Ashutosh Dixit <ashutosh.dixit at intel.com>
Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa at intel.com>
>---
> tests/intel/xe_oa.c | 13 +++++++++++++
> 1 file changed, 13 insertions(+)
>
>diff --git a/tests/intel/xe_oa.c b/tests/intel/xe_oa.c
>index eaf97ae0df..cc9702322d 100644
>--- a/tests/intel/xe_oa.c
>+++ b/tests/intel/xe_oa.c
>@@ -1031,6 +1031,19 @@ static void pec_sanity_check_two(const u32 *report0, const u32 *report1,
> u64 *pec0 = (u64 *)(report0 + 8);
> u64 *pec1 = (u64 *)(report1 + 8);
>
>+ /*
>+ * Empirical testing revealed that when reports of different types/reasons are
>+ * intermixed, this throws off gpu_ticks and test_event1_cycles_xecore* in PEC
>+ * data, causing test failures. To avoid this, restrict testing to only
>+ * timer/periodic reports.
>+ */
>+ if (strcmp(read_report_reason(report0), "timer") ||
>+ strcmp(read_report_reason(report1), "timer")) {
>+ igt_debug("Only checking timer reports: %s->%s\n",
>+ read_report_reason(report0), read_report_reason(report1));
>+ return;
>+ }
>+
> igt_debug("tick delta = %#lx\n", tick_delta);
>
> /* Difference in test_event1_cycles_xecore* values should be close to tick_delta */
>--
>2.48.1
>
More information about the igt-dev
mailing list