drm/amdkfd: Move the ignore_crat check before the CRAT table get
authorHanjun Guo <guohanjun@huawei.com>
Fri, 13 Nov 2020 03:11:13 +0000 (11:11 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 13 Nov 2020 22:29:46 +0000 (17:29 -0500)
If the ignore_crat is set to non-zero value, it's no point getting
the CRAT table, so just move the ignore_crat check before we get the
CRAT table.

Signed-off-by: Hanjun Guo <guohanjun@huawei.com>
Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com>
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdkfd/kfd_crat.c

index a0acf23..e0d354b 100644 (file)
@@ -786,6 +786,11 @@ int kfd_create_crat_image_acpi(void **crat_image, size_t *size)
 
        *crat_image = NULL;
 
+       if (kfd_ignore_crat()) {
+               pr_info("CRAT table disabled by module option\n");
+               return -ENODATA;
+       }
+
        /* Fetch the CRAT table from ACPI */
        status = acpi_get_table(CRAT_SIGNATURE, 0, &crat_table);
        if (status == AE_NOT_FOUND) {
@@ -798,11 +803,6 @@ int kfd_create_crat_image_acpi(void **crat_image, size_t *size)
                return -EINVAL;
        }
 
-       if (kfd_ignore_crat()) {
-               pr_info("CRAT table disabled by module option\n");
-               return -ENODATA;
-       }
-
        pcrat_image = kvmalloc(crat_table->length, GFP_KERNEL);
        if (!pcrat_image)
                return -ENOMEM;