[igt-dev] [PATCH i-g-t 2/3] tests/i915/i915_suspend: Add system-suspend-without-i915 subtest

Gupta, Anshuman anshuman.gupta at intel.com
Mon Mar 28 05:51:55 UTC 2022



> -----Original Message-----
> From: Tauro, Riana <riana.tauro at intel.com>
> Sent: Monday, March 28, 2022 10:47 AM
> To: igt-dev at lists.freedesktop.org
> Cc: Tauro, Riana <riana.tauro at intel.com>; Gupta, Anshuman
> <anshuman.gupta at intel.com>; Ewins, Jon <jon.ewins at intel.com>; Dixit,
> Ashutosh <ashutosh.dixit at intel.com>
> Subject: [PATCH i-g-t 2/3] tests/i915/i915_suspend: Add system-suspend-
> without-i915 subtest
> 
> From: "Tauro, Riana" <riana.tauro at intel.com>
> 
> Add a new test system-suspend-without-i915 to exercise suspend/resume cycle
> without i915 module to know the system wide health of suspend/resume
> feature.
> This test will be part of CI fast-feedback test list.
> 
> Signed-off-by: Tauro, Riana <riana.tauro at intel.com>
> ---
>  tests/i915/i915_suspend.c | 20 ++++++++++++++++++++
>  1 file changed, 20 insertions(+)
> 
> diff --git a/tests/i915/i915_suspend.c b/tests/i915/i915_suspend.c index
> da27ce09..4660d7a7 100644
> --- a/tests/i915/i915_suspend.c
> +++ b/tests/i915/i915_suspend.c
> @@ -41,6 +41,7 @@
>  #include "i915/gem.h"
>  #include "i915/gem_create.h"
>  #include "igt.h"
> +#include "igt_kmod.h"
>  #include "igt_device.h"
> 
>  #define OBJECT_SIZE (16*1024*1024)
> @@ -202,6 +203,22 @@ test_forcewake(int fd, bool hibernate)
>  	close (fw_fd);
>  }
> 
> +static int
> +test_suspend_without_i915(int fd)
> +{
> +	close(fd);
> +	fd = -1;
> +	drm_cancel_work_at_exit();
> +	igt_i915_driver_unload();
> +
> +	igt_system_suspend_autoresume(SUSPEND_STATE_MEM,
> SUSPEND_TEST_NONE);
> +
> +	igt_kmsg(KMSG_INFO "Re-loading i915 \n");
> +	igt_assert_eq(igt_i915_driver_load(NULL), 0);
> +	fd = drm_open_driver(DRIVER_INTEL);
> +	return fd;
> +}
> +
>  int fd;
> 
>  igt_main
> @@ -209,6 +226,9 @@ igt_main
>  	igt_fixture
>  		fd = drm_open_driver(DRIVER_INTEL);
> 
> +	igt_subtest("system-suspend-without-i915")
> +		fd = test_suspend_without_i915(fd);
> +
Move above code block to above of igt_fixture(), this subtest doesn't need igt_fixture.
With that we don't need to close the fd and reopen it back and forth ?
This will avoid to call drm_cancel_work_at_exit() ?
>  	igt_subtest("fence-restore-tiled2untiled") {
>  		gem_require_mappable_ggtt(fd);
>  		test_fence_restore(fd, true, false);
> --
> 2.25.1



More information about the igt-dev mailing list