[CPUFREQ] update lpj only if frequency has changed
authorAfzal Mohammed <afzal@ti.com>
Wed, 4 Jan 2012 05:22:46 +0000 (10:52 +0530)
committerDave Jones <davej@redhat.com>
Fri, 6 Jan 2012 15:10:53 +0000 (10:10 -0500)
commitd08de0c19c3fc5b9cf557ce3b42795d036ad5da9
tree30a8c983a35ae8caea55e4d741f291ada66f8965
parent226dd0193f9b8524789a86505ba05b1a74d916c1
[CPUFREQ] update lpj only if frequency has changed

During scaling up of cpu frequency, loops_per_jiffy
is updated upon invoking PRECHANGE notifier.
If setting to new frequency fails in cpufreq driver,
lpj is left at incorrect value.

Hence update lpj only if cpu frequency is changed,
i.e. upon invoking POSTCHANGE notifier.

Penalty would be that during time period between
changing cpu frequency & invocation of POSTCHANGE
notifier, udelay(x) may not gurantee minimal delay
of 'x' us for frequency scaling up operation.

Perhaps a better solution would be to define
CPUFREQ_ABORTCHANGE & handle accordingly, but then
it would be more intrusive (using ABORTCHANGE may
help drivers also; if any has registered notifier
and expect POST for a PRECHANGE, their needs can
be taken care using ABORT)

Signed-off-by: Afzal Mohammed <afzal@ti.com>
Signed-off-by: Dave Jones <davej@redhat.com>
drivers/cpufreq/cpufreq.c