1# SPDX-License-Identifier: GPL-2.0 2# KVM common configuration items and defaults 3 4config HAVE_KVM 5 bool 6 select EVENTFD 7 8config HAVE_KVM_PFNCACHE 9 bool 10 11config HAVE_KVM_IRQCHIP 12 bool 13 14config HAVE_KVM_IRQFD 15 bool 16 17config HAVE_KVM_IRQ_ROUTING 18 bool 19 20config HAVE_KVM_DIRTY_RING 21 bool 22 23# Only strongly ordered architectures can select this, as it doesn't 24# put any explicit constraint on userspace ordering. They can also 25# select the _ACQ_REL version. 26config HAVE_KVM_DIRTY_RING_TSO 27 bool 28 select HAVE_KVM_DIRTY_RING 29 depends on X86 30 31# Weakly ordered architectures can only select this, advertising 32# to userspace the additional ordering requirements. 33config HAVE_KVM_DIRTY_RING_ACQ_REL 34 bool 35 select HAVE_KVM_DIRTY_RING 36 37# Allow enabling both the dirty bitmap and dirty ring. Only architectures 38# that need to dirty memory outside of a vCPU context should select this. 39config NEED_KVM_DIRTY_RING_WITH_BITMAP 40 bool 41 depends on HAVE_KVM_DIRTY_RING 42 43config KVM_MMIO 44 bool 45 46config KVM_ASYNC_PF 47 bool 48 49# Toggle to switch between direct notification and batch job 50config KVM_ASYNC_PF_SYNC 51 bool 52 53config HAVE_KVM_MSI 54 bool 55 56config HAVE_KVM_CPU_RELAX_INTERCEPT 57 bool 58 59config KVM_VFIO 60 bool 61 62config HAVE_KVM_INVALID_WAKEUPS 63 bool 64 65config KVM_GENERIC_DIRTYLOG_READ_PROTECT 66 bool 67 68config KVM_COMPAT 69 def_bool y 70 depends on KVM && COMPAT && !(S390 || ARM64 || RISCV) 71 72config HAVE_KVM_IRQ_BYPASS 73 bool 74 75config HAVE_KVM_VCPU_ASYNC_IOCTL 76 bool 77 78config HAVE_KVM_VCPU_RUN_PID_CHANGE 79 bool 80 81config HAVE_KVM_NO_POLL 82 bool 83 84config KVM_XFER_TO_GUEST_WORK 85 bool 86 87config HAVE_KVM_PM_NOTIFIER 88 bool 89 90config KVM_GENERIC_HARDWARE_ENABLING 91 bool 92 93config KVM_GENERIC_MMU_NOTIFIER 94 select MMU_NOTIFIER 95 bool 96 97config KVM_GENERIC_MEMORY_ATTRIBUTES 98 select KVM_GENERIC_MMU_NOTIFIER 99 bool 100 101config KVM_PRIVATE_MEM 102 select XARRAY_MULTI 103 bool 104 105config KVM_GENERIC_PRIVATE_MEM 106 select KVM_GENERIC_MEMORY_ATTRIBUTES 107 select KVM_PRIVATE_MEM 108 bool 109