Message ID | 1397728407-13909-2-git-send-email-geert+renesas@glider.be (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
On 17 April 2014 15:23, Geert Uytterhoeven <geert+renesas@glider.be> wrote: > On 32-bit, "12 * NSEC_PER_SEC" doesn't fit in "unsigned long" > (NSEC_PER_SEC is a "long" constant), causing an integer overflow: > > drivers/cpufreq/ppc-corenet-cpufreq.c: In function 'corenet_cpufreq_cpu_init': > drivers/cpufreq/ppc-corenet-cpufreq.c:211:9: warning: integer overflow in expression [-Woverflow] > > Force the intermediate to be 64-bit by adding an "ULL" suffix to the > constant multiplier to fix this. > > Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> > --- > drivers/cpufreq/ppc-corenet-cpufreq.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/cpufreq/ppc-corenet-cpufreq.c b/drivers/cpufreq/ppc-corenet-cpufreq.c > index e78f9c806de4..53881d78a931 100644 > --- a/drivers/cpufreq/ppc-corenet-cpufreq.c > +++ b/drivers/cpufreq/ppc-corenet-cpufreq.c > @@ -208,7 +208,7 @@ static int corenet_cpufreq_cpu_init(struct cpufreq_policy *policy) > per_cpu(cpu_data, i) = data; > > policy->cpuinfo.transition_latency = > - (12 * NSEC_PER_SEC) / fsl_get_sys_freq(); > + (12ULL * NSEC_PER_SEC) / fsl_get_sys_freq(); > of_node_put(np); > > return 0; Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
diff --git a/drivers/cpufreq/ppc-corenet-cpufreq.c b/drivers/cpufreq/ppc-corenet-cpufreq.c index e78f9c806de4..53881d78a931 100644 --- a/drivers/cpufreq/ppc-corenet-cpufreq.c +++ b/drivers/cpufreq/ppc-corenet-cpufreq.c @@ -208,7 +208,7 @@ static int corenet_cpufreq_cpu_init(struct cpufreq_policy *policy) per_cpu(cpu_data, i) = data; policy->cpuinfo.transition_latency = - (12 * NSEC_PER_SEC) / fsl_get_sys_freq(); + (12ULL * NSEC_PER_SEC) / fsl_get_sys_freq(); of_node_put(np); return 0;
On 32-bit, "12 * NSEC_PER_SEC" doesn't fit in "unsigned long" (NSEC_PER_SEC is a "long" constant), causing an integer overflow: drivers/cpufreq/ppc-corenet-cpufreq.c: In function 'corenet_cpufreq_cpu_init': drivers/cpufreq/ppc-corenet-cpufreq.c:211:9: warning: integer overflow in expression [-Woverflow] Force the intermediate to be 64-bit by adding an "ULL" suffix to the constant multiplier to fix this. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> --- drivers/cpufreq/ppc-corenet-cpufreq.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)