linux/arch
Hollis Blanchard fe4e771d5c KVM: ppc: fix userspace mapping invalidation on context switch
We used to defer invalidating userspace TLB entries until jumping out of the
kernel. This was causing MMU weirdness most easily triggered by using a pipe in
the guest, e.g. "dmesg | tail". I believe the problem was that after the guest
kernel changed the PID (part of context switch), the old process's mappings
were still present, and so copy_to_user() on the "return to new process" path
ended up using stale mappings.

Testing with large pages (64K) exposed the problem, probably because with 4K
pages, pressure on the TLB faulted all process A's mappings out before the
guest kernel could insert any for process B.

Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
2008-12-31 16:52:26 +02:00
..
alpha alpha: remove dead BIO_VMERGE_BOUNDARY 2008-12-29 08:29:51 +01:00
arm Merge branch 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm 2008-12-30 17:36:49 -08:00
avr32
blackfin
cris
frv
h8300
ia64 KVM: ia64: Remove some macro definitions in asm-offsets.c. 2008-12-31 16:52:25 +02:00
m32r
m68k m68k: fix trigraph ignored warning in setox.S 2008-12-28 20:00:05 +01:00
m68knommu
mips Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2008-12-28 12:27:58 -08:00
mn10300
parisc Merge branch 'next' into for-linus 2008-12-25 11:40:09 +11:00
powerpc KVM: ppc: fix userspace mapping invalidation on context switch 2008-12-31 16:52:26 +02:00
s390 Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus 2008-12-30 17:37:25 -08:00
sh Merge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6 2008-12-28 12:33:21 -08:00
sparc Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6 2008-12-28 20:19:47 -08:00
um Merge branch 'core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2008-12-30 16:10:19 -08:00
x86 KVM: Fix cpuid iteration on multiple leaves per eac 2008-12-31 16:52:24 +02:00
xtensa
.gitignore
Kconfig