linux/arch
Avi Kivity daea3e73cb KVM: Make locked operations truly atomic
Once upon a time, locked operations were emulated while holding the mmu mutex.
Since mmu pages were write protected, it was safe to emulate the writes in
a non-atomic manner, since there could be no other writer, either in the
guest or in the kernel.

These days emulation takes place without holding the mmu spinlock, so the
write could be preempted by an unshadowing event, which exposes the page
to writes by the guest.  This may cause corruption of guest page tables.

Fix by using an atomic cmpxchg for these operations.

Signed-off-by: Avi Kivity <avi@redhat.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
2010-05-17 12:15:39 +03:00
..
alpha
arm ARM: 5974/1: arm/mach-at91 Makefile: remove two blanks. 2010-04-14 11:22:44 +01:00
avr32
blackfin
cris
frv
h8300
ia64 KVM: ia64: fix the error of ioctl KVM_IRQ_LINE if no irq chip 2010-05-17 12:15:33 +03:00
m32r
m68k m68knommu: fix coldfire tcdrain 2010-04-21 13:43:06 +10:00
m68knommu m68knommu: remove a duplicate vector setting line for 68360 2010-04-21 13:43:06 +10:00
microblaze
mips MIPS: Calculate proper ebase value for 64-bit kernels 2010-04-12 17:26:22 +01:00
mn10300
parisc
powerpc KVM: PPC: Do not create debugfs if fail to create vcpu 2010-05-17 12:15:21 +03:00
s390 KVM: s390: Fix possible memory leak of in kvm_arch_vcpu_create() 2010-05-17 12:15:19 +03:00
score
sh
sparc sparc64: Fix hardirq tracing in trap return path. 2010-04-20 00:48:37 -07:00
um
x86 KVM: Make locked operations truly atomic 2010-05-17 12:15:39 +03:00
xtensa
.gitignore
Kconfig