]>
Commit | Line | Data |
---|---|---|
b2441318 | 1 | # SPDX-License-Identifier: GPL-2.0 |
6aa8b732 AK |
2 | # |
3 | # KVM configuration | |
4 | # | |
fb56dbb3 | 5 | |
0ba12d10 | 6 | source "virt/kvm/Kconfig" |
5d9b8e30 | 7 | |
de062065 JE |
8 | menuconfig VIRTUALIZATION |
9 | bool "Virtualization" | |
fb56dbb3 | 10 | depends on HAVE_KVM || X86 |
de062065 | 11 | default y |
06bfb7eb | 12 | ---help--- |
36a74097 AK |
13 | Say Y here to get to see options for using your Linux host to run other |
14 | operating systems inside virtual machines (guests). | |
06bfb7eb JE |
15 | This option alone does not add any kernel code. |
16 | ||
17 | If you say N, all options in this submenu will be skipped and disabled. | |
de062065 JE |
18 | |
19 | if VIRTUALIZATION | |
fd24dc4a | 20 | |
6aa8b732 AK |
21 | config KVM |
22 | tristate "Kernel-based Virtual Machine (KVM) support" | |
268fe02a | 23 | depends on HAVE_KVM |
92b5265d | 24 | depends on HIGH_RES_TIMERS |
df3d8ae1 | 25 | # for TASKSTATS/TASK_DELAY_ACCT: |
c2ce3f5d | 26 | depends on NET && MULTIUSER |
e42eef4b | 27 | depends on X86_LOCAL_APIC |
15ad7146 | 28 | select PREEMPT_NOTIFIERS |
cddb8a5c | 29 | select MMU_NOTIFIER |
0ba12d10 | 30 | select HAVE_KVM_IRQCHIP |
297e2105 | 31 | select HAVE_KVM_IRQFD |
87276880 FW |
32 | select IRQ_BYPASS_MANAGER |
33 | select HAVE_KVM_IRQ_BYPASS | |
a725d56a | 34 | select HAVE_KVM_IRQ_ROUTING |
721eecbf | 35 | select HAVE_KVM_EVENTFD |
af585b92 | 36 | select KVM_ASYNC_PF |
18863bdd | 37 | select USER_RETURN_NOTIFIER |
50eb2a3c | 38 | select KVM_MMIO |
fd079fac | 39 | select TASKSTATS |
c9aaa895 | 40 | select TASK_DELAY_ACCT |
f5132b01 | 41 | select PERF_EVENTS |
07975ad3 | 42 | select HAVE_KVM_MSI |
f2a74347 | 43 | select HAVE_KVM_CPU_RELAX_INTERCEPT |
2d5ba19b | 44 | select HAVE_KVM_NO_POLL |
e108ff2f | 45 | select KVM_GENERIC_DIRTYLOG_READ_PROTECT |
ec53500f | 46 | select KVM_VFIO |
83fe27ea | 47 | select SRCU |
6aa8b732 AK |
48 | ---help--- |
49 | Support hosting fully virtualized guest machines using hardware | |
50 | virtualization extensions. You will need a fairly recent | |
51 | processor equipped with virtualization extensions. You will also | |
52 | need to select one or more of the processor modules below. | |
53 | ||
54 | This module provides access to the hardware capabilities through | |
55 | a character device node named /dev/kvm. | |
56 | ||
57 | To compile this as a module, choose M here: the module | |
58 | will be called kvm. | |
59 | ||
60 | If unsure, say N. | |
61 | ||
4f337faf PB |
62 | config KVM_WERROR |
63 | bool "Compile KVM with -Werror" | |
64 | # KASAN may cause the build to fail due to larger frames | |
65 | default y if X86_64 && !KASAN | |
66 | # We use the dependency on !COMPILE_TEST to not be enabled | |
67 | # blindly in allmodconfig or allyesconfig configurations | |
68 | depends on (X86_64 && !KASAN) || !COMPILE_TEST | |
69 | depends on EXPERT | |
70 | help | |
a754acc3 | 71 | Add -Werror to the build flags for KVM. |
4f337faf PB |
72 | |
73 | If in doubt, say "N". | |
74 | ||
6aa8b732 | 75 | config KVM_INTEL |
8f63aaf5 SC |
76 | tristate "KVM for Intel (and compatible) processors support" |
77 | depends on KVM && IA32_FEAT_CTL | |
6aa8b732 | 78 | ---help--- |
8f63aaf5 SC |
79 | Provides support for KVM on processors equipped with Intel's VT |
80 | extensions, a.k.a. Virtual Machine Extensions (VMX). | |
6aa8b732 | 81 | |
58f8ac27 RD |
82 | To compile this as a module, choose M here: the module |
83 | will be called kvm-intel. | |
84 | ||
6aa8b732 AK |
85 | config KVM_AMD |
86 | tristate "KVM for AMD processors support" | |
87 | depends on KVM | |
88 | ---help--- | |
89 | Provides support for KVM on AMD processors equipped with the AMD-V | |
90 | (SVM) extensions. | |
fd24dc4a | 91 | |
58f8ac27 RD |
92 | To compile this as a module, choose M here: the module |
93 | will be called kvm-amd. | |
94 | ||
5dd0a57c BS |
95 | config KVM_AMD_SEV |
96 | def_bool y | |
97 | bool "AMD Secure Encrypted Virtualization (SEV) support" | |
98 | depends on KVM_AMD && X86_64 | |
d30f370d | 99 | depends on CRYPTO_DEV_SP_PSP && !(KVM_AMD=y && CRYPTO_DEV_CCP_DD=m) |
5dd0a57c BS |
100 | ---help--- |
101 | Provides support for launching Encrypted VMs on AMD processors. | |
102 | ||
8b1fe17c XG |
103 | config KVM_MMU_AUDIT |
104 | bool "Audit KVM MMU" | |
105 | depends on KVM && TRACEPOINTS | |
106 | ---help--- | |
107 | This option adds a R/W kVM module parameter 'mmu_audit', which allows | |
94491620 | 108 | auditing of KVM MMU events at runtime. |
8b1fe17c | 109 | |
9525ca02 RR |
110 | # OK, it's a little counter-intuitive to do this, but it puts it neatly under |
111 | # the virtualization menu. | |
8636a1f9 | 112 | source "drivers/vhost/Kconfig" |
9525ca02 | 113 | |
de062065 | 114 | endif # VIRTUALIZATION |