linux/arch
Maxim Levitsky d46db722a0 KVM: x86: emulator: update the emulation mode after CR0 write
commit ad8f9e6994 upstream.

Update the emulation mode when handling writes to CR0, because
toggling CR0.PE switches between Real and Protected Mode, and toggling
CR0.PG when EFER.LME=1 switches between Long and Protected Mode.

This is likely a benign bug because there is no writeback of state,
other than the RIP increment, and when toggling CR0.PE, the CPU has
to execute code from a very low memory address.

Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com>
Message-Id: <20221025124741.228045-14-mlevitsk@redhat.com>
Cc: stable@vger.kernel.org
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2022-11-10 18:15:42 +01:00
..
alpha tty: the rest, stop using tty_schedule_flip() 2022-07-29 17:25:32 +02:00
arc arc: iounmap() arg is volatile 2022-11-03 23:59:15 +09:00
arm ARM: dts: imx6qdl-gw59{10,13}: fix user pushbutton GPIO offset 2022-11-10 18:15:35 +01:00
arm64 KVM: arm64: Fix bad dereference on MTE-enabled systems 2022-11-10 18:15:41 +01:00
csky csky/kprobe: reclaim insn_slot on kprobe unregistration 2022-08-25 11:40:38 +02:00
h8300 Merge branch 'akpm' (patches from Andrew) 2021-09-08 12:55:35 -07:00
hexagon uaccess: fix integer overflow on access_ok() 2022-03-28 09:58:45 +02:00
ia64 ia64: export memory_add_physaddr_to_nid to fix cxl build error 2022-10-26 12:34:59 +02:00
m68k m68k: coldfire/device.c: protect FLEXCAN blocks 2022-08-25 11:40:05 +02:00
microblaze uaccess: fix nios2 and microblaze get_user_8() 2022-04-08 14:23:18 +02:00
mips MIPS: BCM47XX: Cast memcmp() of function to (void *) 2022-10-26 12:35:30 +02:00
nds32 nds32: fix access_ok() checks in get/put_user 2022-03-28 09:58:46 +02:00
nios2 nios2: add force_successful_syscall_return() 2022-08-25 11:40:19 +02:00
openrisc openrisc: io: Define iounmap argument as volatile 2022-08-25 11:40:38 +02:00
parisc parisc: Avoid printing the hardware path twice 2022-11-10 18:15:40 +01:00
powerpc powerpc/pseries/vas: Pass hw_cpu_id to node associativity HCALL 2022-10-26 12:35:23 +02:00
riscv riscv: Pass -mno-relax only on lld < 15.0.0 2022-10-26 12:34:22 +02:00
s390 s390/boot: add secure boot trailer 2022-11-10 18:15:32 +01:00
sh sh: machvec: Use char[] for section boundaries 2022-10-26 12:34:36 +02:00
sparc signal: Deliver SIGTRAP on perf event asynchronously if blocked 2022-06-09 10:22:48 +02:00
um UM: cpuinfo: Fix a warning for CONFIG_CPUMASK_OFFSTACK 2022-10-26 12:34:23 +02:00
x86 KVM: x86: emulator: update the emulation mode after CR0 write 2022-11-10 18:15:42 +01:00
xtensa xtensa: iss: fix handling error cases in iss_net_configure() 2022-08-17 14:23:52 +02:00
.gitignore .gitignore: prefix local generated files with a slash 2021-05-02 00:43:35 +09:00
Kconfig arch: make TRACE_IRQFLAGS_NMI_SUPPORT generic 2022-08-17 14:23:00 +02:00