linux/arch/mips
David Matlack a6816314af KVM: Introduce vcpu->wants_to_run
Introduce vcpu->wants_to_run to indicate when a vCPU is in its core run
loop, i.e. when the vCPU is running the KVM_RUN ioctl and immediate_exit
was not set.

Replace all references to vcpu->run->immediate_exit with
!vcpu->wants_to_run to avoid TOCTOU races with userspace. For example, a
malicious userspace could invoked KVM_RUN with immediate_exit=true and
then after KVM reads it to set wants_to_run=false, flip it to false.
This would result in the vCPU running in KVM_RUN with
wants_to_run=false. This wouldn't cause any real bugs today but is a
dangerous landmine.

Signed-off-by: David Matlack <dmatlack@google.com>
Link: https://lore.kernel.org/r/20240503181734.1467938-2-dmatlack@google.com
Signed-off-by: Sean Christopherson <seanjc@google.com>
2024-06-18 09:20:01 -07:00
..
alchemy MIPS: Alchemy: Use kcalloc() instead of kzalloc() 2024-02-20 13:36:34 +01:00
ath25
ath79 MIPS: ath79: remove obsolete ATH79_DEV_* configs 2023-03-17 10:28:04 +01:00
bcm47xx MIPS: BCM47XX: Declare early_tlb_init() static 2024-04-15 10:21:20 +02:00
bcm63xx MIPS: BCM63XX: Fix missing prototypes 2024-01-26 10:33:20 +01:00
bmips MIPS: Explicitly include correct DT includes 2023-07-25 10:42:01 +02:00
boot just cleanups and fixes 2024-05-20 09:30:33 -07:00
cavium-octeon Just cleanups and fixes 2024-01-17 11:20:50 -08:00
cobalt MIPS: Cobalt: Fix missing prototypes 2024-01-22 10:32:21 +01:00
configs - Core Frameworks 2024-05-22 10:49:54 -07:00
crypto crypto: mips/crc32 - remove redundant setting of alignmask to 0 2023-10-27 18:04:24 +08:00
dec genirq: Convert kstat_irqs to a struct 2024-04-12 17:08:05 +02:00
fw MIPS: fw arc: Fix missing prototypes 2024-01-22 11:12:01 +01:00
generic MIPS: Share generic kernel code with other architecture 2024-02-20 13:36:25 +01:00
include KVM: Delete the now unused kvm_arch_sched_in() 2024-06-11 14:18:45 -07:00
ingenic
jazz change alloc_pages name in dma_map_ops to avoid name conflicts 2024-04-25 20:55:53 -07:00
kernel mseal: wire up mseal syscall 2024-05-23 19:40:26 -07:00
kvm KVM: Introduce vcpu->wants_to_run 2024-06-18 09:20:01 -07:00
lantiq MIPS: lantiq: register smp_ops on non-smp platforms 2024-01-26 10:36:21 +01:00
lib mips: implement xor_unlock_is_negative_byte 2023-10-18 14:34:17 -07:00
loongson2ef MIPS: Fix typos 2024-01-08 10:39:12 +01:00
loongson32 MIPS: loongson32: Remove dma.h and nand.h 2023-10-06 10:10:13 +02:00
loongson64 mm: Introduce vmap_page_range() to map pages in PCI address space 2024-03-11 16:58:10 +01:00
math-emu MIPS: Fix comment typo 2022-09-12 15:33:24 +02:00
mm The usual shower of singleton fixes and minor series all over MM, 2024-05-19 09:21:03 -07:00
mobileye MIPS: Add support for Mobileye EyeQ5 2024-02-20 13:36:34 +01:00
mti-malta vgacon: clean up global screen_info instances 2023-10-17 10:17:02 +02:00
n64
net bpf: Take return from set_memory_rox() into account with bpf_jit_binary_lock_ro() 2024-03-14 19:28:52 -07:00
pci MIPS: Octeon: Add PCIe link status check 2024-04-15 10:22:22 +02:00
pic32 MIPS: Fixup explicit DT include clean-up 2023-07-28 11:41:09 +02:00
power mips: suspend: include linux/suspend.h as needed 2023-12-10 17:21:41 -08:00
ralink MIPS: ralink: Don't use "proxy" headers 2024-03-11 13:57:18 +01:00
rb532 MIPS: RB532: Declare prom_setup_cmdline() and rb532_gpio_init() static 2024-04-15 10:21:52 +02:00
sgi-ip22 mips: sgi-ip22: make gio_bus_type const 2024-02-20 13:36:34 +01:00
sgi-ip27 MIPS: SGI-IP27: use WARN_ON() output 2024-05-03 14:22:04 +02:00
sgi-ip30 MIPS: sgi-ip30: Fix missing prototypes 2024-01-22 11:12:08 +01:00
sgi-ip32 MIPS: sgi-ip32: Fix missing prototypes 2024-01-22 11:12:19 +01:00
sibyte mips: sibyte: make tb_class constant 2024-03-07 17:19:08 +01:00
sni vgacon: clean up global screen_info instances 2023-10-17 10:17:02 +02:00
tools MIPS: fix typos in comments 2022-05-04 22:22:59 +02:00
txx9 mips: txx9: make txx9_sramc_subsys const 2024-02-20 13:36:34 +01:00
vdso Makefile: remove redundant tool coverage variables 2024-05-14 23:35:48 +09:00
Kbuild MIPS: Share generic kernel code with other architecture 2024-02-20 13:36:25 +01:00
Kbuild.platforms MIPS: Add support for Mobileye EyeQ5 2024-02-20 13:36:34 +01:00
Kconfig mm/treewide: rename CONFIG_HAVE_FAST_GUP to CONFIG_HAVE_GUP_FAST 2024-04-25 20:56:41 -07:00
Kconfig.debug
Makefile MIPS: Loongson64: test for -march=loongson3a cflag 2024-02-23 10:13:47 +01:00
Makefile.postlink kbuild: remove ARCH_POSTLINK from module builds 2023-10-28 21:10:08 +09:00