* [PATCH] cpufreq-dt: fix handling regulator_get_voltage result
@ 2015-12-30 11:18 ` Andrzej Hajda
0 siblings, 0 replies; 7+ messages in thread
From: Andrzej Hajda @ 2015-12-30 11:18 UTC (permalink / raw)
To: Rafael J. Wysocki, Viresh Kumar
Cc: Andrzej Hajda, Bartlomiej Zolnierkiewicz, Marek Szyprowski,
open list:CPU FREQUENCY DRIVERS, open list
The function can return negative values so it should be assigned
to signed type.
The problem has been detected using proposed semantic patch
scripts/coccinelle/tests/unsigned_lesser_than_zero.cocci [1].
[1]: http://permalink.gmane.org/gmane.linux.kernel/2038576
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
---
drivers/cpufreq/cpufreq-dt.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/cpufreq/cpufreq-dt.c b/drivers/cpufreq/cpufreq-dt.c
index 1ceece9..9bc37c4 100644
--- a/drivers/cpufreq/cpufreq-dt.c
+++ b/drivers/cpufreq/cpufreq-dt.c
@@ -50,7 +50,8 @@ static int set_target(struct cpufreq_policy *policy, unsigned int index)
struct private_data *priv = policy->driver_data;
struct device *cpu_dev = priv->cpu_dev;
struct regulator *cpu_reg = priv->cpu_reg;
- unsigned long volt = 0, volt_old = 0, tol = 0;
+ unsigned long volt = 0, tol = 0;
+ int volt_old = 0;
unsigned int old_freq, new_freq;
long freq_Hz, freq_exact;
int ret;
@@ -83,7 +84,7 @@ static int set_target(struct cpufreq_policy *policy, unsigned int index)
opp_freq / 1000, volt);
}
- dev_dbg(cpu_dev, "%u MHz, %ld mV --> %u MHz, %ld mV\n",
+ dev_dbg(cpu_dev, "%u MHz, %d mV --> %u MHz, %ld mV\n",
old_freq / 1000, (volt_old > 0) ? volt_old / 1000 : -1,
new_freq / 1000, volt ? volt / 1000 : -1);
--
1.9.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH] cpufreq-dt: fix handling regulator_get_voltage result
@ 2015-12-30 11:18 ` Andrzej Hajda
0 siblings, 0 replies; 7+ messages in thread
From: Andrzej Hajda @ 2015-12-30 11:18 UTC (permalink / raw)
To: Rafael J. Wysocki, Viresh Kumar
Cc: Andrzej Hajda, Bartlomiej Zolnierkiewicz, Marek Szyprowski,
open list:CPU FREQUENCY DRIVERS, open list
The function can return negative values so it should be assigned
to signed type.
The problem has been detected using proposed semantic patch
scripts/coccinelle/tests/unsigned_lesser_than_zero.cocci [1].
[1]: http://permalink.gmane.org/gmane.linux.kernel/2038576
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
---
drivers/cpufreq/cpufreq-dt.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/cpufreq/cpufreq-dt.c b/drivers/cpufreq/cpufreq-dt.c
index 1ceece9..9bc37c4 100644
--- a/drivers/cpufreq/cpufreq-dt.c
+++ b/drivers/cpufreq/cpufreq-dt.c
@@ -50,7 +50,8 @@ static int set_target(struct cpufreq_policy *policy, unsigned int index)
struct private_data *priv = policy->driver_data;
struct device *cpu_dev = priv->cpu_dev;
struct regulator *cpu_reg = priv->cpu_reg;
- unsigned long volt = 0, volt_old = 0, tol = 0;
+ unsigned long volt = 0, tol = 0;
+ int volt_old = 0;
unsigned int old_freq, new_freq;
long freq_Hz, freq_exact;
int ret;
@@ -83,7 +84,7 @@ static int set_target(struct cpufreq_policy *policy, unsigned int index)
opp_freq / 1000, volt);
}
- dev_dbg(cpu_dev, "%u MHz, %ld mV --> %u MHz, %ld mV\n",
+ dev_dbg(cpu_dev, "%u MHz, %d mV --> %u MHz, %ld mV\n",
old_freq / 1000, (volt_old > 0) ? volt_old / 1000 : -1,
new_freq / 1000, volt ? volt / 1000 : -1);
--
1.9.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH] staging: lustre: remove useless check
2015-12-30 11:18 ` Andrzej Hajda
(?)
@ 2015-12-30 11:18 ` Andrzej Hajda
-1 siblings, 0 replies; 7+ messages in thread
From: Andrzej Hajda @ 2015-12-30 11:18 UTC (permalink / raw)
To: Oleg Drokin, Andreas Dilger, Greg Kroah-Hartman,
moderated list:STAGING - LUSTRE PARALLEL FILESYSTEM
Cc: Andrzej Hajda, Bartlomiej Zolnierkiewicz, Marek Szyprowski,
open list:STAGING SUBSYSTEM, open list
Variable reserved is unsigned so the check is always true.
The problem has been detected using proposed semantic patch
scripts/coccinelle/tests/unsigned_lesser_than_zero.cocci [1].
[1]: http://permalink.gmane.org/gmane.linux.kernel/2038576
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
---
drivers/staging/lustre/lustre/llite/rw.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/staging/lustre/lustre/llite/rw.c b/drivers/staging/lustre/lustre/llite/rw.c
index 95cdb0c..2fd07a2 100644
--- a/drivers/staging/lustre/lustre/llite/rw.c
+++ b/drivers/staging/lustre/lustre/llite/rw.c
@@ -764,7 +764,6 @@ int ll_readahead(const struct lu_env *env, struct cl_io *io,
ret = ll_read_ahead_pages(env, io, queue,
ria, &reserved, mapping, &ra_end);
- LASSERTF(reserved >= 0, "reserved %lu\n", reserved);
if (reserved != 0)
ll_ra_count_put(ll_i2sbi(inode), reserved);
--
1.9.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH] scsi_transport_fc: remove useless check
2015-12-30 11:18 ` Andrzej Hajda
@ 2015-12-30 11:18 ` Andrzej Hajda
-1 siblings, 0 replies; 7+ messages in thread
From: Andrzej Hajda @ 2015-12-30 11:18 UTC (permalink / raw)
To: James E.J. Bottomley, Martin K. Petersen
Cc: Andrzej Hajda, Bartlomiej Zolnierkiewicz, Marek Szyprowski,
open list:SCSI SUBSYSTEM, open list
simple_strtoul returns only non-negative values and *val is unsigned
so there is no possibility that *val is lesser than 0.
The problem has been detected using proposed semantic patch
scripts/coccinelle/tests/unsigned_lesser_than_zero.cocci [1].
[1]: http://permalink.gmane.org/gmane.linux.kernel/2038576
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
---
drivers/scsi/scsi_transport_fc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/scsi/scsi_transport_fc.c b/drivers/scsi/scsi_transport_fc.c
index 8a88226..ecf62d9 100644
--- a/drivers/scsi/scsi_transport_fc.c
+++ b/drivers/scsi/scsi_transport_fc.c
@@ -849,7 +849,7 @@ static int fc_str_to_dev_loss(const char *buf, unsigned long *val)
char *cp;
*val = simple_strtoul(buf, &cp, 0);
- if ((*cp && (*cp != '\n')) || (*val < 0))
+ if (*cp && (*cp != '\n'))
return -EINVAL;
/*
* Check for overflow; dev_loss_tmo is u32
--
1.9.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH] scsi_transport_fc: remove useless check
@ 2015-12-30 11:18 ` Andrzej Hajda
0 siblings, 0 replies; 7+ messages in thread
From: Andrzej Hajda @ 2015-12-30 11:18 UTC (permalink / raw)
To: James E.J. Bottomley, Martin K. Petersen
Cc: Andrzej Hajda, Bartlomiej Zolnierkiewicz, Marek Szyprowski,
open list:SCSI SUBSYSTEM, open list
simple_strtoul returns only non-negative values and *val is unsigned
so there is no possibility that *val is lesser than 0.
The problem has been detected using proposed semantic patch
scripts/coccinelle/tests/unsigned_lesser_than_zero.cocci [1].
[1]: http://permalink.gmane.org/gmane.linux.kernel/2038576
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
---
drivers/scsi/scsi_transport_fc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/scsi/scsi_transport_fc.c b/drivers/scsi/scsi_transport_fc.c
index 8a88226..ecf62d9 100644
--- a/drivers/scsi/scsi_transport_fc.c
+++ b/drivers/scsi/scsi_transport_fc.c
@@ -849,7 +849,7 @@ static int fc_str_to_dev_loss(const char *buf, unsigned long *val)
char *cp;
*val = simple_strtoul(buf, &cp, 0);
- if ((*cp && (*cp != '\n')) || (*val < 0))
+ if (*cp && (*cp != '\n'))
return -EINVAL;
/*
* Check for overflow; dev_loss_tmo is u32
--
1.9.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH] cpufreq-dt: fix handling regulator_get_voltage result
2015-12-30 11:18 ` Andrzej Hajda
` (2 preceding siblings ...)
(?)
@ 2016-01-04 5:28 ` Viresh Kumar
2016-01-05 13:03 ` Rafael J. Wysocki
-1 siblings, 1 reply; 7+ messages in thread
From: Viresh Kumar @ 2016-01-04 5:28 UTC (permalink / raw)
To: Andrzej Hajda
Cc: Rafael J. Wysocki, Bartlomiej Zolnierkiewicz, Marek Szyprowski,
open list:CPU FREQUENCY DRIVERS, open list
On 30-12-15, 12:18, Andrzej Hajda wrote:
> The function can return negative values so it should be assigned
> to signed type.
>
> The problem has been detected using proposed semantic patch
> scripts/coccinelle/tests/unsigned_lesser_than_zero.cocci [1].
>
> [1]: http://permalink.gmane.org/gmane.linux.kernel/2038576
>
> Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
> ---
> drivers/cpufreq/cpufreq-dt.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
--
viresh
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] cpufreq-dt: fix handling regulator_get_voltage result
2016-01-04 5:28 ` [PATCH] cpufreq-dt: fix handling regulator_get_voltage result Viresh Kumar
@ 2016-01-05 13:03 ` Rafael J. Wysocki
0 siblings, 0 replies; 7+ messages in thread
From: Rafael J. Wysocki @ 2016-01-05 13:03 UTC (permalink / raw)
To: Viresh Kumar, Andrzej Hajda
Cc: Bartlomiej Zolnierkiewicz, Marek Szyprowski,
open list:CPU FREQUENCY DRIVERS, open list
On Monday, January 04, 2016 10:58:56 AM Viresh Kumar wrote:
> On 30-12-15, 12:18, Andrzej Hajda wrote:
> > The function can return negative values so it should be assigned
> > to signed type.
> >
> > The problem has been detected using proposed semantic patch
> > scripts/coccinelle/tests/unsigned_lesser_than_zero.cocci [1].
> >
> > [1]: http://permalink.gmane.org/gmane.linux.kernel/2038576
> >
> > Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
> > ---
> > drivers/cpufreq/cpufreq-dt.c | 5 +++--
> > 1 file changed, 3 insertions(+), 2 deletions(-)
>
> Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Applied, thanks!
Rafael
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2016-01-05 12:32 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-12-30 11:18 [PATCH] cpufreq-dt: fix handling regulator_get_voltage result Andrzej Hajda
2015-12-30 11:18 ` Andrzej Hajda
2015-12-30 11:18 ` [PATCH] staging: lustre: remove useless check Andrzej Hajda
2015-12-30 11:18 ` [PATCH] scsi_transport_fc: " Andrzej Hajda
2015-12-30 11:18 ` Andrzej Hajda
2016-01-04 5:28 ` [PATCH] cpufreq-dt: fix handling regulator_get_voltage result Viresh Kumar
2016-01-05 13:03 ` Rafael J. Wysocki
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.