linux/arch
Andrea Arcangeli 4539b35881 KVM: Fix missing smp tlb flush in invlpg
When kvm emulates an invlpg instruction, it can drop a shadow pte, but
leaves the guest tlbs intact.  This can cause memory corruption when
swapping out.

Without this the other cpu can still write to a freed host physical page.
tlb smp flush must happen if rmap_remove is called always before mmu_lock
is released because the VM will take the mmu_lock before it can finally add
the page to the freelist after swapout. mmu notifier makes it safe to flush
the tlb after freeing the page (otherwise it would never be safe) so we can do
a single flush for multiple sptes invalidated.

Cc: stable@kernel.org
Signed-off-by: Andrea Arcangeli <aarcange@redhat.com>
Acked-by: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
2009-03-24 11:03:14 +02:00
..
alpha cpumask: Use cpu_*_mask accessors code: alpha 2009-02-16 17:32:00 +10:30
arm Merge master.kernel.org:/home/rmk/linux-2.6-arm 2009-03-15 13:34:56 -07:00
avr32 [ARM] 5400/1: Add support for inverted rdy_busy pin for Atmel nand device controller 2009-02-16 21:40:39 +00:00
blackfin Blackfin arch: SPI_MMC is now mainlined MMC_SPI 2009-03-06 00:27:57 +08:00
cris Merge branch 'syscalls' of git://git390.osdl.marist.edu/pub/scm/linux-2.6 2009-01-14 19:58:40 -08:00
frv FRV: in_interrupt() requires #inclusion of linux/hardirq.h not asm/hardirq.h now 2009-02-09 08:51:35 -08:00
h8300 Merge branch 'syscalls' of git://git390.osdl.marist.edu/pub/scm/linux-2.6 2009-01-14 19:58:40 -08:00
ia64 KVM: ia64: Fix the build errors due to lack of macros related to MSI. 2009-03-24 11:03:13 +02:00
m32r eeprom: More consistent symbol names 2009-01-26 21:19:57 +01:00
m68k m68k: merge the non-MMU and MMU versions of siginfo.h 2009-03-17 08:47:11 +10:00
m68knommu m68knommu: m528x build fix 2009-03-10 15:55:12 -07:00
mips MIPS: Mark Eins: Fix configuration. 2009-03-13 23:08:00 +01:00
mn10300 mn10300: fix typo && -> || in arch/mn10300/unit-asb2305/pci.c 2009-02-20 17:57:48 -08:00
parisc parisc: update defconfigs 2009-03-13 01:33:34 -04:00
powerpc KVM: ppc: Add emulation of E500 register mmucsr0 2009-03-24 11:03:12 +02:00
s390 KVM: s390: Fix SIGP set prefix ioctl 2009-03-24 11:03:07 +02:00
sh sh: Add media/soc_camera.h to board setup of Renesas AP325RXA 2009-03-10 15:20:54 +09:00
sparc Merge branch 'master' of /home/davem/src/GIT/linux-2.6/ 2009-03-18 23:53:57 -07:00
um uml: fix WARNING: vmlinux: 'memcpy' exported twice 2009-03-12 16:20:23 -07:00
x86 KVM: Fix missing smp tlb flush in invlpg 2009-03-24 11:03:14 +02:00
xtensa xtensa: fix compilation somewhat 2009-03-10 15:55:10 -07:00
.gitignore
Kconfig [CVE-2009-0029] System call wrapper infrastructure 2009-01-14 14:15:16 +01:00