diff options
Diffstat (limited to 'arch/mn10300/kernel')
-rw-r--r-- | arch/mn10300/kernel/gdb-io-ttysm.c | 2 | ||||
-rw-r--r-- | arch/mn10300/kernel/time.c | 4 | ||||
-rw-r--r-- | arch/mn10300/kernel/traps.c | 2 |
3 files changed, 6 insertions, 2 deletions
diff --git a/arch/mn10300/kernel/gdb-io-ttysm.c b/arch/mn10300/kernel/gdb-io-ttysm.c index c5451592d403..e94c25e8ca05 100644 --- a/arch/mn10300/kernel/gdb-io-ttysm.c +++ b/arch/mn10300/kernel/gdb-io-ttysm.c | |||
@@ -196,6 +196,7 @@ int gdbstub_io_rx_char(unsigned char *_ch, int nonblock) | |||
196 | try_again: | 196 | try_again: |
197 | /* pull chars out of the buffer */ | 197 | /* pull chars out of the buffer */ |
198 | ix = gdbstub_rx_outp; | 198 | ix = gdbstub_rx_outp; |
199 | barrier(); | ||
199 | if (ix == gdbstub_rx_inp) { | 200 | if (ix == gdbstub_rx_inp) { |
200 | if (nonblock) | 201 | if (nonblock) |
201 | return -EAGAIN; | 202 | return -EAGAIN; |
@@ -207,6 +208,7 @@ try_again: | |||
207 | 208 | ||
208 | ch = gdbstub_rx_buffer[ix++]; | 209 | ch = gdbstub_rx_buffer[ix++]; |
209 | st = gdbstub_rx_buffer[ix++]; | 210 | st = gdbstub_rx_buffer[ix++]; |
211 | barrier(); | ||
210 | gdbstub_rx_outp = ix & (PAGE_SIZE - 1); | 212 | gdbstub_rx_outp = ix & (PAGE_SIZE - 1); |
211 | 213 | ||
212 | st &= SC01STR_RXF | SC01STR_RBF | SC01STR_FEF | SC01STR_PEF | | 214 | st &= SC01STR_RXF | SC01STR_RBF | SC01STR_FEF | SC01STR_PEF | |
diff --git a/arch/mn10300/kernel/time.c b/arch/mn10300/kernel/time.c index ff492e3b3457..babb7c2ac377 100644 --- a/arch/mn10300/kernel/time.c +++ b/arch/mn10300/kernel/time.c | |||
@@ -84,11 +84,13 @@ static irqreturn_t timer_interrupt(int irq, void *dev_id) | |||
84 | /* advance the kernel's time tracking system */ | 84 | /* advance the kernel's time tracking system */ |
85 | profile_tick(CPU_PROFILING); | 85 | profile_tick(CPU_PROFILING); |
86 | do_timer(1); | 86 | do_timer(1); |
87 | update_process_times(user_mode(get_irq_regs())); | ||
88 | check_rtc_time(); | 87 | check_rtc_time(); |
89 | } | 88 | } |
90 | 89 | ||
91 | write_sequnlock(&xtime_lock); | 90 | write_sequnlock(&xtime_lock); |
91 | |||
92 | update_process_times(user_mode(get_irq_regs())); | ||
93 | |||
92 | return IRQ_HANDLED; | 94 | return IRQ_HANDLED; |
93 | } | 95 | } |
94 | 96 | ||
diff --git a/arch/mn10300/kernel/traps.c b/arch/mn10300/kernel/traps.c index 8b9dc6d9dcc6..fcb9a03d46a8 100644 --- a/arch/mn10300/kernel/traps.c +++ b/arch/mn10300/kernel/traps.c | |||
@@ -391,7 +391,7 @@ static asmlinkage void unsupported_syscall(struct pt_regs *regs, | |||
391 | if (code == EXCEP_SYSCALL15 && !user_mode(regs)) { | 391 | if (code == EXCEP_SYSCALL15 && !user_mode(regs)) { |
392 | if (report_bug(regs->pc, regs) == BUG_TRAP_TYPE_BUG) { | 392 | if (report_bug(regs->pc, regs) == BUG_TRAP_TYPE_BUG) { |
393 | #ifdef CONFIG_GDBSTUB | 393 | #ifdef CONFIG_GDBSTUB |
394 | __gdbstub_bug_trap(); | 394 | gdbstub_intercept(regs, code); |
395 | #endif | 395 | #endif |
396 | } | 396 | } |
397 | } | 397 | } |