[PATCH] drm/amd/pm/swsmu: Avoid using structure_size uninitialized in smu_cmn_init_soft_gpu_metrics

Wang, Kevin(Yang) Kevin1.Wang at amd.com
Thu Feb 18 23:12:02 UTC 2021


thanks,

Reviewed-by: Kevin Wang <kevin1.wang at amd.com>

Regards,
Kevin

> 在 2021年2月19日,06:49,Nathan Chancellor <nathan at kernel.org> 写道:
> 
> Clang warns:
> 
> drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu_cmn.c:764:2: warning:
> variable 'structure_size' is used uninitialized whenever switch default
> is taken [-Wsometimes-uninitialized]
>        default:
>        ^~~~~~~
> drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu_cmn.c:770:23: note:
> uninitialized use occurs here
>        memset(header, 0xFF, structure_size);
>                             ^~~~~~~~~~~~~~
> drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu_cmn.c:753:25: note:
> initialize the variable 'structure_size' to silence this warning
>        uint16_t structure_size;
>                               ^
>                                = 0
> 1 warning generated.
> 
> Return in the default case, as the size of the header will not be known.
> 
> Fixes: de4b7cd8cb87 ("drm/amd/pm/swsmu: unify the init soft gpu metrics function")
> Link: https://github.com/ClangBuiltLinux/linux/issues/1304
> Signed-off-by: Nathan Chancellor <nathan at kernel.org>
> ---
> drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c b/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c
> index bb620fdd4cd2..bcedd4d92e35 100644
> --- a/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c
> +++ b/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c
> @@ -762,7 +762,7 @@ void smu_cmn_init_soft_gpu_metrics(void *table, uint8_t frev, uint8_t crev)
>        structure_size = sizeof(struct gpu_metrics_v2_0);
>        break;
>    default:
> -        break;
> +        return;
>    }
> 
> #undef METRICS_VERSION
> -- 
> 2.30.1
> 


More information about the dri-devel mailing list