2021-04-30 18:07:59

by Tom Rix

[permalink] [raw]
Subject: [PATCH] drm/amd/pm: initialize variable

From: Tom Rix <[email protected]>

Static analysis reports this problem

amdgpu_pm.c:478:16: warning: The right operand of '<' is a garbage value
for (i = 0; i < data.nums; i++) {
^ ~~~~~~~~~

In some cases data is not set. Initialize to 0 and flag not setting
data as an error with the existing check.

Signed-off-by: Tom Rix <[email protected]>
---
drivers/gpu/drm/amd/pm/amdgpu_pm.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/pm/amdgpu_pm.c b/drivers/gpu/drm/amd/pm/amdgpu_pm.c
index 4e459ef632ef..9a54066ec0af 100644
--- a/drivers/gpu/drm/amd/pm/amdgpu_pm.c
+++ b/drivers/gpu/drm/amd/pm/amdgpu_pm.c
@@ -451,7 +451,7 @@ static ssize_t amdgpu_get_pp_cur_state(struct device *dev,
struct drm_device *ddev = dev_get_drvdata(dev);
struct amdgpu_device *adev = drm_to_adev(ddev);
const struct amd_pm_funcs *pp_funcs = adev->powerplay.pp_funcs;
- struct pp_states_info data;
+ struct pp_states_info data = {0};
enum amd_pm_state_type pm = 0;
int i = 0, ret = 0;

--
2.26.3


2021-05-04 19:17:22

by Alex Deucher

[permalink] [raw]
Subject: Re: [PATCH] drm/amd/pm: initialize variable

On Fri, Apr 30, 2021 at 2:05 PM <[email protected]> wrote:
>
> From: Tom Rix <[email protected]>
>
> Static analysis reports this problem
>
> amdgpu_pm.c:478:16: warning: The right operand of '<' is a garbage value
> for (i = 0; i < data.nums; i++) {
> ^ ~~~~~~~~~
>
> In some cases data is not set. Initialize to 0 and flag not setting
> data as an error with the existing check.
>
> Signed-off-by: Tom Rix <[email protected]>

Applied. Thanks!

Alex


> ---
> drivers/gpu/drm/amd/pm/amdgpu_pm.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/pm/amdgpu_pm.c b/drivers/gpu/drm/amd/pm/amdgpu_pm.c
> index 4e459ef632ef..9a54066ec0af 100644
> --- a/drivers/gpu/drm/amd/pm/amdgpu_pm.c
> +++ b/drivers/gpu/drm/amd/pm/amdgpu_pm.c
> @@ -451,7 +451,7 @@ static ssize_t amdgpu_get_pp_cur_state(struct device *dev,
> struct drm_device *ddev = dev_get_drvdata(dev);
> struct amdgpu_device *adev = drm_to_adev(ddev);
> const struct amd_pm_funcs *pp_funcs = adev->powerplay.pp_funcs;
> - struct pp_states_info data;
> + struct pp_states_info data = {0};
> enum amd_pm_state_type pm = 0;
> int i = 0, ret = 0;
>
> --
> 2.26.3
>
> _______________________________________________
> dri-devel mailing list
> [email protected]
> https://lists.freedesktop.org/mailman/listinfo/dri-devel