441f7bfa99
Allow architectures to opt out of the generic hardware enabling logic, and opt out on both s390 and PPC, which don't need to manually enable virtualization as it's always on (when available). In addition to letting s390 and PPC drop a bit of dead code, this will hopefully also allow ARM to clean up its related code, e.g. ARM has its own per-CPU flag to track which CPUs have enable hardware due to the need to keep hardware enabled indefinitely when pKVM is enabled. Signed-off-by: Sean Christopherson <seanjc@google.com> Acked-by: Anup Patel <anup@brainfault.org> Message-Id: <20221130230934.1014142-50-seanjc@google.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
76 lines
1.9 KiB
Plaintext
76 lines
1.9 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0
|
|
#
|
|
# KVM configuration
|
|
#
|
|
|
|
source "virt/lib/Kconfig"
|
|
source "virt/kvm/Kconfig"
|
|
|
|
menuconfig VIRTUALIZATION
|
|
bool "Virtualization"
|
|
help
|
|
Say Y here to get to see options for using your Linux host to run
|
|
other operating systems inside virtual machines (guests).
|
|
This option alone does not add any kernel code.
|
|
|
|
If you say N, all options in this submenu will be skipped and
|
|
disabled.
|
|
|
|
if VIRTUALIZATION
|
|
|
|
menuconfig KVM
|
|
bool "Kernel-based Virtual Machine (KVM) support"
|
|
depends on HAVE_KVM
|
|
select KVM_GENERIC_HARDWARE_ENABLING
|
|
select MMU_NOTIFIER
|
|
select PREEMPT_NOTIFIERS
|
|
select HAVE_KVM_CPU_RELAX_INTERCEPT
|
|
select HAVE_KVM_ARCH_TLB_FLUSH_ALL
|
|
select KVM_MMIO
|
|
select KVM_GENERIC_DIRTYLOG_READ_PROTECT
|
|
select KVM_XFER_TO_GUEST_WORK
|
|
select SRCU
|
|
select KVM_VFIO
|
|
select HAVE_KVM_EVENTFD
|
|
select HAVE_KVM_IRQFD
|
|
select HAVE_KVM_DIRTY_RING_ACQ_REL
|
|
select NEED_KVM_DIRTY_RING_WITH_BITMAP
|
|
select HAVE_KVM_MSI
|
|
select HAVE_KVM_IRQCHIP
|
|
select HAVE_KVM_IRQ_ROUTING
|
|
select IRQ_BYPASS_MANAGER
|
|
select HAVE_KVM_IRQ_BYPASS
|
|
select HAVE_KVM_VCPU_RUN_PID_CHANGE
|
|
select SCHED_INFO
|
|
select GUEST_PERF_EVENTS if PERF_EVENTS
|
|
select INTERVAL_TREE
|
|
help
|
|
Support hosting virtualized guest machines.
|
|
|
|
If unsure, say N.
|
|
|
|
config NVHE_EL2_DEBUG
|
|
bool "Debug mode for non-VHE EL2 object"
|
|
depends on KVM
|
|
help
|
|
Say Y here to enable the debug mode for the non-VHE KVM EL2 object.
|
|
Failure reports will BUG() in the hypervisor. This is intended for
|
|
local EL2 hypervisor development.
|
|
|
|
If unsure, say N.
|
|
|
|
config PROTECTED_NVHE_STACKTRACE
|
|
bool "Protected KVM hypervisor stacktraces"
|
|
depends on NVHE_EL2_DEBUG
|
|
default n
|
|
help
|
|
Say Y here to enable pKVM hypervisor stacktraces on hyp_panic()
|
|
|
|
If using protected nVHE mode, but cannot afford the associated
|
|
memory cost (less than 0.75 page per CPU) of pKVM stacktraces,
|
|
say N.
|
|
|
|
If unsure, or not using protected nVHE (pKVM), say N.
|
|
|
|
endif # VIRTUALIZATION
|