linux/arch/mips/kernel
David Daney 8bc6d05b48 MIPS: Read watch registers with interrupts disabled.
If a context switch occurred between the watch exception and reading the
watch registers, it would be possible for the new process to corrupt their
state.  Enabling interrupts only after the watch registers are read avoids
this race.

Signed-off-by: David Daney <ddaney@caviumnetworks.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2009-01-30 21:32:58 +00:00
..
.gitignore [MIPS] Ignore vmlinux.lds generated files 2008-08-26 09:10:27 +01:00
8250-platform.c [MIPS] Put an end to <asm/serial.h>'s long and annyoing existence 2007-07-10 17:33:01 +01:00
asm-offsets.c MIPS: Add Cavium OCTEON specific registers to ptrace.h and asm-offsets.c 2009-01-11 09:57:23 +00:00
binfmt_elfn32.c remove div_long_long_rem 2008-05-01 08:03:58 -07:00
binfmt_elfo32.c remove div_long_long_rem 2008-05-01 08:03:58 -07:00
branch.c MIPS: Compute branch returns for Cavium OCTEON specific branch instructions. 2009-01-11 09:57:24 +00:00
cevt-bcm1480.c cpumask: convert struct clock_event_device to cpumask pointers. 2008-12-13 21:20:26 +10:30
cevt-ds1287.c cpumask: convert struct clock_event_device to cpumask pointers. 2008-12-13 21:20:26 +10:30
cevt-gt641xx.c cpumask: convert struct clock_event_device to cpumask pointers. 2008-12-13 21:20:26 +10:30
cevt-r4k.c MIPS: make cp0 counter clocksource/event usable as fallback. 2009-01-11 09:57:26 +00:00
cevt-sb1250.c cpumask: convert struct clock_event_device to cpumask pointers. 2008-12-13 21:20:26 +10:30
cevt-smtc.c cpumask: convert struct clock_event_device to cpumask pointers. 2008-12-13 21:20:26 +10:30
cevt-txx9.c cpumask: convert struct clock_event_device to cpumask pointers. 2008-12-13 21:20:26 +10:30
cpu-bugs64.c [MIPS] Add empty argument parenthesis to GCC_IMM_ASM 2008-05-12 16:46:52 +01:00
cpu-probe.c MIPS: Alchemy: RTC counter clocksource / clockevent support. 2009-01-11 09:57:27 +00:00
csrc-bcm1480.c [MIPS] Sibyte: Split and move clock code. 2007-11-02 16:13:47 +00:00
csrc-ioasic.c [MIPS] add DECstation I/O ASIC clocksource 2008-04-28 17:14:32 +01:00
csrc-r4k.c MIPS: make cp0 counter clocksource/event usable as fallback. 2009-01-11 09:57:26 +00:00
csrc-sb1250.c [MIPS] Sibyte: Fix name of clocksource. 2007-11-15 23:21:51 +00:00
early_printk.c [MIPS] fix sparse warning about setup_early_printk() 2008-07-15 18:44:29 +01:00
entry.S [MIPS] SMTC: Close tiny holes in the SMTC IPI replay system. 2008-10-03 17:58:58 +01:00
genex.S MIPS: Read watch registers with interrupts disabled. 2009-01-30 21:32:58 +00:00
gpio_txx9.c [MIPS] txx9: Make gpio_txx9 entirely spinlock-safe 2008-07-15 18:44:34 +01:00
head.S [MIPS] IP27: Fix build errors if CONFIG_MAPPED_KERNEL=y 2008-10-06 01:22:29 +01:00
i8253.c cpumask: convert struct clock_event_device to cpumask pointers. 2008-12-13 21:20:26 +10:30
i8259.c MIPS: Mark all but i8259 interrupts as no-probe. 2008-02-08 09:22:42 -08:00
init_task.c take init_fs to saner place 2008-12-31 18:07:42 -05:00
irq_cpu.c [MIPS] irq_cpu: use handle_percpu_irq handler to avoid dropping interrupts. 2007-11-15 23:21:52 +00:00
irq_txx9.c [MIPS] Remove dead code from irq_txx9.c 2007-08-27 02:16:54 +01:00
irq-gic.c cpumask: make irq_set_affinity() take a const struct cpumask 2008-12-13 21:20:26 +10:30
irq-gt641xx.c [MIPS] Add GT641xx IRQ routines. 2007-10-11 23:46:04 +01:00
irq-msc01.c [MIPS] Fix some sparse warnings on traps.c and irq-msc01.c 2008-04-28 17:14:32 +01:00
irq-rm7000.c [MIPS] Fix broken rm7000/rm9000 interrupt handling 2008-02-19 17:01:31 +00:00
irq-rm9000.c on_each_cpu(): kill unused 'retry' parameter 2008-06-26 11:24:38 +02:00
irq.c MIPS: Print irq handler description 2009-01-11 09:57:26 +00:00
kgdb.c kgdb, x86, arm, mips, powerpc: ignore user space single stepping 2008-09-26 10:36:41 -05:00
kspd.c CRED: Separate task security context from task_struct 2008-11-14 10:39:16 +11:00
linux32.c compat: generic compat get/settimeofday 2008-10-16 11:21:33 -07:00
machine_kexec.c [MIPS] Unconditionally writeback and invalidate caches on kexec. 2007-08-27 02:16:59 +01:00
Makefile MIPS: make cp0 counter clocksource/event usable as fallback. 2009-01-11 09:57:26 +00:00
mips_ksyms.c [MIPS] Export __copy_user_inatomic. 2007-03-07 00:07:17 +00:00
mips-mt-fpaff.c MIPS: SMTC: Fix build after recent creditial changes. 2009-01-30 21:32:56 +00:00
mips-mt.c [MIPS] Replace use of print_symbol with new %sP pointer format. 2008-07-15 18:44:33 +01:00
module.c PAGE_ALIGN(): correctly handle 64-bit values on 32-bit architectures 2008-07-24 10:47:21 -07:00
octeon_switch.S MIPS: Add Cavium OCTEON processor support files to arch/mips/cavium-octeon. 2009-01-11 09:57:21 +00:00
proc.c MIPS: show_cpuinfo prints the type of the calling CPU 2008-10-15 12:46:50 +01:00
process.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2008-10-13 17:13:56 +01:00
ptrace32.c MIPS: 64-bit: Use generic 32-bit ptrace compat code. 2009-01-11 09:57:19 +00:00
ptrace.c MIPS: Ptrace support for HARDWARE_WATCHPOINTS 2008-10-11 16:18:57 +01:00
r4k_fpu.S [MIPS] Check FCSR for pending interrupts, alternative version 2007-03-17 01:03:25 +00:00
r4k_switch.S [MIPS] Fix resume for 64K page size on R4000 class processors. 2007-07-12 17:41:05 +01:00
r2300_fpu.S
r2300_switch.S [MIPS] Disallow CpU exception in kernel again. 2007-04-20 14:58:37 +01:00
r6000_fpu.S
relocate_kernel.S [MIPS] Kexec: Fix several 64-bit bugs. 2007-07-31 21:35:36 +01:00
reset.c [MIPS] Export pm_power_off 2006-12-10 21:52:11 +00:00
rtlx.c device create: misc: convert device_create_drvdata to device_create 2008-10-16 09:24:43 -07:00
scall32-o32.S [CVE-2009-0029] Rename old_readdir to sys_old_readdir 2009-01-14 14:15:15 +01:00
scall64-64.S MIPS: Set positive error number to errno on illegal_syscall 2008-10-27 16:18:26 +00:00
scall64-n32.S MIPS: 64-bit: vmsplice needs to use the compat wrapper for o32 and N32. 2008-12-04 17:47:28 +00:00
scall64-o32.S MIPS: Return ENOSYS from sys32_syscall on 64bit kernels like elsewhere. 2008-12-04 17:47:28 +00:00
setup.c MIPS: Fix debugfs_create_*'s error checking method for mips/kernel/ 2008-10-27 16:18:25 +00:00
signal32.c MIPS: Use compat_sys_ptrace 2008-10-11 16:18:41 +01:00
signal_n32.c [MIPS] Fix "no space between function name and open parenthesis" warnings. 2007-10-11 23:46:15 +01:00
signal-common.h [MIPS] replace remaining __FUNCTION__ occurrences 2008-04-28 17:14:27 +01:00
signal.c [MIPS] checkfiles: Fix "need space after that ','" errors. 2007-10-11 23:46:15 +01:00
smp-cmp.c cpumask: change cpumask_scnprintf, cpumask_parse_user, cpulist_parse, and cpulist_scnprintf to take pointers. 2008-12-13 21:20:25 +10:30
smp-mt.c cpumask: centralize cpu_online_map and cpu_possible_map 2008-12-13 21:19:41 +10:30
smp-up.c [MIPS] Only build r4k clocksource for systems that work ok with it. 2007-11-26 17:26:14 +00:00
smp.c cpumask: centralize cpu_online_map and cpu_possible_map 2008-12-13 21:19:41 +10:30
smtc-asm.S [MIPS] SMTC: Don't set and restore irqregs ptr from self_ipi. 2007-06-11 18:20:53 +01:00
smtc-proc.c [MIPS] SMP: Call platform methods via ops structure. 2008-01-29 10:14:57 +00:00
smtc.c cpumask: centralize cpu_online_map and cpu_possible_map 2008-12-13 21:19:41 +10:30
spram.c [MIPS] Basic SPRAM support 2008-04-28 17:14:23 +01:00
stacktrace.c proc: add /proc/*/stack 2009-01-05 12:27:44 +03:00
sync-r4k.c [MIPS] Add support for MIPS CMP platform. 2008-04-28 17:14:26 +01:00
syscall.c Remove asm/a.out.h files for all architectures without a.out support. 2008-09-06 19:30:24 +01:00
time.c [MIPS] unexport null_perf_irq() and make it static 2008-04-28 17:14:31 +01:00
topology.c [MIPS] Do topology_init even on uniprocessor kernels. 2006-11-29 16:21:34 +00:00
traps.c MIPS: Read watch registers with interrupts disabled. 2009-01-30 21:32:58 +00:00
unaligned.c MIPS: Switch FPU emulator trap to BREAK instruction. 2008-10-30 14:44:34 +00:00
vmlinux.lds.S MIPS: Align .data.cacheline_aligned based on CONFIG_MIPS_L1_CACHE_SHIFT 2008-10-15 12:46:50 +01:00
vpe.c mips: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-06 10:44:38 -08:00
watch.c MIPS: Add HARDWARE_WATCHPOINTS definitions and support code. 2008-10-11 16:18:56 +01:00