Re: [PATCH] thermal: cpu_cooling: fix ptr_ret.cocci warnings

From: Eduardo Valentin
Date: Wed Mar 04 2015 - 23:45:35 EST


On Thu, Mar 05, 2015 at 04:34:02AM +0800, kbuild test robot wrote:
> drivers/thermal/cpu_cooling.c:463:18-24: WARNING: PTR_ERR_OR_ZERO can be used
>
>
> Use PTR_ERR_OR_ZERO rather than if(IS_ERR(...)) + PTR_ERR
>
> Generated by: scripts/coccinelle/api/ptr_ret.cocci
>
> CC: Javi Merino <javi.merino@xxxxxxx>
> Signed-off-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
> ---
>
> cpu_cooling.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> --- a/drivers/thermal/cpu_cooling.c
> +++ b/drivers/thermal/cpu_cooling.c
> @@ -460,7 +460,7 @@ static int get_static_power(struct cpufr
> if (voltage == 0) {
> dev_warn_ratelimited(cpufreq_device->cpu_dev,
> "Failed to get voltage for frequency %lu: %ld\n",
> - freq_hz, IS_ERR(opp) ? PTR_ERR(opp) : 0);
> + freq_hz, PTR_ERR_OR_ZERO(opp));

This patch causes this compilation warning.

In file included from include/linux/device.h:27:0,
from include/linux/thermal.h:30,
from drivers/thermal/cpu_cooling.c:26:
drivers/thermal/cpu_cooling.c: In function âget_static_powerâ:
include/linux/ratelimit.h:31:9: warning: format â%ldâ expects argument of type âlong intâ, but argument 4 has type âintâ [-Wformat=]
struct ratelimit_state name = \
^
include/linux/device.h:1162:9: note: in expansion of macro âDEFINE_RATELIMIT_STATEâ
static DEFINE_RATELIMIT_STATE(_rs, \
^
include/linux/device.h:1178:2: note: in expansion of macro âdev_level_ratelimitedâ
dev_level_ratelimited(dev_warn, dev, fmt, ##__VA_ARGS__)
^
drivers/thermal/cpu_cooling.c:463:3: note: in expansion of macro âdev_warn_ratelimitedâ
dev_warn_ratelimited(cpufreq_device->cpu_dev,
^

> return -EINVAL;
> }
>

Attachment: signature.asc
Description: Digital signature