tick: Remove code duplication in tick_handle_periodic()
tick_handle_periodic() is calling ktime_add() at two places, first before the infinite loop and then at the end of infinite loop. We can rearrange code a bit to fix code duplication here. It looks quite simple and shouldn't break anything, I guess :) Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> Cc: linaro-kernel@lists.linaro.org Cc: fweisbec@gmail.com Link: http://lkml.kernel.org/r/be3481e8f3f71df694a4b43623254fc93ca51b59.1395735873.git.viresh.kumar@linaro.org Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
parent
cacb3c76c2
commit
b97f0291a2
@ -98,18 +98,19 @@ static void tick_periodic(int cpu)
|
|||||||
void tick_handle_periodic(struct clock_event_device *dev)
|
void tick_handle_periodic(struct clock_event_device *dev)
|
||||||
{
|
{
|
||||||
int cpu = smp_processor_id();
|
int cpu = smp_processor_id();
|
||||||
ktime_t next;
|
ktime_t next = dev->next_event;
|
||||||
|
|
||||||
tick_periodic(cpu);
|
tick_periodic(cpu);
|
||||||
|
|
||||||
if (dev->mode != CLOCK_EVT_MODE_ONESHOT)
|
if (dev->mode != CLOCK_EVT_MODE_ONESHOT)
|
||||||
return;
|
return;
|
||||||
/*
|
|
||||||
* Setup the next period for devices, which do not have
|
|
||||||
* periodic mode:
|
|
||||||
*/
|
|
||||||
next = ktime_add(dev->next_event, tick_period);
|
|
||||||
for (;;) {
|
for (;;) {
|
||||||
|
/*
|
||||||
|
* Setup the next period for devices, which do not have
|
||||||
|
* periodic mode:
|
||||||
|
*/
|
||||||
|
next = ktime_add(next, tick_period);
|
||||||
|
|
||||||
if (!clockevents_program_event(dev, next, false))
|
if (!clockevents_program_event(dev, next, false))
|
||||||
return;
|
return;
|
||||||
/*
|
/*
|
||||||
@ -123,7 +124,6 @@ void tick_handle_periodic(struct clock_event_device *dev)
|
|||||||
*/
|
*/
|
||||||
if (timekeeping_valid_for_hres())
|
if (timekeeping_valid_for_hres())
|
||||||
tick_periodic(cpu);
|
tick_periodic(cpu);
|
||||||
next = ktime_add(next, tick_period);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user