[PATCH] drm/amd/powerplay: avoid access before allocation

Xu, Feifei Feifei.Xu at amd.com
Tue Jul 16 05:16:24 UTC 2019


Reviewed-by: Feifei Xu <Feifei.Xu at amd.com>


-----Original Message-----
From: amd-gfx <amd-gfx-bounces at lists.freedesktop.org> On Behalf Of Quan, Evan
Sent: Tuesday, July 16, 2019 1:12 PM
To: Quan, Evan <Evan.Quan at amd.com>; amd-gfx at lists.freedesktop.org
Subject: RE: [PATCH] drm/amd/powerplay: avoid access before allocation

Ping..

> -----Original Message-----
> From: Evan Quan <evan.quan at amd.com>
> Sent: Friday, July 12, 2019 10:55 AM
> To: amd-gfx at lists.freedesktop.org
> Cc: Quan, Evan <Evan.Quan at amd.com>
> Subject: [PATCH] drm/amd/powerplay: avoid access before allocation
> 
> No access before allocation.
> 
> Change-Id: Ia1d78786f2400cd1cd227d1ab6ea4c6a71619e4c
> Signed-off-by: Evan Quan <evan.quan at amd.com>
> ---
>  drivers/gpu/drm/amd/powerplay/vega20_ppt.c | 11 +++++++----
>  1 file changed, 7 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/gpu/drm/amd/powerplay/vega20_ppt.c
> b/drivers/gpu/drm/amd/powerplay/vega20_ppt.c
> index 9e3e737926aa..c70262e6e250 100644
> --- a/drivers/gpu/drm/amd/powerplay/vega20_ppt.c
> +++ b/drivers/gpu/drm/amd/powerplay/vega20_ppt.c
> @@ -441,7 +441,6 @@ static int vega20_store_powerplay_table(struct
> smu_context *smu)  {
>  	ATOM_Vega20_POWERPLAYTABLE *powerplay_table = NULL;
>  	struct smu_table_context *table_context = &smu->smu_table;
> -	int ret;
> 
>  	if (!table_context->power_play_table)
>  		return -EINVAL;
> @@ -455,9 +454,7 @@ static int vega20_store_powerplay_table(struct
> smu_context *smu)
>  	table_context->thermal_controller_type = powerplay_table-
> >ucThermalControllerType;
>  	table_context->TDPODLimit = le32_to_cpu(powerplay_table-
> >OverDrive8Table.ODSettingsMax[ATOM_VEGA20_ODSETTING_POWERPER
> CENTAGE]);
> 
> -	ret = vega20_setup_od8_information(smu);
> -
> -	return ret;
> +	return 0;
>  }
> 
>  static int vega20_append_powerplay_table(struct smu_context *smu) @@ -
> 1507,6 +1504,12 @@ static int vega20_set_default_od8_setttings(struct
> smu_context *smu)
> 
>  	smu->od_settings = (void *)od8_settings;
> 
> +	ret = vega20_setup_od8_information(smu);
> +	if (ret) {
> +		pr_err("Retrieve board OD limits failed!\n");
> +		return ret;
> +	}
> +
>  	if (smu_feature_is_enabled(smu,
> SMU_FEATURE_DPM_SOCCLK_BIT)) {
>  		if (od8_settings-
> >od_feature_capabilities[ATOM_VEGA20_ODFEATURE_GFXCLK_LIMITS] &&
>  		    od8_settings-
> >od_settings_max[OD8_SETTING_GFXCLK_FMAX] > 0 &&
> --
> 2.21.0

_______________________________________________
amd-gfx mailing list
amd-gfx at lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx


More information about the amd-gfx mailing list