linux/arch/sh
Paul Mundt acca4f4d9b sh: Handle fixmap TLB eviction more coherently.
There was a race in the kmap_coherent() implementation. While we
guarded against preemption, there was nothing preventing eviction of
the pre-faulted fixmap entry from the UTLB. Under certain workloads
this would result in the fixmap entries used for cache colouring being
evicted from the UTLB in the midst of a copy_page().

In addition to pre-faulting, we also make sure to preserve the PTEs
in the kernel page table and introduce a cached PTE for kmap_coherent()
usage. This follows a similar change on MIPS ("[MIPS] Fix aliasing bug
in copy_to_user_page / copy_from_user_page").

Reported-by: Hideo Saito <saito@densan.co.jp>
Reported-by: CHIKAMA Masaki <masaki.chikama@gmail.com>
Tested-by: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-11-10 20:00:45 +09:00
..
boards sh: mach-highlander: Handle SCIF pinmuxing on R7785RP. 2008-10-23 12:35:43 +09:00
boot sh: FTRACE renamed to FUNCTION_TRACER. 2008-10-31 16:20:36 +09:00
cchips sh: Kill off long-dead HD64465 cchip support. 2008-10-28 20:07:44 +09:00
configs sh: Enable NFS root in Migo-R defconfig. 2008-10-31 16:22:31 +09:00
drivers sh: Migrate common board headers to mach-common/. 2008-10-20 13:02:48 +09:00
include sh: Handle fixmap TLB eviction more coherently. 2008-11-10 20:00:45 +09:00
kernel sh: FTRACE renamed to FUNCTION_TRACER. 2008-10-31 16:20:36 +09:00
lib sh: Fix up the __raw_read/writeX() definitions. 2008-10-01 15:12:27 +09:00
lib64 sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
math-emu sh: Fix up the math-emu build. 2007-06-11 15:57:42 +09:00
mm sh: Handle fixmap TLB eviction more coherently. 2008-11-10 20:00:45 +09:00
oprofile sh: oprofile: Fix up the SH7750 performance counter name. 2008-10-27 09:51:45 +09:00
tools sh: Kill off long-dead HD64465 cchip support. 2008-10-28 20:07:44 +09:00
Kconfig sh: FTRACE renamed to FUNCTION_TRACER. 2008-10-31 16:20:36 +09:00
Kconfig.cpu sh: Disable big endian for SH-5. 2008-02-14 14:22:10 +09:00
Kconfig.debug sh: Disable 4kB stacks when using PAGE_SIZE_64KB. 2008-09-20 20:16:35 +09:00
Makefile sh: SHmedia ISA tuning fixups. 2008-10-31 15:58:53 +09:00