arm/arm64: KVM: Enforce unconditional flush to PoC when mapping to stage-2
[firefly-linux-kernel-4.4.55.git] / arch / x86 / kvm / Kconfig
1 #
2 # KVM configuration
3 #
4
5 source "virt/kvm/Kconfig"
6
7 menuconfig VIRTUALIZATION
8         bool "Virtualization"
9         depends on HAVE_KVM || X86
10         default y
11         ---help---
12           Say Y here to get to see options for using your Linux host to run other
13           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 disabled.
17
18 if VIRTUALIZATION
19
20 config KVM
21         tristate "Kernel-based Virtual Machine (KVM) support"
22         depends on HAVE_KVM
23         depends on HIGH_RES_TIMERS
24         # for TASKSTATS/TASK_DELAY_ACCT:
25         depends on NET
26         select PREEMPT_NOTIFIERS
27         select MMU_NOTIFIER
28         select ANON_INODES
29         select HAVE_KVM_IRQCHIP
30         select HAVE_KVM_IRQFD
31         select IRQ_BYPASS_MANAGER
32         select HAVE_KVM_IRQ_BYPASS
33         select HAVE_KVM_IRQ_ROUTING
34         select HAVE_KVM_EVENTFD
35         select KVM_APIC_ARCHITECTURE
36         select KVM_ASYNC_PF
37         select USER_RETURN_NOTIFIER
38         select KVM_MMIO
39         select TASKSTATS
40         select TASK_DELAY_ACCT
41         select PERF_EVENTS
42         select HAVE_KVM_MSI
43         select HAVE_KVM_CPU_RELAX_INTERCEPT
44         select KVM_GENERIC_DIRTYLOG_READ_PROTECT
45         select KVM_VFIO
46         select SRCU
47         ---help---
48           Support hosting fully virtualized guest machines using hardware
49           virtualization extensions.  You will need a fairly recent
50           processor equipped with virtualization extensions. You will also
51           need to select one or more of the processor modules below.
52
53           This module provides access to the hardware capabilities through
54           a character device node named /dev/kvm.
55
56           To compile this as a module, choose M here: the module
57           will be called kvm.
58
59           If unsure, say N.
60
61 config KVM_INTEL
62         tristate "KVM for Intel processors support"
63         depends on KVM
64         # for perf_guest_get_msrs():
65         depends on CPU_SUP_INTEL
66         ---help---
67           Provides support for KVM on Intel processors equipped with the VT
68           extensions.
69
70           To compile this as a module, choose M here: the module
71           will be called kvm-intel.
72
73 config KVM_AMD
74         tristate "KVM for AMD processors support"
75         depends on KVM
76         ---help---
77           Provides support for KVM on AMD processors equipped with the AMD-V
78           (SVM) extensions.
79
80           To compile this as a module, choose M here: the module
81           will be called kvm-amd.
82
83 config KVM_MMU_AUDIT
84         bool "Audit KVM MMU"
85         depends on KVM && TRACEPOINTS
86         ---help---
87          This option adds a R/W kVM module parameter 'mmu_audit', which allows
88          auditing of KVM MMU events at runtime.
89
90 config KVM_DEVICE_ASSIGNMENT
91         bool "KVM legacy PCI device assignment support (DEPRECATED)"
92         depends on KVM && PCI && IOMMU_API
93         default n
94         ---help---
95           Provide support for legacy PCI device assignment through KVM.  The
96           kernel now also supports a full featured userspace device driver
97           framework through VFIO, which supersedes this support and provides
98           better security.
99
100           If unsure, say N.
101
102 # OK, it's a little counter-intuitive to do this, but it puts it neatly under
103 # the virtualization menu.
104 source drivers/vhost/Kconfig
105 source drivers/lguest/Kconfig
106
107 endif # VIRTUALIZATION