Skip to content

Commit

Permalink
m68k: Switch do_timer() to xtime_update()
Browse files Browse the repository at this point in the history
xtime_update() properly takes the xtime_lock

Signed-off-by: Torben Hohn <torbenh@gmx.de>
Cc: Sam Creasey <sammy@sammy.net>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: johnstul@us.ibm.com
Cc: Roman Zippel <zippel@linux-m68k.org>
Cc: hch@infradead.org
Cc: yong.zhang0@gmail.com
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Greg Ungerer <gerg@uclinux.org>
LKML-Reference: <20110127150006.23248.71790.stgit@localhost>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
  • Loading branch information
Torben Hohn authored and Thomas Gleixner committed Jan 31, 2011
1 parent 7bde2ab commit e53f276
Show file tree
Hide file tree
Showing 6 changed files with 11 additions and 15 deletions.
4 changes: 2 additions & 2 deletions arch/m68k/bvme6000/config.c
Original file line number Diff line number Diff line change
Expand Up @@ -45,8 +45,8 @@ extern int bvme6000_set_clock_mmss (unsigned long);
extern void bvme6000_reset (void);
void bvme6000_set_vectors (void);

/* Save tick handler routine pointer, will point to do_timer() in
* kernel/sched.c, called via bvme6000_process_int() */
/* Save tick handler routine pointer, will point to xtime_update() in
* kernel/timer/timekeeping.c, called via bvme6000_process_int() */

static irq_handler_t tick_handler;

Expand Down
4 changes: 2 additions & 2 deletions arch/m68k/kernel/time.c
Original file line number Diff line number Diff line change
Expand Up @@ -37,11 +37,11 @@ static inline int set_rtc_mmss(unsigned long nowtime)

/*
* timer_interrupt() needs to keep up the real-time clock,
* as well as call the "do_timer()" routine every clocktick
* as well as call the "xtime_update()" routine every clocktick
*/
static irqreturn_t timer_interrupt(int irq, void *dummy)
{
do_timer(1);
xtime_update(1);
update_process_times(user_mode(get_irq_regs()));
profile_tick(CPU_PROFILING);

Expand Down
4 changes: 2 additions & 2 deletions arch/m68k/mvme147/config.c
Original file line number Diff line number Diff line change
Expand Up @@ -46,8 +46,8 @@ extern void mvme147_reset (void);

static int bcd2int (unsigned char b);

/* Save tick handler routine pointer, will point to do_timer() in
* kernel/sched.c, called via mvme147_process_int() */
/* Save tick handler routine pointer, will point to xtime_update() in
* kernel/time/timekeeping.c, called via mvme147_process_int() */

irq_handler_t tick_handler;

Expand Down
4 changes: 2 additions & 2 deletions arch/m68k/mvme16x/config.c
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,8 @@ extern void mvme16x_reset (void);

int bcd2int (unsigned char b);

/* Save tick handler routine pointer, will point to do_timer() in
* kernel/sched.c, called via mvme16x_process_int() */
/* Save tick handler routine pointer, will point to xtime_update() in
* kernel/time/timekeeping.c, called via mvme16x_process_int() */

static irq_handler_t tick_handler;

Expand Down
2 changes: 1 addition & 1 deletion arch/m68k/sun3/sun3ints.c
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ static irqreturn_t sun3_int5(int irq, void *dev_id)
#ifdef CONFIG_SUN3
intersil_clear();
#endif
do_timer(1);
xtime_update(1);
update_process_times(user_mode(get_irq_regs()));
if (!(kstat_cpu(0).irqs[irq] % 20))
sun3_leds(led_pattern[(kstat_cpu(0).irqs[irq] % 160) / 20]);
Expand Down
8 changes: 2 additions & 6 deletions arch/m68knommu/kernel/time.c
Original file line number Diff line number Diff line change
Expand Up @@ -36,19 +36,15 @@ static inline int set_rtc_mmss(unsigned long nowtime)
#ifndef CONFIG_GENERIC_CLOCKEVENTS
/*
* timer_interrupt() needs to keep up the real-time clock,
* as well as call the "do_timer()" routine every clocktick
* as well as call the "xtime_update()" routine every clocktick
*/
irqreturn_t arch_timer_interrupt(int irq, void *dummy)
{

if (current->pid)
profile_tick(CPU_PROFILING);

write_seqlock(&xtime_lock);

do_timer(1);

write_sequnlock(&xtime_lock);
xtime_update(1);

update_process_times(user_mode(get_irq_regs()));

Expand Down

0 comments on commit e53f276

Please sign in to comment.