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 <[email protected]>
---
drivers/gpu/drm/amd/amdkfd/kfd_crat.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_crat.c b/drivers/gpu/drm/amd/amdkfd/kfd_crat.c
index 3de5e14..c23e571 100644
--- a/drivers/gpu/drm/amd/amdkfd/kfd_crat.c
+++ b/drivers/gpu/drm/amd/amdkfd/kfd_crat.c
@@ -780,6 +780,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) {
@@ -792,11 +797,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;
--
1.7.12.4
Am 2020-11-12 um 10:11 p.m. schrieb Hanjun Guo:
> 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 <[email protected]>
Thank you! I applied the patches.
Regards,
Felix
> ---
> drivers/gpu/drm/amd/amdkfd/kfd_crat.c | 10 +++++-----
> 1 file changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_crat.c b/drivers/gpu/drm/amd/amdkfd/kfd_crat.c
> index 3de5e14..c23e571 100644
> --- a/drivers/gpu/drm/amd/amdkfd/kfd_crat.c
> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_crat.c
> @@ -780,6 +780,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) {
> @@ -792,11 +797,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;