[PATCH] drm/amdgpu/powerplay/smu7: fix unintialized data usage

Alex Deucher alexdeucher at gmail.com
Tue Nov 8 15:35:46 UTC 2016


On Tue, Nov 8, 2016 at 8:52 AM, Arnd Bergmann <arnd at arndb.de> wrote:
> A recent bugfix replaced an out-of-bounds access with direct
> use of unintialized data:
>
> drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c: In function 'smu7_patch_limits_vddc':
> drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c:2033:6: error: 'vddc' may be used uninitialized in this function [-Werror=maybe-uninitialized]
> drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c:2146:11: note: 'vddc' was declared here
> drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c:2033:6: error: 'vddci' may be used uninitialized in this function [-Werror=maybe-uninitialized]
> drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c:2146:17: note: 'vddci' was declared here
>   uint32_t vddc, vddci;
>
> This initializes the data as before using the correct type.
>
> Fixes: 77f7f71f5be1 ("drm/amdgpu/powerplay/smu7: fix static checker warning")
> Signed-off-by: Arnd Bergmann <arnd at arndb.de>

Applied.  thanks!

Alex

> ---
>  drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c b/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c
> index 9e49f2777143..b2d61d043d52 100644
> --- a/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c
> +++ b/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c
> @@ -2147,9 +2147,11 @@ static int smu7_patch_limits_vddc(struct pp_hwmgr *hwmgr,
>         struct smu7_hwmgr *data = (struct smu7_hwmgr *)(hwmgr->backend);
>
>         if (tab) {
> +               vddc = tab->vddc;
>                 smu7_patch_ppt_v0_with_vdd_leakage(hwmgr, &vddc,
>                                                    &data->vddc_leakage);
>                 tab->vddc = vddc;
> +               vddci = tab->vddci;
>                 smu7_patch_ppt_v0_with_vdd_leakage(hwmgr, &vddci,
>                                                    &data->vddci_leakage);
>                 tab->vddci = vddci;
> --
> 2.9.0
>
> _______________________________________________
> dri-devel mailing list
> dri-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel


More information about the dri-devel mailing list