linux/arch/mips/kernel
Vlad Malov e807f9574e MIPS: Fix potential DOS by untrusted user app.
On a 64 bit kernel if an o32 syscall was made with a syscall number less
than 4000, we would read the function from outside of the bounds of the
syscall table.  This led to non-deterministic behavior including system
crashes.

While we were at it we reworked the 32 bit version as well to use fewer
instructions.  Both 32 and 64 bit versions are use the same code now.

Signed-off-by: Vlad Malov <Vlad.Malov@caviumnetworks.com>
Signed-off-by: David Daney <ddaney@caviumnetworks.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2008-12-04 17:47:26 +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: use kbuild.h instead of macros in asm-offsets.c 2008-04-29 08:06:29 -07: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] Add some __user tags 2007-07-13 17:40:01 +01:00
cevt-bcm1480.c [MIPS] Sibyte: Stop timers before programming next even. 2007-11-15 23:21:50 +00:00
cevt-ds1287.c [MIPS] DS1287: Add clockevent driver 2008-04-28 17:14:32 +01:00
cevt-gt641xx.c [MIPS] cevt-gt641xx: Kill unnecessary include 2008-04-28 17:14:32 +01:00
cevt-r4k.c [MIPS] SMTC: Fix SMTC dyntick support. 2008-10-03 17:58:58 +01:00
cevt-sb1250.c [MIPS] Sibyte: Stop timers before programming next even. 2007-11-15 23:21:50 +00:00
cevt-smtc.c [MIPS] SMTC: Fix SMTC dyntick support. 2008-10-03 17:58:58 +01:00
cevt-txx9.c [MIPS] cevt-txx9: Reset timer counter on initialization 2008-07-03 19:14:27 +01:00
cpu-bugs64.c [MIPS] Add empty argument parenthesis to GCC_IMM_ASM 2008-05-12 16:46:52 +01:00
cpu-probe.c MIPS: Sort out CPU type to name translation. 2008-10-30 14:44:34 +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: csrc-r4k: Fix spelling mistake. 2008-11-20 19:42:33 +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: Watch exception handling for HARDWARE_WATCHPOINTS. 2008-10-11 16:18:56 +01: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 [MIPS] i8253: make the pit_clockevent variable static 2008-07-15 18:44:31 +01:00
i8259.c MIPS: Mark all but i8259 interrupts as no-probe. 2008-02-08 09:22:42 -08:00
init_task.c [PATCH] take init_files to fs/file.c 2008-05-16 17:22:20 -04:00
irq-gic.c [MIPS] Add support for MIPS CMP platform. 2008-04-28 17:14:26 +01:00
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] kgdb: add arch support for the kernel's kgdb core 2008-07-30 21:54:42 +01: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
kgdb.c kgdb, x86, arm, mips, powerpc: ignore user space single stepping 2008-09-26 10:36:41 -05:00
kspd.c [MIPS] MT: Functional fixes and a little reformatting of APRP support 2008-05-12 16:46:51 +01: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: Add CONFIG_CPU_R5500 for NEC VR5500 series processors 2008-10-27 16:18:29 +00:00
mips-mt-fpaff.c [MIPS] SMTC: Fix holes in SMTC and FPU affinity support. 2008-10-03 17:58:58 +01:00
mips-mt.c [MIPS] Replace use of print_symbol with new %sP pointer format. 2008-07-15 18:44:33 +01:00
mips_ksyms.c [MIPS] Export __copy_user_inatomic. 2007-03-07 00:07:17 +00:00
module.c PAGE_ALIGN(): correctly handle 64-bit values on 32-bit architectures 2008-07-24 10:47:21 -07: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
ptrace.c MIPS: Ptrace support for HARDWARE_WATCHPOINTS 2008-10-11 16:18:57 +01:00
ptrace32.c MIPS: Move ptrace prototypes to ptrace.h 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 MIPS: Fix potential DOS by untrusted user app. 2008-12-04 17:47:26 +00: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 compat: generic compat get/settimeofday 2008-10-16 11:21:33 -07:00
scall64-o32.S MIPS: Fix potential DOS by untrusted user app. 2008-12-04 17:47:26 +00:00
setup.c MIPS: Fix debugfs_create_*'s error checking method for mips/kernel/ 2008-10-27 16:18:25 +00: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
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
smp-cmp.c [MIPS] Add support for MIPS CMP platform. 2008-04-28 17:14:26 +01:00
smp-mt.c [MIPS] Add support for MIPS CMP platform. 2008-04-28 17:14:26 +01:00
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 MIPS: SMP: Do not initialize __cpu_number_map/__cpu_logical_map for CPU 0. 2008-10-30 14:44:33 +00:00
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 [MIPS] SMTC: Fix SMTC dyntick support. 2008-10-03 17:58:58 +01:00
spram.c [MIPS] Basic SPRAM support 2008-04-28 17:14:23 +01:00
stacktrace.c arch/mips/kernel/stacktrace.c: Heiko can't type 2008-07-23 11:21:45 +02: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: Switch FPU emulator trap to BREAK instruction. 2008-10-30 14:44:34 +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: cdev lock_kernel() pushdown 2008-05-18 15:43:40 -06:00
watch.c MIPS: Add HARDWARE_WATCHPOINTS definitions and support code. 2008-10-11 16:18:56 +01:00