diff options
author | Torben Hohn <torbenh@gmx.de> | 2011-01-27 10:00:12 -0500 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2011-02-09 10:17:24 -0500 |
commit | 22b7fcdae562b6792b3f5517e89fd7e0337180ae (patch) | |
tree | 0fc27558c04d63b4d7bea7e34e0f0b2535993d10 /arch/mn10300/kernel | |
parent | 0606f422b453f76c31ab2b1bd52943ff06a2dcf2 (diff) |
mn10300: Switch do_timer() to xtimer_update()
Only one CPU gets the timer interrupt so mn10300_last_tsc does not
need to be protected by xtime lock. Remove xtime lovking and use
xtime_update() which does the locking itself.
Signed-off-by: Torben Hohn <torbenh@gmx.de>
Cc: David Howells <dhowells@redhat.com>
Cc: Koichi Yasutake <yasutake.koichi@jp.panasonic.com>
LKML-Reference: <20110127150011.23248.62040.stgit@localhost>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/mn10300/kernel')
-rw-r--r-- | arch/mn10300/kernel/time.c | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/arch/mn10300/kernel/time.c b/arch/mn10300/kernel/time.c index 75da468090b9..5b955000626d 100644 --- a/arch/mn10300/kernel/time.c +++ b/arch/mn10300/kernel/time.c | |||
@@ -104,8 +104,6 @@ static irqreturn_t timer_interrupt(int irq, void *dev_id) | |||
104 | unsigned tsc, elapse; | 104 | unsigned tsc, elapse; |
105 | irqreturn_t ret; | 105 | irqreturn_t ret; |
106 | 106 | ||
107 | write_seqlock(&xtime_lock); | ||
108 | |||
109 | while (tsc = get_cycles(), | 107 | while (tsc = get_cycles(), |
110 | elapse = tsc - mn10300_last_tsc, /* time elapsed since last | 108 | elapse = tsc - mn10300_last_tsc, /* time elapsed since last |
111 | * tick */ | 109 | * tick */ |
@@ -114,11 +112,9 @@ static irqreturn_t timer_interrupt(int irq, void *dev_id) | |||
114 | mn10300_last_tsc += MN10300_TSC_PER_HZ; | 112 | mn10300_last_tsc += MN10300_TSC_PER_HZ; |
115 | 113 | ||
116 | /* advance the kernel's time tracking system */ | 114 | /* advance the kernel's time tracking system */ |
117 | do_timer(1); | 115 | xtime_update(1); |
118 | } | 116 | } |
119 | 117 | ||
120 | write_sequnlock(&xtime_lock); | ||
121 | |||
122 | ret = local_timer_interrupt(); | 118 | ret = local_timer_interrupt(); |
123 | #ifdef CONFIG_SMP | 119 | #ifdef CONFIG_SMP |
124 | send_IPI_allbutself(LOCAL_TIMER_IPI); | 120 | send_IPI_allbutself(LOCAL_TIMER_IPI); |