1# SPDX-License-Identifier: GPL-2.0 2# KVM common configuration items and defaults 3 4config KVM_COMMON 5 bool 6 select EVENTFD 7 select INTERVAL_TREE 8 select MMU_NOTIFIER 9 select PREEMPT_NOTIFIERS 10 11config HAVE_KVM_PFNCACHE 12 bool 13 14config HAVE_KVM_IRQCHIP 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_ASYNC_PF 44 bool 45 46# Toggle to switch between direct notification and batch job 47config KVM_ASYNC_PF_SYNC 48 bool 49 50config HAVE_KVM_CPU_RELAX_INTERCEPT 51 bool 52 53config KVM_VFIO 54 bool 55 56config KVM_GENERIC_DIRTYLOG_READ_PROTECT 57 bool 58 59config KVM_GENERIC_PRE_FAULT_MEMORY 60 bool 61 62config KVM_COMPAT 63 def_bool y 64 depends on KVM && COMPAT && !(S390 || ARM64 || RISCV) 65 66config HAVE_KVM_IRQ_BYPASS 67 tristate 68 select IRQ_BYPASS_MANAGER 69 70config VIRT_XFER_TO_GUEST_WORK 71 bool 72 73config HAVE_KVM_PM_NOTIFIER 74 bool 75 76config KVM_GENERIC_HARDWARE_ENABLING 77 bool 78 79config KVM_ELIDE_TLB_FLUSH_IF_YOUNG 80 bool 81 82config KVM_MMU_LOCKLESS_AGING 83 bool 84 85config KVM_GUEST_MEMFD 86 select XARRAY_MULTI 87 bool 88 89config HAVE_KVM_ARCH_GMEM_CONVERT 90 bool 91 depends on KVM_GUEST_MEMFD 92 93config HAVE_KVM_ARCH_GMEM_RECLAIM 94 bool 95 depends on KVM_GUEST_MEMFD 96 97config HAVE_KVM_ARCH_GMEM_INVALIDATE 98 bool 99 depends on KVM_GUEST_MEMFD 100 101config HAVE_KVM_ARCH_GMEM_POPULATE 102 bool 103 depends on KVM_GUEST_MEMFD 104 105config KVM_VM_MEMORY_ATTRIBUTES 106 bool 107