diff options
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.19.8/1439-drm-amd-powerplay-remove-unnecessary-checking-in-smu.patch')
-rw-r--r-- | common/recipes-kernel/linux/linux-yocto-4.19.8/1439-drm-amd-powerplay-remove-unnecessary-checking-in-smu.patch | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.19.8/1439-drm-amd-powerplay-remove-unnecessary-checking-in-smu.patch b/common/recipes-kernel/linux/linux-yocto-4.19.8/1439-drm-amd-powerplay-remove-unnecessary-checking-in-smu.patch new file mode 100644 index 00000000..6a1b82a5 --- /dev/null +++ b/common/recipes-kernel/linux/linux-yocto-4.19.8/1439-drm-amd-powerplay-remove-unnecessary-checking-in-smu.patch @@ -0,0 +1,80 @@ +From 7fe47770d681c989542ba4b1ed68e3acb244ae0d Mon Sep 17 00:00:00 2001 +From: Huang Rui <ray.huang@amd.com> +Date: Tue, 22 Jan 2019 16:26:39 +0800 +Subject: [PATCH 1439/2940] drm/amd/powerplay: remove unnecessary checking in + smu_hw_fini + +This patch removes unnecessary NULL pointer checking in smu_hw_fini, because +kfree is able to handle NULL pointer case. + +Suggested-by: Hawking Zhang <Hawking.Zhang@amd.com> +Signed-off-by: Huang Rui <ray.huang@amd.com> +Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com> +Reviewed-by: Kevin Wang <kevin1.wang@amd.com> +Acked-by: Alex Deucher <alexander.deucher@amd.com> +--- + drivers/gpu/drm/amd/powerplay/amdgpu_smu.c | 42 ++++++++-------------- + 1 file changed, 14 insertions(+), 28 deletions(-) + +diff --git a/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c b/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c +index 04ee523b2bf9..81939c40b9bc 100644 +--- a/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c ++++ b/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c +@@ -683,40 +683,26 @@ static int smu_hw_fini(void *handle) + if (!is_support_sw_smu(adev)) + return -EINVAL; + +- if (table_context->driver_pptable) { +- kfree(table_context->driver_pptable); +- table_context->driver_pptable = NULL; +- } ++ kfree(table_context->driver_pptable); ++ table_context->driver_pptable = NULL; + +- if (table_context->max_sustainable_clocks) { +- kfree(table_context->max_sustainable_clocks); +- table_context->max_sustainable_clocks = NULL; +- } ++ kfree(table_context->max_sustainable_clocks); ++ table_context->max_sustainable_clocks = NULL; + +- if (table_context->od_feature_capabilities) { +- kfree(table_context->od_feature_capabilities); +- table_context->od_feature_capabilities = NULL; +- } ++ kfree(table_context->od_feature_capabilities); ++ table_context->od_feature_capabilities = NULL; + +- if (table_context->od_settings_max) { +- kfree(table_context->od_settings_max); +- table_context->od_settings_max = NULL; +- } ++ kfree(table_context->od_settings_max); ++ table_context->od_settings_max = NULL; + +- if (table_context->od_settings_min) { +- kfree(table_context->od_settings_min); +- table_context->od_settings_min = NULL; +- } ++ kfree(table_context->od_settings_min); ++ table_context->od_settings_min = NULL; + +- if (table_context->overdrive_table) { +- kfree(table_context->overdrive_table); +- table_context->overdrive_table = NULL; +- } ++ kfree(table_context->overdrive_table); ++ table_context->overdrive_table = NULL; + +- if (table_context->od8_settings) { +- kfree(table_context->od8_settings); +- table_context->od8_settings = NULL; +- } ++ kfree(table_context->od8_settings); ++ table_context->od8_settings = NULL; + + ret = smu_fini_fb_allocations(smu); + if (ret) +-- +2.17.1 + |