1# SPDX-License-Identifier: GPL-2.0
2#
3# KVM configuration
4#
5
6source "virt/lib/Kconfig"
7source "virt/kvm/Kconfig"
8
9menuconfig VIRTUALIZATION
10	bool "Virtualization"
11	help
12	  Say Y here to get to see options for using your Linux host to run
13	  other operating systems inside virtual machines (guests).
14	  This option alone does not add any kernel code.
15
16	  If you say N, all options in this submenu will be skipped and
17	  disabled.
18
19if VIRTUALIZATION
20
21menuconfig KVM
22	bool "Kernel-based Virtual Machine (KVM) support"
23	depends on HAVE_KVM
24	select KVM_GENERIC_HARDWARE_ENABLING
25	select MMU_NOTIFIER
26	select PREEMPT_NOTIFIERS
27	select HAVE_KVM_CPU_RELAX_INTERCEPT
28	select KVM_MMIO
29	select KVM_GENERIC_DIRTYLOG_READ_PROTECT
30	select KVM_XFER_TO_GUEST_WORK
31	select KVM_VFIO
32	select HAVE_KVM_EVENTFD
33	select HAVE_KVM_IRQFD
34	select HAVE_KVM_DIRTY_RING_ACQ_REL
35	select NEED_KVM_DIRTY_RING_WITH_BITMAP
36	select HAVE_KVM_MSI
37	select HAVE_KVM_IRQCHIP
38	select HAVE_KVM_IRQ_ROUTING
39	select IRQ_BYPASS_MANAGER
40	select HAVE_KVM_IRQ_BYPASS
41	select HAVE_KVM_VCPU_RUN_PID_CHANGE
42	select SCHED_INFO
43	select GUEST_PERF_EVENTS if PERF_EVENTS
44	select INTERVAL_TREE
45	select XARRAY_MULTI
46	help
47	  Support hosting virtualized guest machines.
48
49	  If unsure, say N.
50
51config NVHE_EL2_DEBUG
52	bool "Debug mode for non-VHE EL2 object"
53	depends on KVM
54	help
55	  Say Y here to enable the debug mode for the non-VHE KVM EL2 object.
56	  Failure reports will BUG() in the hypervisor. This is intended for
57	  local EL2 hypervisor development.
58
59	  If unsure, say N.
60
61config PROTECTED_NVHE_STACKTRACE
62	bool "Protected KVM hypervisor stacktraces"
63	depends on NVHE_EL2_DEBUG
64	default n
65	help
66	  Say Y here to enable pKVM hypervisor stacktraces on hyp_panic()
67
68	  If using protected nVHE mode, but cannot afford the associated
69	  memory cost (less than 0.75 page per CPU) of pKVM stacktraces,
70	  say N.
71
72	  If unsure, or not using protected nVHE (pKVM), say N.
73
74endif # VIRTUALIZATION
75