1 # SPDX-License-Identifier: GPL-2.0 1 # SPDX-License-Identifier: GPL-2.0 2 # KVM common configuration items and defaults 2 # KVM common configuration items and defaults 3 3 4 config KVM_COMMON !! 4 config HAVE_KVM 5 bool 5 bool 6 select EVENTFD << 7 select INTERVAL_TREE << 8 select PREEMPT_NOTIFIERS << 9 6 10 config HAVE_KVM_PFNCACHE 7 config HAVE_KVM_PFNCACHE 11 bool 8 bool 12 9 13 config HAVE_KVM_IRQCHIP 10 config HAVE_KVM_IRQCHIP 14 bool 11 bool 15 12 >> 13 config HAVE_KVM_IRQFD >> 14 bool >> 15 16 config HAVE_KVM_IRQ_ROUTING 16 config HAVE_KVM_IRQ_ROUTING 17 bool 17 bool 18 18 19 config HAVE_KVM_DIRTY_RING 19 config HAVE_KVM_DIRTY_RING 20 bool 20 bool 21 21 22 # Only strongly ordered architectures can sele !! 22 config HAVE_KVM_EVENTFD 23 # put any explicit constraint on userspace ord !! 23 bool 24 # select the _ACQ_REL version. !! 24 select EVENTFD 25 config HAVE_KVM_DIRTY_RING_TSO << 26 bool << 27 select HAVE_KVM_DIRTY_RING << 28 depends on X86 << 29 << 30 # Weakly ordered architectures can only select << 31 # to userspace the additional ordering require << 32 config HAVE_KVM_DIRTY_RING_ACQ_REL << 33 bool << 34 select HAVE_KVM_DIRTY_RING << 35 << 36 # Allow enabling both the dirty bitmap and dir << 37 # that need to dirty memory outside of a vCPU << 38 config NEED_KVM_DIRTY_RING_WITH_BITMAP << 39 bool << 40 depends on HAVE_KVM_DIRTY_RING << 41 25 42 config KVM_MMIO 26 config KVM_MMIO 43 bool 27 bool 44 28 45 config KVM_ASYNC_PF 29 config KVM_ASYNC_PF 46 bool 30 bool 47 31 48 # Toggle to switch between direct notification 32 # Toggle to switch between direct notification and batch job 49 config KVM_ASYNC_PF_SYNC 33 config KVM_ASYNC_PF_SYNC 50 bool 34 bool 51 35 52 config HAVE_KVM_MSI 36 config HAVE_KVM_MSI 53 bool 37 bool 54 38 55 config HAVE_KVM_READONLY_MEM << 56 bool << 57 << 58 config HAVE_KVM_CPU_RELAX_INTERCEPT 39 config HAVE_KVM_CPU_RELAX_INTERCEPT 59 bool 40 bool 60 41 61 config KVM_VFIO 42 config KVM_VFIO 62 bool 43 bool 63 44 64 config HAVE_KVM_INVALID_WAKEUPS !! 45 config HAVE_KVM_ARCH_TLB_FLUSH_ALL 65 bool 46 bool 66 47 67 config KVM_GENERIC_DIRTYLOG_READ_PROTECT !! 48 config HAVE_KVM_INVALID_WAKEUPS 68 bool 49 bool 69 50 70 config KVM_GENERIC_PRE_FAULT_MEMORY !! 51 config KVM_GENERIC_DIRTYLOG_READ_PROTECT 71 bool 52 bool 72 53 73 config KVM_COMPAT 54 config KVM_COMPAT 74 def_bool y 55 def_bool y 75 depends on KVM && COMPAT && !(S390 || A 56 depends on KVM && COMPAT && !(S390 || ARM64 || RISCV) 76 57 77 config HAVE_KVM_IRQ_BYPASS 58 config HAVE_KVM_IRQ_BYPASS 78 bool 59 bool 79 select IRQ_BYPASS_MANAGER << 80 60 81 config HAVE_KVM_VCPU_ASYNC_IOCTL 61 config HAVE_KVM_VCPU_ASYNC_IOCTL 82 bool 62 bool 83 63 84 config HAVE_KVM_VCPU_RUN_PID_CHANGE 64 config HAVE_KVM_VCPU_RUN_PID_CHANGE 85 bool 65 bool 86 66 87 config HAVE_KVM_NO_POLL 67 config HAVE_KVM_NO_POLL 88 bool 68 bool 89 69 90 config KVM_XFER_TO_GUEST_WORK 70 config KVM_XFER_TO_GUEST_WORK 91 bool 71 bool 92 72 93 config HAVE_KVM_PM_NOTIFIER 73 config HAVE_KVM_PM_NOTIFIER 94 bool 74 bool 95 << 96 config KVM_GENERIC_HARDWARE_ENABLING << 97 bool << 98 << 99 config KVM_GENERIC_MMU_NOTIFIER << 100 select MMU_NOTIFIER << 101 bool << 102 << 103 config KVM_GENERIC_MEMORY_ATTRIBUTES << 104 depends on KVM_GENERIC_MMU_NOTIFIER << 105 bool << 106 << 107 config KVM_PRIVATE_MEM << 108 select XARRAY_MULTI << 109 bool << 110 << 111 config KVM_GENERIC_PRIVATE_MEM << 112 select KVM_GENERIC_MEMORY_ATTRIBUTES << 113 select KVM_PRIVATE_MEM << 114 bool << 115 << 116 config HAVE_KVM_ARCH_GMEM_PREPARE << 117 bool << 118 depends on KVM_PRIVATE_MEM << 119 << 120 config HAVE_KVM_ARCH_GMEM_INVALIDATE << 121 bool << 122 depends on KVM_PRIVATE_MEM <<
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.