Files
BPI-CM9-Linux/aml-comp/kernel/aml-6.12/arch/arm64/kvm/Kconfig
T
2026-08-24 10:03:24 +08:00

148 lines
4.2 KiB
Plaintext

# SPDX-License-Identifier: GPL-2.0
#
# KVM configuration
#
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 AS_HAS_ARMV8_4
select KVM_COMMON
select KVM_GENERIC_HARDWARE_ENABLING
select KVM_GENERIC_MMU_NOTIFIER
select HAVE_KVM_CPU_RELAX_INTERCEPT
select KVM_MMIO
select KVM_GENERIC_DIRTYLOG_READ_PROTECT
select KVM_XFER_TO_GUEST_WORK
select KVM_VFIO
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 HAVE_KVM_IRQ_BYPASS
select HAVE_KVM_READONLY_MEM
select HAVE_KVM_VCPU_RUN_PID_CHANGE
select SCHED_INFO
select GUEST_PERF_EVENTS if PERF_EVENTS
help
Support hosting virtualized guest machines.
If unsure, say N.
if KVM
config PTDUMP_STAGE2_DEBUGFS
bool "Present the stage-2 pagetables to debugfs"
depends on DEBUG_KERNEL
depends on DEBUG_FS
depends on GENERIC_PTDUMP
select PTDUMP_CORE
default n
help
Say Y here if you want to show the stage-2 kernel pagetables
layout in a debugfs file. This information is only useful for kernel developers
who are working in architecture specific areas of the kernel.
It is probably not a good idea to enable this feature in a production
kernel.
If in doubt, say N.
config PKVM_MODULE_PATH
string "Path to pKVM modules"
default ""
help
Directory where the pKVM modules are found. If empty, the modules
will be searched into the default path /lib/modules/<uname>.
menuconfig PKVM_DEBUG
bool "Debug mode for Protected KVM hypervisor"
help
Say Y here to enable the debug mode for the Protected KVM (pKVM)
hypervisor. Failure reports will BUG() in the hypervisor. This is
intended for local EL2 hypervisor development.
If unsure, say N.
if PKVM_DEBUG
config PKVM_STRICT_CHECKS
bool "Additional checks in the Protected KVM hypervisor"
default y
help
Say Y here to add more checks into the Protected KVM hypervisor.
Those checks have a slight performance cost and will BUG() on a
failure. This is intended for EL2 hypervisor development.
config PKVM_SELFTESTS
bool "Protected KVM hypervisor selftests"
default y
help
Say Y here to enable Protected KVM (pKVM) hypervisor selftests
during boot. Failure reports will panic the hypervisor. This is
intended for EL2 hypervisor development.
If unsure, say N.
config PKVM_DUMP_TRACE_ON_PANIC
bool "Dump Protected KVM hypervisor trace buffer on panic"
default y
help
Say Y here to dump the content of the pKVM hypervisor on either
hypervisor or host panic. In the case of a hyp panic, only the tail
page is dumped. It only has an effect if the command line option
hyp_trace_printk is set.
config PKVM_FTRACE
bool "Protected KVM hypervisor function tracing"
depends on FTRACE
default y
help
Say Y here to enable func and func_ret hypervisor tracing events.
Those events are raised whenever the hypervisor branch to a
function.
If unsure, Say N.
config PKVM_STACKTRACE
bool "Protected KVM hypervisor stacktraces"
depends on PKVM_DISABLE_STAGE2_ON_PANIC
default y
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.
config PKVM_DISABLE_STAGE2_ON_PANIC
bool "Disable the host stage-2 on panic"
default n
help
If panic occurs while the host lock is held and if, plagued by bad
luck the panic path triggers a host stage-2 memory abort, a lockup
would happen. The only way out is to disable the stage-2 page-table.
This however tamper the system security. This option should therefore
solely be enabled to debug specific issues.
Just say N.
endif # PKVM_DEBUG
endif # KVM
endif # VIRTUALIZATION