1b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0 2c3eb5b14SMarc Zyngier# 3c3eb5b14SMarc Zyngier# KVM configuration 4c3eb5b14SMarc Zyngier# 5c3eb5b14SMarc Zyngier 62412405bSEric Augersource "virt/lib/Kconfig" 7c8f1e967SSean Christophersonsource "virt/kvm/Kconfig" 8c3eb5b14SMarc Zyngier 9c3eb5b14SMarc Zyngiermenuconfig VIRTUALIZATION 10c3eb5b14SMarc Zyngier bool "Virtualization" 11a7f7f624SMasahiro Yamada help 12c3eb5b14SMarc Zyngier Say Y here to get to see options for using your Linux host to run 13c3eb5b14SMarc Zyngier other operating systems inside virtual machines (guests). 14c3eb5b14SMarc Zyngier This option alone does not add any kernel code. 15c3eb5b14SMarc Zyngier 16c3eb5b14SMarc Zyngier If you say N, all options in this submenu will be skipped and 17c3eb5b14SMarc Zyngier disabled. 18c3eb5b14SMarc Zyngier 19c3eb5b14SMarc Zyngierif VIRTUALIZATION 20c3eb5b14SMarc Zyngier 21f2613362SWill Deaconmenuconfig KVM 22c3eb5b14SMarc Zyngier bool "Kernel-based Virtual Machine (KVM) support" 23e26bb75aSSean Christopherson depends on HAVE_KVM 24caadf876SPaolo Bonzini select KVM_COMMON 25441f7bfaSSean Christopherson select KVM_GENERIC_HARDWARE_ENABLING 26f128cf8cSSean Christopherson select KVM_GENERIC_MMU_NOTIFIER 27d241aac7SMarc Zyngier select HAVE_KVM_CPU_RELAX_INTERCEPT 28c3eb5b14SMarc Zyngier select KVM_MMIO 297276030aSMario Smarduch select KVM_GENERIC_DIRTYLOG_READ_PROTECT 306caa5812SOliver Upton select KVM_XFER_TO_GUEST_WORK 318889583cSKim Phillips select KVM_VFIO 329cb1096fSGavin Shan select HAVE_KVM_DIRTY_RING_ACQ_REL 339cb1096fSGavin Shan select NEED_KVM_DIRTY_RING_WITH_BITMAP 340e4e82f1SAndre Przywara select HAVE_KVM_MSI 35180ae7b1SEric Auger select HAVE_KVM_IRQCHIP 36180ae7b1SEric Auger select HAVE_KVM_IRQ_ROUTING 372412405bSEric Auger select IRQ_BYPASS_MANAGER 382412405bSEric Auger select HAVE_KVM_IRQ_BYPASS 39*8886640dSPaolo Bonzini select HAVE_KVM_READONLY_MEM 40e6b673b7SDave Martin select HAVE_KVM_VCPU_RUN_PID_CHANGE 4163b3f96eSPeter Zijlstra select SCHED_INFO 422aef6f30SSean Christopherson select GUEST_PERF_EVENTS if PERF_EVENTS 4360046980SRandy Dunlap select XARRAY_MULTI 44a7f7f624SMasahiro Yamada help 45c3eb5b14SMarc Zyngier Support hosting virtualized guest machines. 46c3eb5b14SMarc Zyngier 47c3eb5b14SMarc Zyngier If unsure, say N. 48c3eb5b14SMarc Zyngier 498e049e0dSQuentin Perretconfig NVHE_EL2_DEBUG 508e049e0dSQuentin Perret bool "Debug mode for non-VHE EL2 object" 51c8f1e967SSean Christopherson depends on KVM 528e049e0dSQuentin Perret help 538e049e0dSQuentin Perret Say Y here to enable the debug mode for the non-VHE KVM EL2 object. 548e049e0dSQuentin Perret Failure reports will BUG() in the hypervisor. This is intended for 558e049e0dSQuentin Perret local EL2 hypervisor development. 568e049e0dSQuentin Perret 578e049e0dSQuentin Perret If unsure, say N. 588e049e0dSQuentin Perret 5903fe9cd0SMarc Zyngierconfig PROTECTED_NVHE_STACKTRACE 6003fe9cd0SMarc Zyngier bool "Protected KVM hypervisor stacktraces" 6103fe9cd0SMarc Zyngier depends on NVHE_EL2_DEBUG 6203fe9cd0SMarc Zyngier default n 6303fe9cd0SMarc Zyngier help 6403fe9cd0SMarc Zyngier Say Y here to enable pKVM hypervisor stacktraces on hyp_panic() 6503fe9cd0SMarc Zyngier 6603fe9cd0SMarc Zyngier If using protected nVHE mode, but cannot afford the associated 6703fe9cd0SMarc Zyngier memory cost (less than 0.75 page per CPU) of pKVM stacktraces, 6803fe9cd0SMarc Zyngier say N. 6903fe9cd0SMarc Zyngier 7003fe9cd0SMarc Zyngier If unsure, or not using protected nVHE (pKVM), say N. 7103fe9cd0SMarc Zyngier 72c3eb5b14SMarc Zyngierendif # VIRTUALIZATION 73