[igt-dev] [PATCH i-g-t] drm/drm_import_export: Replace imprecise loop-bound with timeout

Mika Kuoppala mika.kuoppala at linux.intel.com
Wed Jan 16 13:56:32 UTC 2019


Chris Wilson <chris at chris-wilson.co.uk> writes:

> Use a specific timeout to exercise the race conditions, rather than a
> number of tries -- this prevents it burning up too many minutes under CI
> for little gain, we can just run it again to improve race detection.
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108667
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> ---
>  tests/drm_import_export.c | 5 +----
>  1 file changed, 1 insertion(+), 4 deletions(-)
>
> diff --git a/tests/drm_import_export.c b/tests/drm_import_export.c
> index e3ce2480c..4bc7b7d4b 100644
> --- a/tests/drm_import_export.c
> +++ b/tests/drm_import_export.c
> @@ -129,8 +129,6 @@ static void * test_thread(void * par)
>  	return NULL;
>  }
>  
> -#define IMPORT_RACE_LOOPS 100000
> -
>  struct import_race_thread_data {
>  	int prime_fd;
>  	uint32_t flink_name;
> @@ -189,7 +187,6 @@ static void *import_close_thread(void *data)
>  static void test_import_close_race(void)
>  {
>  	pthread_t t;
> -	unsigned int loops = IMPORT_RACE_LOOPS;
>  	drm_intel_bo *bo;
>  	struct import_race_thread_data t_data;
>  
> @@ -199,7 +196,7 @@ static void test_import_close_race(void)
>  
>  	igt_assert_eq(pthread_create(&t, NULL, import_close_thread , &t_data), 0);
>  
> -	while (loops--) {
> +	igt_until_timeout(15) {

Reasonable. Took 90s with kbl!
Reviewed-by: Mika Kuoppala <mika.kuoppala at linux.intel.com>

>  		bo = drm_intel_bo_alloc(bufmgr, "buf-shared", 4096, 4096);
>  		igt_assert(bo != NULL);
>  		/*
> -- 
> 2.20.1


More information about the igt-dev mailing list