summaryrefslogtreecommitdiff
path: root/virt/kvm/Kconfig
blob: b14e14cdbfb9fd800b45c9d76d3a7a5ea3a44be4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
# SPDX-License-Identifier: GPL-2.0
# KVM common configuration items and defaults

config KVM_COMMON
       bool
       select EVENTFD
       select INTERVAL_TREE
       select PREEMPT_NOTIFIERS

config HAVE_KVM_PFNCACHE
       bool

config HAVE_KVM_IRQCHIP
       bool

config HAVE_KVM_IRQ_ROUTING
       bool

config HAVE_KVM_DIRTY_RING
       bool

# Only strongly ordered architectures can select this, as it doesn't
# put any explicit constraint on userspace ordering. They can also
# select the _ACQ_REL version.
config HAVE_KVM_DIRTY_RING_TSO
       bool
       select HAVE_KVM_DIRTY_RING
       depends on X86

# Weakly ordered architectures can only select this, advertising
# to userspace the additional ordering requirements.
config HAVE_KVM_DIRTY_RING_ACQ_REL
       bool
       select HAVE_KVM_DIRTY_RING

# Allow enabling both the dirty bitmap and dirty ring. Only architectures
# that need to dirty memory outside of a vCPU context should select this.
config NEED_KVM_DIRTY_RING_WITH_BITMAP
	bool
	depends on HAVE_KVM_DIRTY_RING

config KVM_MMIO
       bool

config KVM_ASYNC_PF
       bool

# Toggle to switch between direct notification and batch job
config KVM_ASYNC_PF_SYNC
       bool

config HAVE_KVM_MSI
       bool

config HAVE_KVM_READONLY_MEM
       bool

config HAVE_KVM_CPU_RELAX_INTERCEPT
       bool

config KVM_VFIO
       bool

config HAVE_KVM_INVALID_WAKEUPS
       bool

config KVM_GENERIC_DIRTYLOG_READ_PROTECT
       bool

config KVM_GENERIC_PRE_FAULT_MEMORY
       bool

config KVM_COMPAT
       def_bool y
       depends on KVM && COMPAT && !(S390 || ARM64 || RISCV)

config HAVE_KVM_IRQ_BYPASS
       bool
       select IRQ_BYPASS_MANAGER

config HAVE_KVM_VCPU_ASYNC_IOCTL
       bool

config HAVE_KVM_VCPU_RUN_PID_CHANGE
       bool

config HAVE_KVM_NO_POLL
       bool

config KVM_XFER_TO_GUEST_WORK
       bool

config HAVE_KVM_PM_NOTIFIER
       bool

config KVM_GENERIC_HARDWARE_ENABLING
       bool

config KVM_GENERIC_MMU_NOTIFIER
       select MMU_NOTIFIER
       bool

config KVM_GENERIC_MEMORY_ATTRIBUTES
       depends on KVM_GENERIC_MMU_NOTIFIER
       bool

config KVM_PRIVATE_MEM
       select XARRAY_MULTI
       bool

config KVM_GENERIC_PRIVATE_MEM
       select KVM_GENERIC_MEMORY_ATTRIBUTES
       select KVM_PRIVATE_MEM
       bool

config HAVE_KVM_GMEM_PREPARE
       bool
       depends on KVM_PRIVATE_MEM

config HAVE_KVM_GMEM_INVALIDATE
       bool
       depends on KVM_PRIVATE_MEM