linux/arch/mips/kernel
Kevin D. Kissell 5df9d11be4 MIPS: SMTC: Fix lockup in smtc_distribute_timer
1. At the end of smtc_distribute_timer, nextstamp is valid and has already
   passed so we goto repeat.
2. Nothing updates nextstamp (only updated if the timeout is in the future
   And we just decided it is in the past)
3. At the end nextstamp still has the same value so it is still valid and
   in the past.
4. This repeats until read_c0_count has a value which causes nextstamp to
   be in the future.

Reported and initial patch and testing  by Mikael Starvik
<mikael.starvik@axis.com>.

Signed-off-by: Kevin D. Kissell <kevink@paralogos.com>
Cc: Mikael Starvik <mikael.starvik@axis.com>
Cc: linux-mips@linux-mips.org
Cc: Jesper Nilsson <Jesper.Nilsson@axis.com>
Patchwork: http://patchwork.linux-mips.org/patch/621/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2009-11-13 18:10:38 +01:00
..
.gitignore
8250-platform.c
asm-offsets.c MIPS: Use PAGE_SIZE in assembly instead of _PAGE_SIZE. 2009-09-17 20:07:48 +02:00
binfmt_elfn32.c
binfmt_elfo32.c MIPS: 64-bit: Fix o32 core dump 2009-07-03 15:45:27 +01:00
branch.c
cevt-bcm1480.c MIPS: Add IRQF_TIMER flag for timer interrupts 2009-11-02 12:00:02 +01:00
cevt-ds1287.c MIPS: Add IRQF_TIMER flag for timer interrupts 2009-11-02 12:00:02 +01:00
cevt-gt641xx.c MIPS: Add IRQF_TIMER flag for timer interrupts 2009-11-02 12:00:02 +01:00
cevt-r4k.c MIPS: Add IRQF_TIMER flag for timer interrupts 2009-11-02 12:00:02 +01:00
cevt-sb1250.c MIPS: Add IRQF_TIMER flag for timer interrupts 2009-11-02 12:00:02 +01:00
cevt-smtc.c MIPS: SMTC: Fix lockup in smtc_distribute_timer 2009-11-13 18:10:38 +01:00
cevt-txx9.c MIPS: Add IRQF_TIMER flag for timer interrupts 2009-11-02 12:00:02 +01:00
cpu-bugs64.c MIPS: Remove useless zero initializations. 2009-09-17 20:07:51 +02:00
cpu-probe.c MIPS: SPRAM: Clean up support code a little 2009-11-02 12:00:05 +01:00
csrc-bcm1480.c clocksource: pass clocksource to read() callback 2009-04-21 13:41:47 -07:00
csrc-ioasic.c Update Yoichi Yuasa's e-mail address 2009-07-03 15:45:29 +01:00
csrc-r4k.c clocksource: pass clocksource to read() callback 2009-04-21 13:41:47 -07:00
csrc-sb1250.c clocksource: pass clocksource to read() callback 2009-04-21 13:41:47 -07:00
early_printk.c
entry.S
genex.S
gpio_txx9.c
head.S MIPS: Avoid potential hazard on Context register 2009-11-02 12:00:07 +01:00
i8253.c MIPS: Add IRQF_TIMER flag for timer interrupts 2009-11-02 12:00:02 +01:00
i8259.c cpumask: remove references to struct irqaction's mask field. 2009-03-30 22:05:14 +10:30
init_task.c Use new __init_task_data macro in arch init_task.c files. 2009-09-21 06:27:08 +02:00
irq-gic.c MIPS: GIC: Random fixes and enhancements. 2009-11-02 12:00:06 +01:00
irq-gt641xx.c Update Yoichi Yuasa's e-mail address 2009-07-03 15:45:29 +01:00
irq-msc01.c MIPS: Enable GENERIC_HARDIRQS_NO__DO_IRQ for all platforms 2009-03-30 14:49:44 +02:00
irq-rm7000.c
irq-rm9000.c
irq.c Merge branches 'irq/genirq' and 'linus' into irq/core 2009-03-16 09:20:13 +01:00
irq_cpu.c MIPS: Enable GENERIC_HARDIRQS_NO__DO_IRQ for all platforms 2009-03-30 14:49:44 +02:00
irq_txx9.c MIPS: Eleminate filenames from comments 2009-08-03 17:52:40 +01:00
kgdb.c MIPS: Build fix - include <linux/smp.h> into all smp_processor_id() users. 2009-06-24 18:34:39 +01:00
kspd.c MIPS: VPE: Fix build after the credential changes a while ago. 2009-09-30 21:47:02 +02:00
linux32.c MIPS: 64-bit: Fix o32 lookup_dcookie syscall 2009-11-02 12:00:02 +01:00
machine_kexec.c
Makefile mips: fix build of vmlinux.lds 2009-09-25 19:49:27 +02:00
mips-mt-fpaff.c MIPS: Remove useless zero initializations. 2009-09-17 20:07:51 +02:00
mips-mt.c MIPS: Remove useless zero initializations. 2009-09-17 20:07:51 +02:00
mips_ksyms.c
module.c MIPS: Module: Make error messages unique. 2009-08-03 17:52:48 +01:00
octeon_switch.S MIPS: Consolidate all CONFIG_CPU_HAS_LLSC use in a single C file. 2009-09-17 20:07:49 +02:00
proc.c MIPS: Eleminate filenames from comments 2009-08-03 17:52:40 +01:00
process.c MIPS: Avoid clobbering struct pt_regs in kthreads 2009-08-03 17:52:41 +01:00
ptrace.c
ptrace32.c headers: smp_lock.h redux 2009-07-12 12:22:34 -07:00
r4k_fpu.S
r4k_switch.S MIPS: Consolidate all CONFIG_CPU_HAS_LLSC use in a single C file. 2009-09-17 20:07:49 +02:00
r2300_fpu.S
r2300_switch.S MIPS: Consolidate all CONFIG_CPU_HAS_LLSC use in a single C file. 2009-09-17 20:07:49 +02:00
r6000_fpu.S
relocate_kernel.S
reset.c
rtlx.c MIPS: VPE: Get rid of BKL. 2009-09-30 21:47:02 +02:00
scall32-o32.S perf: Do the big rename: Performance Counters -> Performance Events 2009-09-21 14:28:04 +02:00
scall64-64.S perf: Do the big rename: Performance Counters -> Performance Events 2009-09-21 14:28:04 +02:00
scall64-n32.S perf: Do the big rename: Performance Counters -> Performance Events 2009-09-21 14:28:04 +02:00
scall64-o32.S MIPS: O32: Fix ppoll 2009-11-02 12:00:08 +01:00
setup.c MIPS: Remove useless zero initializations. 2009-09-17 20:07:51 +02:00
signal-common.h
signal.c KEYS: Add missing linux/tracehook.h #inclusions 2009-09-09 18:30:02 +10:00
signal32.c MIPS: CVE-2009-0029: Enable syscall wrappers. 2009-02-27 17:56:35 +00:00
signal_n32.c
smp-cmp.c cpumask: Use accessors for cpu_*_mask: mips 2009-09-24 09:34:48 +09:30
smp-mt.c cpumask: Use accessors for cpu_*_mask: mips 2009-09-24 09:34:48 +09:30
smp-up.c cpumask: arch_send_call_function_ipi_mask: mips 2009-09-24 09:34:45 +09:30
smp.c MIPS: SMP: Inline arch_send_call_function_{single_ipi,ipi_mask} 2009-09-30 21:47:00 +02:00
smtc-asm.S
smtc-proc.c
smtc.c MIPS: SMTC: Avoid queing multiple reschedule IPIs 2009-11-02 12:00:06 +01:00
spram.c MIPS: SPRAM: Clean up support code a little 2009-11-02 12:00:05 +01:00
stacktrace.c MIPS: Eleminate filenames from comments 2009-08-03 17:52:40 +01:00
sync-r4k.c MIPS: CMP: Update sync-r4k for current kernel 2009-07-03 15:45:27 +01:00
syscall.c MIPS: Rewrite sysmips(MIPS_ATOMIC_SET, ...) in C with inline assembler 2009-09-17 20:07:49 +02:00
time.c
topology.c MIPS: Add arch generic CPU hotplug 2009-06-24 18:34:40 +01:00
traps.c MIPS: Rewrite sysmips(MIPS_ATOMIC_SET, ...) in C with inline assembler 2009-09-17 20:07:49 +02:00
unaligned.c MIPS: Use force_sig when handling address errors. 2009-05-14 13:50:29 +01:00
vmlinux.lds.S mips: fix build of vmlinux.lds 2009-09-25 19:49:27 +02:00
vpe.c MIPS: VPE: Remove stray unlock_kernel. 2009-11-02 12:00:02 +01:00
watch.c