drivers/gpu/drm/amd/pm/amdgpu_pm.c | 4 ---- 1 file changed, 4 deletions(-)
There is a couple of function return checks of functions that return
unsigned values, and local variables to hold them are also unsigned, so
checking if they are negative will always return false. This patch will
remove them, as well as the never reached code.
drivers/gpu/drm/amd/pm/amdgpu_pm.c:2801:5-8: WARNING: Unsigned expression compared with zero: val < 0
drivers/gpu/drm/amd/pm/amdgpu_pm.c:2814:5-8: WARNING: Unsigned expression compared with zero: val < 0
Signed-off-by: José Pekkarinen <jose.pekkarinen@foxhound.fi>
---
drivers/gpu/drm/amd/pm/amdgpu_pm.c | 4 ----
1 file changed, 4 deletions(-)
diff --git a/drivers/gpu/drm/amd/pm/amdgpu_pm.c b/drivers/gpu/drm/amd/pm/amdgpu_pm.c
index 8bb2da13826f..e7bb1d324084 100644
--- a/drivers/gpu/drm/amd/pm/amdgpu_pm.c
+++ b/drivers/gpu/drm/amd/pm/amdgpu_pm.c
@@ -2798,8 +2798,6 @@ static ssize_t amdgpu_hwmon_show_power_avg(struct device *dev,
unsigned int val;
val = amdgpu_hwmon_get_power(dev, AMDGPU_PP_SENSOR_GPU_AVG_POWER);
- if (val < 0)
- return val;
return sysfs_emit(buf, "%u\n", val);
}
@@ -2811,8 +2809,6 @@ static ssize_t amdgpu_hwmon_show_power_input(struct device *dev,
unsigned int val;
val = amdgpu_hwmon_get_power(dev, AMDGPU_PP_SENSOR_GPU_INPUT_POWER);
- if (val < 0)
- return val;
return sysfs_emit(buf, "%u\n", val);
}
--
2.39.2
On 11/7/23 00:29, José Pekkarinen wrote: > There is a couple of function return checks of functions that return > unsigned values, and local variables to hold them are also unsigned, so > checking if they are negative will always return false. This patch will > remove them, as well as the never reached code. > > drivers/gpu/drm/amd/pm/amdgpu_pm.c:2801:5-8: WARNING: Unsigned expression compared with zero: val < 0 > drivers/gpu/drm/amd/pm/amdgpu_pm.c:2814:5-8: WARNING: Unsigned expression compared with zero: val < 0 > > Signed-off-by: José Pekkarinen <jose.pekkarinen@foxhound.fi> > --- > drivers/gpu/drm/amd/pm/amdgpu_pm.c | 4 ---- > 1 file changed, 4 deletions(-) > > diff --git a/drivers/gpu/drm/amd/pm/amdgpu_pm.c b/drivers/gpu/drm/amd/pm/amdgpu_pm.c > index 8bb2da13826f..e7bb1d324084 100644 > --- a/drivers/gpu/drm/amd/pm/amdgpu_pm.c > +++ b/drivers/gpu/drm/amd/pm/amdgpu_pm.c > @@ -2798,8 +2798,6 @@ static ssize_t amdgpu_hwmon_show_power_avg(struct device *dev, > unsigned int val; > > val = amdgpu_hwmon_get_power(dev, AMDGPU_PP_SENSOR_GPU_AVG_POWER); > - if (val < 0) > - return val; > This is reporting errors returned from amdgpu_hwmon_get_power() as large integers. Guenter > return sysfs_emit(buf, "%u\n", val); > } > @@ -2811,8 +2809,6 @@ static ssize_t amdgpu_hwmon_show_power_input(struct device *dev, > unsigned int val; > > val = amdgpu_hwmon_get_power(dev, AMDGPU_PP_SENSOR_GPU_INPUT_POWER); > - if (val < 0) > - return val; > > return sysfs_emit(buf, "%u\n", val); > }
On 2023-11-07 16:08, Guenter Roeck wrote:
> On 11/7/23 00:29, José Pekkarinen wrote:
>> There is a couple of function return checks of functions that return
>> unsigned values, and local variables to hold them are also unsigned,
>> so
>> checking if they are negative will always return false. This patch
>> will
>> remove them, as well as the never reached code.
>>
>> drivers/gpu/drm/amd/pm/amdgpu_pm.c:2801:5-8: WARNING: Unsigned
>> expression compared with zero: val < 0
>> drivers/gpu/drm/amd/pm/amdgpu_pm.c:2814:5-8: WARNING: Unsigned
>> expression compared with zero: val < 0
>>
>> Signed-off-by: José Pekkarinen <jose.pekkarinen@foxhound.fi>
>> ---
>> drivers/gpu/drm/amd/pm/amdgpu_pm.c | 4 ----
>> 1 file changed, 4 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/amd/pm/amdgpu_pm.c
>> b/drivers/gpu/drm/amd/pm/amdgpu_pm.c
>> index 8bb2da13826f..e7bb1d324084 100644
>> --- a/drivers/gpu/drm/amd/pm/amdgpu_pm.c
>> +++ b/drivers/gpu/drm/amd/pm/amdgpu_pm.c
>> @@ -2798,8 +2798,6 @@ static ssize_t
>> amdgpu_hwmon_show_power_avg(struct device *dev,
>> unsigned int val;
>> val = amdgpu_hwmon_get_power(dev,
>> AMDGPU_PP_SENSOR_GPU_AVG_POWER);
>> - if (val < 0)
>> - return val;
>>
>
> This is reporting errors returned from amdgpu_hwmon_get_power() as
> large integers.
Alright, that case it is a false positive, thanks for the comment!
José.
On 11/7/23 09:26, José Pekkarinen wrote: > On 2023-11-07 16:08, Guenter Roeck wrote: >> On 11/7/23 00:29, José Pekkarinen wrote: >>> There is a couple of function return checks of functions that return >>> unsigned values, and local variables to hold them are also unsigned, so >>> checking if they are negative will always return false. This patch will >>> remove them, as well as the never reached code. >>> >>> drivers/gpu/drm/amd/pm/amdgpu_pm.c:2801:5-8: WARNING: Unsigned expression compared with zero: val < 0 >>> drivers/gpu/drm/amd/pm/amdgpu_pm.c:2814:5-8: WARNING: Unsigned expression compared with zero: val < 0 >>> >>> Signed-off-by: José Pekkarinen <jose.pekkarinen@foxhound.fi> >>> --- >>> drivers/gpu/drm/amd/pm/amdgpu_pm.c | 4 ---- >>> 1 file changed, 4 deletions(-) >>> >>> diff --git a/drivers/gpu/drm/amd/pm/amdgpu_pm.c b/drivers/gpu/drm/amd/pm/amdgpu_pm.c >>> index 8bb2da13826f..e7bb1d324084 100644 >>> --- a/drivers/gpu/drm/amd/pm/amdgpu_pm.c >>> +++ b/drivers/gpu/drm/amd/pm/amdgpu_pm.c >>> @@ -2798,8 +2798,6 @@ static ssize_t amdgpu_hwmon_show_power_avg(struct device *dev, >>> unsigned int val; >>> val = amdgpu_hwmon_get_power(dev, AMDGPU_PP_SENSOR_GPU_AVG_POWER); >>> - if (val < 0) >>> - return val; >>> >> >> This is reporting errors returned from amdgpu_hwmon_get_power() as >> large integers. > > Alright, that case it is a false positive, thanks for the comment! > No, it isn't a false positive. The fix is wrong. The variable should be declared 'int val', not 'unsigned int val'. Guenter
On 2023-11-07 20:03, Guenter Roeck wrote:
> On 11/7/23 09:26, José Pekkarinen wrote:
>> On 2023-11-07 16:08, Guenter Roeck wrote:
>>> On 11/7/23 00:29, José Pekkarinen wrote:
>>>> There is a couple of function return checks of functions that return
>>>> unsigned values, and local variables to hold them are also unsigned,
>>>> so
>>>> checking if they are negative will always return false. This patch
>>>> will
>>>> remove them, as well as the never reached code.
>>>>
>>>> drivers/gpu/drm/amd/pm/amdgpu_pm.c:2801:5-8: WARNING: Unsigned
>>>> expression compared with zero: val < 0
>>>> drivers/gpu/drm/amd/pm/amdgpu_pm.c:2814:5-8: WARNING: Unsigned
>>>> expression compared with zero: val < 0
>>>>
>>>> Signed-off-by: José Pekkarinen <jose.pekkarinen@foxhound.fi>
>>>> ---
>>>> drivers/gpu/drm/amd/pm/amdgpu_pm.c | 4 ----
>>>> 1 file changed, 4 deletions(-)
>>>>
>>>> diff --git a/drivers/gpu/drm/amd/pm/amdgpu_pm.c
>>>> b/drivers/gpu/drm/amd/pm/amdgpu_pm.c
>>>> index 8bb2da13826f..e7bb1d324084 100644
>>>> --- a/drivers/gpu/drm/amd/pm/amdgpu_pm.c
>>>> +++ b/drivers/gpu/drm/amd/pm/amdgpu_pm.c
>>>> @@ -2798,8 +2798,6 @@ static ssize_t
>>>> amdgpu_hwmon_show_power_avg(struct device *dev,
>>>> unsigned int val;
>>>> val = amdgpu_hwmon_get_power(dev,
>>>> AMDGPU_PP_SENSOR_GPU_AVG_POWER);
>>>> - if (val < 0)
>>>> - return val;
>>>>
>>>
>>> This is reporting errors returned from amdgpu_hwmon_get_power() as
>>> large integers.
>>
>> Alright, that case it is a false positive, thanks for the
>> comment!
>>
>
>
> No, it isn't a false positive. The fix is wrong. The variable should be
> declared
> 'int val', not 'unsigned int val'.
Sorry I may have missunderstood your comment, I certainly can do the
minor fix then.
Thanks!
José.
© 2016 - 2025 Red Hat, Inc.