@@ -96,9 +96,9 @@ description:
96
96
Capability:
97
97
which KVM extension provides this ioctl. Can be 'basic',
98
98
which means that is will be provided by any kernel that supports
99
- API version 12 (see section 4.1), or a KVM_CAP_xyz constant, which
100
- means availability needs to be checked with KVM_CHECK_EXTENSION
101
- (see section 4.4) .
99
+ API version 12 (see :ref: ` KVM_GET_API_VERSION < KVM_GET_API_VERSION >`),
100
+ or a KVM_CAP_xyz constant that can be checked with
101
+ :ref: ` KVM_CHECK_EXTENSION < KVM_CHECK_EXTENSION >` .
102
102
103
103
Architectures:
104
104
which instruction set architectures provide this ioctl.
@@ -115,6 +115,8 @@ description:
115
115
are not detailed, but errors with specific meanings are.
116
116
117
117
118
+ .. _KVM_GET_API_VERSION :
119
+
118
120
4.1 KVM_GET_API_VERSION
119
121
-----------------------
120
122
@@ -243,6 +245,8 @@ This list also varies by kvm version and host processor, but does not change
243
245
otherwise.
244
246
245
247
248
+ .. _KVM_CHECK_EXTENSION :
249
+
246
250
4.4 KVM_CHECK_EXTENSION
247
251
-----------------------
248
252
@@ -285,7 +289,7 @@ the VCPU file descriptor can be mmap-ed, including:
285
289
286
290
- if KVM_CAP_DIRTY_LOG_RING is available, a number of pages at
287
291
KVM_DIRTY_LOG_PAGE_OFFSET * PAGE_SIZE. For more information on
288
- KVM_CAP_DIRTY_LOG_RING, see section 8.3 .
292
+ KVM_CAP_DIRTY_LOG_RING, see :ref: ` KVM_CAP_DIRTY_LOG_RING ` .
289
293
290
294
291
295
4.7 KVM_CREATE_VCPU
@@ -1426,6 +1430,8 @@ because of a quirk in the virtualization implementation (see the internals
1426
1430
documentation when it pops into existence).
1427
1431
1428
1432
1433
+ .. _KVM_ENABLE_CAP :
1434
+
1429
1435
4.37 KVM_ENABLE_CAP
1430
1436
-------------------
1431
1437
@@ -2563,7 +2569,7 @@ Specifically:
2563
2569
======================= ========= ===== =======================================
2564
2570
2565
2571
.. [1 ] These encodings are not accepted for SVE-enabled vcpus. See
2566
- KVM_ARM_VCPU_INIT.
2572
+ :ref: ` KVM_ARM_VCPU_INIT ` .
2567
2573
2568
2574
The equivalent register content can be accessed via bits [127:0] of
2569
2575
the corresponding SVE Zn registers instead for vcpus that have SVE
@@ -5075,8 +5081,8 @@ Recognised values for feature:
5075
5081
Finalizes the configuration of the specified vcpu feature.
5076
5082
5077
5083
The vcpu must already have been initialised, enabling the affected feature, by
5078
- means of a successful KVM_ARM_VCPU_INIT call with the appropriate flag set in
5079
- features[].
5084
+ means of a successful :ref: ` KVM_ARM_VCPU_INIT < KVM_ARM_VCPU_INIT >` call with the
5085
+ appropriate flag set in features[].
5080
5086
5081
5087
For affected vcpu features, this is a mandatory step that must be performed
5082
5088
before the vcpu is fully usable.
@@ -6425,6 +6431,8 @@ the capability to be present.
6425
6431
`flags ` must currently be zero.
6426
6432
6427
6433
6434
+ .. _kvm_run :
6435
+
6428
6436
5. The kvm_run structure
6429
6437
========================
6430
6438
@@ -7144,11 +7152,15 @@ primary storage for certain register types. Therefore, the kernel may use the
7144
7152
values in kvm_run even if the corresponding bit in kvm_dirty_regs is not set.
7145
7153
7146
7154
7155
+ .. _cap_enable :
7156
+
7147
7157
6. Capabilities that can be enabled on vCPUs
7148
7158
============================================
7149
7159
7150
7160
There are certain capabilities that change the behavior of the virtual CPU or
7151
- the virtual machine when enabled. To enable them, please see section 4.37.
7161
+ the virtual machine when enabled. To enable them, please see
7162
+ :ref: `KVM_ENABLE_CAP `.
7163
+
7152
7164
Below you can find a list of capabilities and what their effect on the vCPU or
7153
7165
the virtual machine is when enabling them.
7154
7166
@@ -7357,7 +7369,7 @@ KVM API and also from the guest.
7357
7369
sets are supported
7358
7370
(bitfields defined in arch/x86/include/uapi/asm/kvm.h).
7359
7371
7360
- As described above in the kvm_sync_regs struct info in section 5 (kvm_run):
7372
+ As described above in the kvm_sync_regs struct info in section :ref: ` kvm_run `,
7361
7373
KVM_CAP_SYNC_REGS "allow[s] userspace to access certain guest registers
7362
7374
without having to call SET/GET_*REGS". This reduces overhead by eliminating
7363
7375
repeated ioctl calls for setting and/or getting register values. This is
@@ -7403,13 +7415,15 @@ Unused bitfields in the bitarrays must be set to zero.
7403
7415
7404
7416
This capability connects the vcpu to an in-kernel XIVE device.
7405
7417
7418
+ .. _cap_enable_vm :
7419
+
7406
7420
7. Capabilities that can be enabled on VMs
7407
7421
==========================================
7408
7422
7409
7423
There are certain capabilities that change the behavior of the virtual
7410
- machine when enabled. To enable them, please see section 4.37. Below
7411
- you can find a list of capabilities and what their effect on the VM
7412
- is when enabling them.
7424
+ machine when enabled. To enable them, please see section
7425
+ :ref: ` KVM_ENABLE_CAP `. Below you can find a list of capabilities and
7426
+ what their effect on the VM is when enabling them.
7413
7427
7414
7428
The following information is provided along with the description:
7415
7429
@@ -8570,6 +8584,8 @@ guest according to the bits in the KVM_CPUID_FEATURES CPUID leaf
8570
8584
(0x40000001). Otherwise, a guest may use the paravirtual features
8571
8585
regardless of what has actually been exposed through the CPUID leaf.
8572
8586
8587
+ .. _KVM_CAP_DIRTY_LOG_RING :
8588
+
8573
8589
8.29 KVM_CAP_DIRTY_LOG_RING/KVM_CAP_DIRTY_LOG_RING_ACQ_REL
8574
8590
----------------------------------------------------------
8575
8591
0 commit comments