diff options
author | Radim Krčmář <rkrcmar@redhat.com> | 2018-04-25 15:16:50 +0300 |
---|---|---|
committer | Radim Krčmář <rkrcmar@redhat.com> | 2018-04-25 15:16:50 +0300 |
commit | 06e22bb6fa5bd2d7d6cdd4d886aef90c3ef8f9c7 (patch) | |
tree | 600ef54eb192cfd401fa7b266cfe5bc8c0b0dbd7 /Documentation/virtual/kvm/arm | |
parent | 6d08b06e67cd117f6992c46611dfb4ce267cd71e (diff) | |
parent | 85bd0ba1ff9875798fad94218b627ea9f768f3c3 (diff) | |
download | linux-06e22bb6fa5bd2d7d6cdd4d886aef90c3ef8f9c7.tar.xz |
Merge tag 'kvmarm-fixes-for-4.17-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm
KVM/arm fixes for 4.17, take #1
- PSCI selection API, a leftover from 4.16
- Kick vcpu on active interrupt affinity change
- Plug a VMID allocation race on oversubscribed systems
- Silence debug messages
- Update Christoffer's email address
Diffstat (limited to 'Documentation/virtual/kvm/arm')
-rw-r--r-- | Documentation/virtual/kvm/arm/psci.txt | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/Documentation/virtual/kvm/arm/psci.txt b/Documentation/virtual/kvm/arm/psci.txt new file mode 100644 index 000000000000..aafdab887b04 --- /dev/null +++ b/Documentation/virtual/kvm/arm/psci.txt @@ -0,0 +1,30 @@ +KVM implements the PSCI (Power State Coordination Interface) +specification in order to provide services such as CPU on/off, reset +and power-off to the guest. + +The PSCI specification is regularly updated to provide new features, +and KVM implements these updates if they make sense from a virtualization +point of view. + +This means that a guest booted on two different versions of KVM can +observe two different "firmware" revisions. This could cause issues if +a given guest is tied to a particular PSCI revision (unlikely), or if +a migration causes a different PSCI version to be exposed out of the +blue to an unsuspecting guest. + +In order to remedy this situation, KVM exposes a set of "firmware +pseudo-registers" that can be manipulated using the GET/SET_ONE_REG +interface. These registers can be saved/restored by userspace, and set +to a convenient value if required. + +The following register is defined: + +* KVM_REG_ARM_PSCI_VERSION: + + - Only valid if the vcpu has the KVM_ARM_VCPU_PSCI_0_2 feature set + (and thus has already been initialized) + - Returns the current PSCI version on GET_ONE_REG (defaulting to the + highest PSCI version implemented by KVM and compatible with v0.2) + - Allows any PSCI version implemented by KVM and compatible with + v0.2 to be set with SET_ONE_REG + - Affects the whole VM (even if the register view is per-vcpu) |