linux/arch/sh/include
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
..
asm sh: Handle fixmap TLB eviction more coherently. 2008-11-10 20:00:45 +09:00
cpu-common/cpu sh: Allow SH-3 and SH-5 to use common headers. 2008-07-29 22:52:49 +09:00
cpu-sh2/cpu SH2(A) cache update 2008-08-04 16:33:47 +09:00
cpu-sh2a/cpu sh: Move the CPU definition headers from asm/ to cpu/. 2008-10-20 12:04:53 +09:00
cpu-sh3/cpu sh: Move the CPU definition headers from asm/ to cpu/. 2008-10-20 12:04:53 +09:00
cpu-sh4/cpu sh: Add on-chip RTC support for SH7722. 2008-10-28 18:40:19 +09:00
cpu-sh5/cpu sh: Allow SH-3 and SH-5 to use common headers. 2008-07-29 22:52:49 +09:00
mach-common/mach sh: mach-highlander: Handle SCIF pinmuxing on R7785RP. 2008-10-23 12:35:43 +09:00
mach-dreamcast/mach sh: More header path fixups for mach dir refactoring. 2008-07-29 22:10:01 +09:00
mach-landisk/mach sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
mach-se/mach sh: Move out the solution engine headers to arch/sh/include/mach-se/ 2008-07-29 21:41:37 +09:00
mach-sh03/mach sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00