[PATCH i-g-t] tests/intel/xe_pm_residency: convert all tests to dynamic subtests

Gupta, Anshuman anshuman.gupta at intel.com
Fri Jul 19 08:46:59 UTC 2024



> -----Original Message-----
> From: Tauro, Riana <riana.tauro at intel.com>
> Sent: Wednesday, July 17, 2024 3:31 PM
> To: igt-dev at lists.freedesktop.org
> Cc: Tauro, Riana <riana.tauro at intel.com>; Gupta, Anshuman
> <anshuman.gupta at intel.com>; Nilawar, Badal <badal.nilawar at intel.com>
> Subject: [PATCH i-g-t] tests/intel/xe_pm_residency: convert all tests to
> dynamic subtests
> 
> Convert all tests to dynamic subtests to identify which GT the tests are
> running on.
> 
> No functional changes
LGTM.
Reviewed-by: Anshuman Gupta <anshuman.gupta at intel.com>
Do you need to add the new test to our test list ?
> 
> Signed-off-by: Riana Tauro <riana.tauro at intel.com>
> ---
>  tests/intel/xe_pm_residency.c | 31 ++++++++++++++++++++-----------
>  1 file changed, 20 insertions(+), 11 deletions(-)
> 
> diff --git a/tests/intel/xe_pm_residency.c b/tests/intel/xe_pm_residency.c
> index 367b1027c..51735d887 100644
> --- a/tests/intel/xe_pm_residency.c
> +++ b/tests/intel/xe_pm_residency.c
> @@ -233,8 +233,8 @@ static void idle_residency_on_exec(int fd, struct
> drm_xe_engine_class_instance *
>  	unsigned long end, start;
>  	unsigned long elapsed_ms, residency_end, residency_start;
> 
> -	igt_debug("Running on %s:%d\n",
> -		  xe_engine_class_string(hwe->engine_class), hwe-
> >engine_instance);
> +	igt_info("Running on %s:%d\n",
> +		 xe_engine_class_string(hwe->engine_class), hwe-
> >engine_instance);
>  	done = mmap(0, 4096, PROT_WRITE, MAP_SHARED | MAP_ANON, -1,
> 0);
>  	igt_assert(done != MAP_FAILED);
>  	memset(done, 0, 4096);
> @@ -321,35 +321,44 @@ igt_main
>  	}
> 
>  	igt_describe("Validate GT C6 on idle");
> -	igt_subtest("gt-c6-on-idle")
> +	igt_subtest_with_dynamic("gt-c6-on-idle") {
>  		xe_for_each_gt(fd, gt)
> -			igt_assert_f(igt_wait(xe_is_gt_in_c6(fd, gt), 1000, 1),
> "GT %d not in C6\n", gt);
> +			igt_dynamic_f("gt%u", gt)
> +				igt_assert_f(igt_wait(xe_is_gt_in_c6(fd, gt),
> 1000, 1),
> +					     "GT %d not in C6\n", gt);
> +	}
> 
>  	igt_describe("Validate idle residency measured over suspend cycle is
> within the tolerance");
> -	igt_subtest("gt-c6-freeze") {
> +	igt_subtest_with_dynamic("gt-c6-freeze") {
>  		if (xe_has_vram(fd)) {
>  			igt_device_get_pci_slot_name(fd, pci_slot_name);
>  			igt_pm_get_d3cold_allowed(pci_slot_name,
> &d3cold_allowed);
>  			igt_pm_set_d3cold_allowed(pci_slot_name, 0);
>  		}
>  		xe_for_each_gt(fd, gt)
> -			test_idle_residency(fd, gt, TEST_S2IDLE);
> +			igt_dynamic_f("gt%u", gt)
> +				test_idle_residency(fd, gt, TEST_S2IDLE);
> 
>  		if (xe_has_vram(fd))
>  			igt_pm_set_d3cold_allowed(pci_slot_name,
> d3cold_allowed);
>  	}
> 
>  	igt_describe("Validate idle residency measured over a time interval is
> within the tolerance");
> -	igt_subtest("idle-residency")
> +	igt_subtest_with_dynamic("idle-residency") {
>  		xe_for_each_gt(fd, gt)
> -			test_idle_residency(fd, gt, TEST_IDLE);
> +			igt_dynamic_f("gt%u", gt)
> +				test_idle_residency(fd, gt, TEST_IDLE);
> +	}
> 
>  	igt_describe("Validate idle residency on exec");
> -	igt_subtest("idle-residency-on-exec") {
> +	igt_subtest_with_dynamic("idle-residency-on-exec") {
>  		xe_for_each_gt(fd, gt) {
>  			xe_for_each_engine(fd, hwe) {
> -				if (gt == hwe->gt_id && !hwe-
> >engine_instance)
> -					idle_residency_on_exec(fd, hwe);
> +				if (gt == hwe->gt_id && !hwe-
> >engine_instance) {
> +					igt_dynamic_f("gt%u-engine-%s", gt,
> +
> xe_engine_class_string(hwe->engine_class))
> +						idle_residency_on_exec(fd,
> hwe);
> +				}
>  			}
>  		}
>  	}
> --
> 2.40.0



More information about the igt-dev mailing list