diff options
author | Cornelia Huck <cornelia.huck@de.ibm.com> | 2014-06-27 03:29:26 -0400 |
---|---|---|
committer | Christian Borntraeger <borntraeger@de.ibm.com> | 2014-07-21 07:22:46 -0400 |
commit | 0907c855b3b2006b11a96e6c81f91e36a5278d0e (patch) | |
tree | 22f6c627c038707f1abaceb6c70948bc22de2f83 /Documentation/virtual | |
parent | ea74c0ea1b24a6978a6ebc80ba4dbc7b7848b32d (diff) |
KVM: document target of capability enablement
Capabilities can be enabled on a vcpu or (since recently) on a vm. Document
this and note for the existing capabilites whether they are per-vcpu or
per-vm.
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Reviewed-by: David Hildenbrand <dahi@linux.vnet.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Diffstat (limited to 'Documentation/virtual')
-rw-r--r-- | Documentation/virtual/kvm/api.txt | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/Documentation/virtual/kvm/api.txt b/Documentation/virtual/kvm/api.txt index a41465bd6a5c..7ab41e9154c2 100644 --- a/Documentation/virtual/kvm/api.txt +++ b/Documentation/virtual/kvm/api.txt | |||
@@ -2875,15 +2875,18 @@ The fields in each entry are defined as follows: | |||
2875 | 6. Capabilities that can be enabled | 2875 | 6. Capabilities that can be enabled |
2876 | ----------------------------------- | 2876 | ----------------------------------- |
2877 | 2877 | ||
2878 | There are certain capabilities that change the behavior of the virtual CPU when | 2878 | There are certain capabilities that change the behavior of the virtual CPU or |
2879 | enabled. To enable them, please see section 4.37. Below you can find a list of | 2879 | the virtual machine when enabled. To enable them, please see section 4.37. |
2880 | capabilities and what their effect on the vCPU is when enabling them. | 2880 | Below you can find a list of capabilities and what their effect on the vCPU or |
2881 | the virtual machine is when enabling them. | ||
2881 | 2882 | ||
2882 | The following information is provided along with the description: | 2883 | The following information is provided along with the description: |
2883 | 2884 | ||
2884 | Architectures: which instruction set architectures provide this ioctl. | 2885 | Architectures: which instruction set architectures provide this ioctl. |
2885 | x86 includes both i386 and x86_64. | 2886 | x86 includes both i386 and x86_64. |
2886 | 2887 | ||
2888 | Target: whether this is a per-vcpu or per-vm capability. | ||
2889 | |||
2887 | Parameters: what parameters are accepted by the capability. | 2890 | Parameters: what parameters are accepted by the capability. |
2888 | 2891 | ||
2889 | Returns: the return value. General error numbers (EBADF, ENOMEM, EINVAL) | 2892 | Returns: the return value. General error numbers (EBADF, ENOMEM, EINVAL) |
@@ -2893,6 +2896,7 @@ The following information is provided along with the description: | |||
2893 | 6.1 KVM_CAP_PPC_OSI | 2896 | 6.1 KVM_CAP_PPC_OSI |
2894 | 2897 | ||
2895 | Architectures: ppc | 2898 | Architectures: ppc |
2899 | Target: vcpu | ||
2896 | Parameters: none | 2900 | Parameters: none |
2897 | Returns: 0 on success; -1 on error | 2901 | Returns: 0 on success; -1 on error |
2898 | 2902 | ||
@@ -2907,6 +2911,7 @@ When this capability is enabled, KVM_EXIT_OSI can occur. | |||
2907 | 6.2 KVM_CAP_PPC_PAPR | 2911 | 6.2 KVM_CAP_PPC_PAPR |
2908 | 2912 | ||
2909 | Architectures: ppc | 2913 | Architectures: ppc |
2914 | Target: vcpu | ||
2910 | Parameters: none | 2915 | Parameters: none |
2911 | Returns: 0 on success; -1 on error | 2916 | Returns: 0 on success; -1 on error |
2912 | 2917 | ||
@@ -2926,6 +2931,7 @@ When this capability is enabled, KVM_EXIT_PAPR_HCALL can occur. | |||
2926 | 6.3 KVM_CAP_SW_TLB | 2931 | 6.3 KVM_CAP_SW_TLB |
2927 | 2932 | ||
2928 | Architectures: ppc | 2933 | Architectures: ppc |
2934 | Target: vcpu | ||
2929 | Parameters: args[0] is the address of a struct kvm_config_tlb | 2935 | Parameters: args[0] is the address of a struct kvm_config_tlb |
2930 | Returns: 0 on success; -1 on error | 2936 | Returns: 0 on success; -1 on error |
2931 | 2937 | ||
@@ -2968,6 +2974,7 @@ For mmu types KVM_MMU_FSL_BOOKE_NOHV and KVM_MMU_FSL_BOOKE_HV: | |||
2968 | 6.4 KVM_CAP_S390_CSS_SUPPORT | 2974 | 6.4 KVM_CAP_S390_CSS_SUPPORT |
2969 | 2975 | ||
2970 | Architectures: s390 | 2976 | Architectures: s390 |
2977 | Target: vcpu | ||
2971 | Parameters: none | 2978 | Parameters: none |
2972 | Returns: 0 on success; -1 on error | 2979 | Returns: 0 on success; -1 on error |
2973 | 2980 | ||
@@ -2979,9 +2986,13 @@ handled in-kernel, while the other I/O instructions are passed to userspace. | |||
2979 | When this capability is enabled, KVM_EXIT_S390_TSCH will occur on TEST | 2986 | When this capability is enabled, KVM_EXIT_S390_TSCH will occur on TEST |
2980 | SUBCHANNEL intercepts. | 2987 | SUBCHANNEL intercepts. |
2981 | 2988 | ||
2989 | Note that even though this capability is enabled per-vcpu, the complete | ||
2990 | virtual machine is affected. | ||
2991 | |||
2982 | 6.5 KVM_CAP_PPC_EPR | 2992 | 6.5 KVM_CAP_PPC_EPR |
2983 | 2993 | ||
2984 | Architectures: ppc | 2994 | Architectures: ppc |
2995 | Target: vcpu | ||
2985 | Parameters: args[0] defines whether the proxy facility is active | 2996 | Parameters: args[0] defines whether the proxy facility is active |
2986 | Returns: 0 on success; -1 on error | 2997 | Returns: 0 on success; -1 on error |
2987 | 2998 | ||
@@ -3007,6 +3018,7 @@ This capability connects the vcpu to an in-kernel MPIC device. | |||
3007 | 6.7 KVM_CAP_IRQ_XICS | 3018 | 6.7 KVM_CAP_IRQ_XICS |
3008 | 3019 | ||
3009 | Architectures: ppc | 3020 | Architectures: ppc |
3021 | Target: vcpu | ||
3010 | Parameters: args[0] is the XICS device fd | 3022 | Parameters: args[0] is the XICS device fd |
3011 | args[1] is the XICS CPU number (server ID) for this vcpu | 3023 | args[1] is the XICS CPU number (server ID) for this vcpu |
3012 | 3024 | ||