kernel-ark/arch/arm/kernel
Will Deacon c5102f5935 ARM: 7408/1: cacheflush: return error to userspace when flushing syscall fails
The cacheflush syscall can fail for two reasons:

(1) The arguments are invalid (nonsensical address range or no VMA)

(2) The region generates a translation fault on a VIPT or PIPT cache

This patch allows do_cache_op to return an error code to userspace in
the case of the above. The various coherent_user_range implementations
are modified to return 0 in the case of VIVT caches or -EFAULT in the
case of an abort on v6/v7 cores.

Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2012-05-02 11:12:49 +01:00
..
.gitignore
armksyms.c Disintegrate asm/system.h for ARM 2012-03-28 18:30:01 +01:00
arthur.c
asm-offsets.c ARM: 7114/1: cache-l2x0: add resume entry for l2 in secure mode 2011-10-17 09:11:51 +01:00
atags.c
atags.h
bios32.c ARM: fix bios32.c build warning 2012-03-30 21:03:54 +01:00
calls.S ARM: wire up process_vm_writev and process_vm_readv syscalls 2011-11-17 16:58:00 +00:00
compat.c
compat.h
cpuidle.c cpuidle: Add common time keeping and irq enabling 2012-03-21 01:59:40 -04:00
crash_dump.c
debug.S ARM: cleanups of io includes 2012-03-29 18:02:10 -07:00
devtree.c arm: convert core files from module.h to export.h 2011-10-31 19:30:49 -04:00
dma-isa.c
dma.c
early_printk.c
elf.c Disintegrate asm/system.h for ARM 2012-03-28 18:30:01 +01:00
entry-armv.S ARM: cleanups of io includes 2012-03-29 18:02:10 -07:00
entry-common.S ARM: make arch_ret_to_user macro optional 2012-02-21 17:04:10 -06:00
entry-header.S
etm.c arm: fix implicit module.h users by adding it to arch/arm as required. 2011-10-31 19:30:50 -04:00
fiq.c ARM: move CP15 definitions to separate header file 2012-03-28 18:30:01 +01:00
fiqasm.S
ftrace.c ARM: 7331/1: extract out insn generation code from ftrace 2012-03-24 09:38:55 +00:00
head-common.S
head-nommu.S ARM: move CP15 definitions to separate header file 2012-03-28 18:30:01 +01:00
head.S ARM: move CP15 definitions to separate header file 2012-03-28 18:30:01 +01:00
hw_breakpoint.c Disintegrate asm/system.h for ARM 2012-03-28 18:30:01 +01:00
init_task.c
insn.c ARM: fix missing bug.h include in arch/arm/kernel/insn.c 2012-03-30 11:51:46 +01:00
insn.h ARM: 7334/1: add jump label support 2012-03-24 09:38:56 +00:00
io.c arm: convert core files from module.h to export.h 2011-10-31 19:30:49 -04:00
irq.c Merge branch 'for-linus' of git://git.linaro.org/people/rmk/linux-arm 2012-03-29 16:53:48 -07:00
isa.c
iwmmxt.S
jump_label.c ARM: 7334/1: add jump label support 2012-03-24 09:38:56 +00:00
kgdb.c
kprobes-arm.c ARM: 7181/1: Restrict kprobes probing SWP instructions to ARMv5 and below 2011-11-30 23:54:54 +00:00
kprobes-common.c Disintegrate asm/system.h for ARM 2012-03-28 18:30:01 +01:00
kprobes-test-arm.c ARM: 7181/1: Restrict kprobes probing SWP instructions to ARMv5 and below 2011-11-30 23:54:54 +00:00
kprobes-test-thumb.c ARM: 7174/1: Fix build error in kprobes test code on Thumb2 kernels 2011-11-26 21:58:53 +00:00
kprobes-test.c ARM: 7209/1: Use generic ARM instruction set condition code checks for kprobes. 2011-12-13 08:52:03 +00:00
kprobes-test.h ARM: 7174/1: Fix build error in kprobes test code on Thumb2 kernels 2011-11-26 21:58:53 +00:00
kprobes-thumb.c
kprobes.c Autogenerated GPG tag for Rusty D1ADB8F1: 15EE 8D6C AB0E 7F0C F999 BFCB D920 0E6C D1AD B8F1 2012-04-02 08:53:24 -07:00
kprobes.h
leds.c arm: leds: convert sysdev_class to a regular subsystem 2011-12-21 15:52:57 -08:00
machine_kexec.c Merge branch 'for-linus' of git://git.linaro.org/people/rmk/linux-arm 2012-03-29 16:53:48 -07:00
Makefile Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux 2012-03-30 16:45:39 -07:00
module.c
opcodes.c ARM: 7206/1: Add generic ARM instruction set condition code checks. 2011-12-13 08:52:02 +00:00
patch.c ARM: 7332/1: extract out code patch function from kprobes 2012-03-24 09:38:55 +00:00
patch.h ARM: 7332/1: extract out code patch function from kprobes 2012-03-24 09:38:55 +00:00
perf_event_v6.c ARM: 7356/1: perf: check that we have an event in the PMU IRQ handlers 2012-03-07 09:40:49 +00:00
perf_event_v7.c Merge branch 'for-linus' of git://git.linaro.org/people/rmk/linux-arm 2012-03-29 16:53:48 -07:00
perf_event_xscale.c ARM: 7357/1: perf: fix overflow handling for xscale2 PMUs 2012-03-07 09:40:49 +00:00
perf_event.c Merge branch 'for-linus' of git://git.linaro.org/people/rmk/linux-arm 2012-03-29 16:53:48 -07:00
pj4-cp0.c arm: remove several unnecessary module.h include instances 2011-10-31 19:30:48 -04:00
pmu.c ARM: PMU: re-export release_pmu symbol to modules 2011-11-16 10:06:42 +00:00
process.c Merge branch 'for-linus' of git://git.linaro.org/people/rmk/linux-arm 2012-03-29 16:53:48 -07:00
ptrace.c ARM: 7374/1: add TRACEHOOK support 2012-04-25 19:49:28 +01:00
relocate_kernel.S
return_address.c arm: convert core files from module.h to export.h 2011-10-31 19:30:49 -04:00
sched_clock.c ARM: sync sched_clock() state on suspend 2012-03-24 09:38:53 +00:00
setup.c ARM: 7382/1: mm: truncate memory banks to fit in 4GB space for classic MMU 2012-04-15 22:00:30 +01:00
signal.c ARM: 7374/1: add TRACEHOOK support 2012-04-25 19:49:28 +01:00
signal.h
sleep.S Disintegrate asm/system.h for ARM 2012-03-28 18:30:01 +01:00
smp_scu.c ARM: 7347/1: SCU: use cpu_logical_map for per-CPU low power mode 2012-04-28 17:31:37 +01:00
smp_tlb.c smp: introduce a generic on_each_cpu_mask() function 2012-03-28 17:14:35 -07:00
smp_twd.c ARM: 7359/2: smp_twd: Only wait for reprogramming on active cpus 2012-04-15 22:00:29 +01:00
smp.c Autogenerated GPG tag for Rusty D1ADB8F1: 15EE 8D6C AB0E 7F0C F999 BFCB D920 0E6C D1AD B8F1 2012-04-02 08:53:24 -07:00
stacktrace.c arm: convert core files from module.h to export.h 2011-10-31 19:30:49 -04:00
suspend.c ARM: suspend: use idmap_pgd instead of suspend_pgd 2011-12-06 14:04:14 +00:00
swp_emulate.c ARM: 7208/1: Add condition code checking to SWP emulation handler. 2011-12-13 08:52:03 +00:00
sys_arm.c arm: convert core files from module.h to export.h 2011-10-31 19:30:49 -04:00
sys_oabi-compat.c
tcm.c Disintegrate asm/system.h for ARM 2012-03-28 18:30:01 +01:00
tcm.h
thumbee.c ARM: 7385/1: ThumbEE: Use cpuid macros to read ID_PFR0 for ThumbEE 2012-04-25 19:49:26 +01:00
time.c Merge branch 'sched_clock-for-rmk' of git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms into devel-stable 2012-02-04 10:32:18 +00:00
topology.c ARM: 7182/1: ARM cpu topology: fix warning 2011-11-30 23:55:21 +00:00
traps.c ARM: 7408/1: cacheflush: return error to userspace when flushing syscall fails 2012-05-02 11:12:49 +01:00
unwind.c ARM: unwinder: fix bisection to find origin in .idx section 2011-12-15 14:02:19 -08:00
vmlinux.lds.S ARM: 7320/1: Fix proc_info table alignment 2012-02-09 16:25:37 +00:00
xscale-cp0.c arm: remove several unnecessary module.h include instances 2011-10-31 19:30:48 -04:00