All of lore.kernel.org
 help / color / mirror / Atom feed
From: Emil Velikov <emil.l.velikov@gmail.com>
To: Andrey Grodzovsky <andrey.grodzovsky@amd.com>
Cc: "amd-gfx mailing list" <amd-gfx@lists.freedesktop.org>,
	"ML dri-devel" <dri-devel@lists.freedesktop.org>,
	"Christian König" <Christian.Koenig@amd.com>
Subject: Re: [PATCH libdrm 2/4] amdgpu: Use new suite/test disabling functionality.
Date: Fri, 15 Dec 2017 18:08:40 +0000	[thread overview]
Message-ID: <CACvgo52uH62kzhS1ZDFOyrLiX8vZz5vcSV5P5ujWNwqdQdCi_A@mail.gmail.com> (raw)
In-Reply-To: <1510288203-21716-3-git-send-email-andrey.grodzovsky@amd.com>

On 10 November 2017 at 04:30, Andrey Grodzovsky
<andrey.grodzovsky@amd.com> wrote:
> Switch from disabling tests during run to using the new disable
> API.
>
> Signed-off-by: Andrey Grodzovsky <andrey.grodzovsky@amd.com>
> ---
>  tests/amdgpu/amdgpu_test.c    | 14 ++++++--
>  tests/amdgpu/amdgpu_test.h    | 15 ++++++++
>  tests/amdgpu/deadlock_tests.c |  8 +----
>  tests/amdgpu/uvd_enc_tests.c  | 81 +++++++++++++++++--------------------------
>  tests/amdgpu/vce_tests.c      | 65 +++++++++++++++++-----------------
>  tests/amdgpu/vcn_tests.c      | 74 +++++++++++++++++----------------------
>  6 files changed, 123 insertions(+), 134 deletions(-)
>
> diff --git a/tests/amdgpu/amdgpu_test.c b/tests/amdgpu/amdgpu_test.c
> index 68ec5d3..91010dc 100644
> --- a/tests/amdgpu/amdgpu_test.c
> +++ b/tests/amdgpu/amdgpu_test.c
> @@ -150,15 +150,15 @@ static Suites_Active_Status suites_active_stat[] = {
>                 },
>                 {
>                         .pName = VCE_TESTS_STR,
> -                       .pActive = always_active,
> +                       .pActive = suite_vce_tests_enable,
>                 },
>                 {
>                         .pName = VCN_TESTS_STR,
> -                       .pActive = always_active,
> +                       .pActive = suite_vcn_tests_enable,
>                 },
>                 {
>                         .pName = UVD_ENC_TESTS_STR,
> -                       .pActive = always_active,
> +                       .pActive = suite_uvd_enc_tests_enable,
>                 },
>                 {
>                         .pName = DEADLOCK_TESTS_STR,
> @@ -409,6 +409,14 @@ static void amdgpu_disable_suits()
>                 if (amdgpu_set_suite_active(suites_active_stat[i].pName,
>                                 suites_active_stat[i].pActive()))
>                         fprintf(stderr, "suit deactivation failed - %s\n", CU_get_error_msg());
> +
> +       /* Explicitly disable specific tests due to known bugs or preferences */
> +       /*
> +       * BUG: Compute ring stalls and never recovers when the address is
> +       * written after the command already submitted
> +       */
> +       if (amdgpu_set_test_active(DEADLOCK_TESTS_STR, "compute ring block test", CU_FALSE))
> +               fprintf(stderr, "test deactivation failed - %s\n", CU_get_error_msg());
>  }
>
>  /* The main() function for setting up and running the tests.
> diff --git a/tests/amdgpu/amdgpu_test.h b/tests/amdgpu/amdgpu_test.h
> index 9ccc1ff..dd236ed 100644
> --- a/tests/amdgpu/amdgpu_test.h
> +++ b/tests/amdgpu/amdgpu_test.h
> @@ -100,6 +100,11 @@ int suite_vce_tests_init();
>  int suite_vce_tests_clean();
>
>  /**
> + * Decide if the suite is enabled by default or not.
> + */
> +CU_BOOL suite_vce_tests_enable(void);
> +
> +/**
>   * Tests in vce test suite
>   */
>  extern CU_TestInfo vce_tests[];
> @@ -115,6 +120,11 @@ int suite_vcn_tests_init();
>  int suite_vcn_tests_clean();
>
>  /**
> + * Decide if the suite is enabled by default or not.
> + */
> +CU_BOOL suite_vcn_tests_enable(void);
> +
> +/**
>  + * Tests in vcn test suite
>  + */
>  extern CU_TestInfo vcn_tests[];
> @@ -130,6 +140,11 @@ int suite_uvd_enc_tests_init();
>  int suite_uvd_enc_tests_clean();
>
>  /**
> + * Decide if the suite is enabled by default or not.
> + */
> +CU_BOOL suite_uvd_enc_tests_enable(void);
> +
> +/**
>   * Tests in uvd enc test suite
>   */
>  extern CU_TestInfo uvd_enc_tests[];
> diff --git a/tests/amdgpu/deadlock_tests.c b/tests/amdgpu/deadlock_tests.c
> index e23d903..f5c4552 100644
> --- a/tests/amdgpu/deadlock_tests.c
> +++ b/tests/amdgpu/deadlock_tests.c
> @@ -119,13 +119,7 @@ int suite_deadlock_tests_clean(void)
>
>  CU_TestInfo deadlock_tests[] = {
>         { "gfx ring block test",  amdgpu_deadlock_gfx },
> -
> -       /*
> -       * BUG: Compute ring stalls and never recovers when the address is
> -       * written after the command already submitted
> -       */
> -       /* { "compute ring block test",  amdgpu_deadlock_compute }, */
> -
> +       { "compute ring block test",  amdgpu_deadlock_compute },
>         CU_TEST_INFO_NULL,
>  };
>
> diff --git a/tests/amdgpu/uvd_enc_tests.c b/tests/amdgpu/uvd_enc_tests.c
> index bbda131..bed8494 100644
> --- a/tests/amdgpu/uvd_enc_tests.c
> +++ b/tests/amdgpu/uvd_enc_tests.c
> @@ -79,7 +79,6 @@ static void amdgpu_cs_uvd_enc_session_init(void);
>  static void amdgpu_cs_uvd_enc_encode(void);
>  static void amdgpu_cs_uvd_enc_destroy(void);
>
> -static bool uvd_enc_support(void);
>
>  CU_TestInfo uvd_enc_tests[] = {
>         { "UVD ENC create",  amdgpu_cs_uvd_enc_create },
> @@ -89,6 +88,27 @@ CU_TestInfo uvd_enc_tests[] = {
>         CU_TEST_INFO_NULL,
>  };
>
> +CU_BOOL suite_uvd_enc_tests_enable(void)
> +{
> +       int r;
> +       struct drm_amdgpu_info_hw_ip info;
> +
> +       if (amdgpu_device_initialize(drm_amdgpu[0], &major_version,
> +                                            &minor_version, &device_handle))
> +               return CU_FALSE;
> +
> +       r = amdgpu_query_hw_ip_info(device_handle, AMDGPU_HW_IP_UVD_ENC, 0, &info);
> +
> +       if (amdgpu_device_deinitialize(device_handle))
> +               return CU_FALSE;
> +
> +       if (!info.available_rings)
> +               printf("\n\nThe ASIC NOT support UVD ENC, suite disabled.\n");
> +
> +       return (r == 0 && (info.available_rings ? CU_TRUE : CU_FALSE));
> +}
> +
> +
>  int suite_uvd_enc_tests_init(void)
>  {
>         int r;
> @@ -100,11 +120,6 @@ int suite_uvd_enc_tests_init(void)
>
>         family_id = device_handle->info.family_id;
>
> -       if (!uvd_enc_support()) {
> -               printf("\n\nThe ASIC NOT support UVD ENC, all sub-tests will pass\n");
> -               return CUE_SUCCESS;
> -       }
> -
>         r = amdgpu_cs_ctx_create(device_handle, &context_handle);
>         if (r)
>                 return CUE_SINIT_FAILED;
> @@ -123,28 +138,18 @@ int suite_uvd_enc_tests_clean(void)
>  {
>         int r;
>
> -       if (!uvd_enc_support()) {
> -
> -               r = amdgpu_device_deinitialize(device_handle);
> -               if (r)
> -                       return CUE_SCLEAN_FAILED;
> -
> -               return CUE_SUCCESS;
> -       } else {
> -
> -               r = amdgpu_bo_unmap_and_free(ib_handle, ib_va_handle,
> -                                            ib_mc_address, IB_SIZE);
> -               if (r)
> -                       return CUE_SCLEAN_FAILED;
> +       r = amdgpu_bo_unmap_and_free(ib_handle, ib_va_handle,
> +                                    ib_mc_address, IB_SIZE);
> +       if (r)
> +               return CUE_SCLEAN_FAILED;
>
> -               r = amdgpu_cs_ctx_free(context_handle);
> -               if (r)
> -                       return CUE_SCLEAN_FAILED;
> +       r = amdgpu_cs_ctx_free(context_handle);
> +       if (r)
> +               return CUE_SCLEAN_FAILED;
>
> -               r = amdgpu_device_deinitialize(device_handle);
> -               if (r)
> -                       return CUE_SCLEAN_FAILED;
> -       }
> +       r = amdgpu_device_deinitialize(device_handle);
> +       if (r)
> +               return CUE_SCLEAN_FAILED;
>
>         return CUE_SUCCESS;
Seems like this return disappeared somewhere between patching and
pushing the patch.
See https://bugs.freedesktop.org/show_bug.cgi?id=104280

-Emil
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

  reply	other threads:[~2017-12-15 18:08 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-10  4:29 [PATCH libdrm 0/4] Dynamicly disable suites and tets Andrey Grodzovsky
2017-11-10  4:30 ` [PATCH libdrm 2/4] amdgpu: Use new suite/test disabling functionality Andrey Grodzovsky
2017-12-15 18:08   ` Emil Velikov [this message]
     [not found]     ` <CACvgo52uH62kzhS1ZDFOyrLiX8vZz5vcSV5P5ujWNwqdQdCi_A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2017-12-15 18:27       ` [PATCH libdrm] tests/amdgpu: Restore return CUE_SUCCESS to suite_vcn_tests_clean Andrey Grodzovsky
2017-12-15 18:28         ` Christian König
     [not found]         ` <1513362432-1866-1-git-send-email-andrey.grodzovsky-5C7GfCeVMHo@public.gmane.org>
2017-12-15 18:38           ` Emil Velikov
     [not found] ` <1510288203-21716-1-git-send-email-andrey.grodzovsky-5C7GfCeVMHo@public.gmane.org>
2017-11-10  4:30   ` [PATCH libdrm 1/4] amdgpu: Add functions to disable suites and tests Andrey Grodzovsky
2017-11-10  4:30   ` [PATCH libdrm 3/4] amdgpu: Move memory alloc tests in bo suite Andrey Grodzovsky
2017-11-10  4:30   ` [PATCH libdrm 4/4] amdgpu: Add memory over allocation test Andrey Grodzovsky
2017-11-10 12:17 ` [PATCH libdrm 0/4] Dynamicly disable suites and tets Christian König
2017-11-10 12:34   ` Christian König
2017-11-10 15:36   ` Andrey Grodzovsky
     [not found]     ` <407f0a79-e15b-61b7-2e3a-8f4b680c9c6c-5C7GfCeVMHo@public.gmane.org>
2017-11-10 15:48       ` Christian König
2017-11-10 23:43         ` Andrey Grodzovsky
2017-11-12  9:35           ` Christian König
2017-11-13 11:32             ` Michel Dänzer
     [not found]               ` <7a5b2721-5938-c865-27b0-47dae1ad5883-otUistvHUpPR7s880joybQ@public.gmane.org>
2017-11-13 12:39                 ` Christian König
     [not found]                   ` <cbb173a7-289f-c13d-5518-55ea20a69b58-5C7GfCeVMHo@public.gmane.org>
2017-11-13 14:57                     ` Andrey Grodzovsky
     [not found]                       ` <faf30a58-a8cf-05b2-6028-065438b38f07-5C7GfCeVMHo@public.gmane.org>
2017-11-13 15:27                         ` Christian König
     [not found]                           ` <bcf0bcfa-d275-1c57-e7a0-2858ebd5b082-5C7GfCeVMHo@public.gmane.org>
2017-11-13 15:36                             ` Andrey Grodzovsky
2017-11-13 17:01                             ` [PATCH libdrm v2] amdgpu: Add memory over allocation test Andrey Grodzovsky
     [not found]                               ` <1510592502-2230-1-git-send-email-andrey.grodzovsky-5C7GfCeVMHo@public.gmane.org>
2017-11-14  8:44                                 ` Christian König
2017-11-14 12:53                                   ` Andrey Grodzovsky
     [not found]                                     ` <a82f7934-77a8-7ebb-1fb8-51961ebba279-5C7GfCeVMHo@public.gmane.org>
2017-11-14 13:25                                       ` Christian König

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CACvgo52uH62kzhS1ZDFOyrLiX8vZz5vcSV5P5ujWNwqdQdCi_A@mail.gmail.com \
    --to=emil.l.velikov@gmail.com \
    --cc=Christian.Koenig@amd.com \
    --cc=amd-gfx@lists.freedesktop.org \
    --cc=andrey.grodzovsky@amd.com \
    --cc=dri-devel@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.