[CPUFREQ] Resolve time unit thinko in ondemand/conservative govs

ondemand and conservative governors are messing up time units in the
code path where NO_HZ is not enabled and ignore_nice is set. The walltime
idletime stored is in jiffies and nice time calculation is happening in
microseconds.

The problem was reported and diagnosed by Alexander here.
http://marc.info/?l=linux-kernel&m=125752550404513&w=2

The patch below fixes this thinko.

Reported-by: Alexander Miller <Miller@fmi.uni-stuttgart.de>
Tested-by: Alexander Miller <Miller@fmi.uni-stuttgart.de>
Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Dave Jones <davej@redhat.com>

authored by Pallipadi, Venkatesh and committed by Dave Jones 54c9a35d 8dca15e4

+4 -4
+2 -2
drivers/cpufreq/cpufreq_conservative.c
··· 116 116 117 117 idle_time = cputime64_sub(cur_wall_time, busy_time); 118 118 if (wall) 119 - *wall = cur_wall_time; 119 + *wall = (cputime64_t)jiffies_to_usecs(cur_wall_time); 120 120 121 - return idle_time; 121 + return (cputime64_t)jiffies_to_usecs(idle_time);; 122 122 } 123 123 124 124 static inline cputime64_t get_cpu_idle_time(unsigned int cpu, cputime64_t *wall)
+2 -2
drivers/cpufreq/cpufreq_ondemand.c
··· 133 133 134 134 idle_time = cputime64_sub(cur_wall_time, busy_time); 135 135 if (wall) 136 - *wall = cur_wall_time; 136 + *wall = (cputime64_t)jiffies_to_usecs(cur_wall_time); 137 137 138 - return idle_time; 138 + return (cputime64_t)jiffies_to_usecs(idle_time); 139 139 } 140 140 141 141 static inline cputime64_t get_cpu_idle_time(unsigned int cpu, cputime64_t *wall)