[igt-dev] [PATCH i-g-t] i915/gem_exec_create: Added test description for test case

Ch, Sai Gowtham sai.gowtham.ch at intel.com
Wed Jul 1 04:22:47 UTC 2020


Thank you for your inputs and correcting my understanding Chris, Sure I'll make changes accordingly.

-----Original Message-----
From: Chris Wilson <chris at chris-wilson.co.uk> 
Sent: Tuesday, June 30, 2020 2:58 PM
To: Melkaveri, Arjun <arjun.melkaveri at intel.com>; igt-dev at lists.freedesktop.org; Ch, Sai Gowtham <sai.gowtham.ch at intel.com>
Subject: Re: [igt-dev] [PATCH i-g-t] i915/gem_exec_create: Added test description for test case

Quoting sai.gowtham.ch at intel.com (2020-06-30 07:41:10)
> From: sai gowtham <sai.gowtham.ch at intel.com>
> 
> Added test description for test and to all 3 subtests.
> 
> Signed-off-by: sai gowtham <sai.gowtham.ch at intel.com>
> ---
>  tests/i915/gem_exec_create.c | 10 +++++++++-
>  1 file changed, 9 insertions(+), 1 deletion(-)
> 
> diff --git a/tests/i915/gem_exec_create.c 
> b/tests/i915/gem_exec_create.c index ee7d4e5d..5236d477 100644
> --- a/tests/i915/gem_exec_create.c
> +++ b/tests/i915/gem_exec_create.c
> @@ -42,6 +42,10 @@
>  #include "i915/gem.h"
>  #include "igt.h"
>  
> +IGT_TEST_DESCRIPTION("\n This test runs an uninterrupted loop within the specified timeouts"
> +               " with different flags & ncpus combinations and checks if there are any"
> +               " missed interrupts reported from the driver.");

No. The intent of the test is to flood the driver with transient active objects and check we don't kill the system under the mempressure. Some of the symptoms we look for include mysterious hangs.

> +
>  #define ENGINE_FLAGS  (I915_EXEC_RING_MASK | I915_EXEC_BSD_MASK)
>  
>  static double elapsed(const struct timespec *start, const struct 
> timespec *end) @@ -133,12 +137,16 @@ igt_main
>  
>                 igt_fork_hang_detector(device);
>         }
> -

Lost visual whitespacing.

> +       igt_describe("Runs single uninterrupted loop for 2s.");
>         igt_subtest("basic")
>                 all(device, 0, 2, 1);
> +
> +       igt_describe("Runs single uninterrupted loop for 20s.");
>         igt_subtest("forked")
>                 all(device, 0, 20, ncpus);
>  
> +       igt_describe("Runs single uninterrupted loop with"
> +                       " different flag combination for 20s.");

That is abysmal. We already know the above and more from the test setup itself. The difference in the test intentions should be discernible from the different path coverage in the driver...

Quick sanitycheck; concurrent execution; forced reclaim, behaving like a bad application leaking its bo cache.

>         igt_subtest("madvise")
>                 all(device, LEAK, 20, 1);


More information about the igt-dev mailing list