diff options
author | Ekaterina Tumanova <tumanova@linux.vnet.ibm.com> | 2015-01-30 10:55:56 -0500 |
---|---|---|
committer | Christian Borntraeger <borntraeger@de.ibm.com> | 2015-03-17 11:26:51 -0400 |
commit | e44fc8c9dab215ac0e398622a05574cffd5f5184 (patch) | |
tree | d452385decc56c0e01927738d78fda73d0cd813b /Documentation/virtual/kvm/api.txt | |
parent | 41408c28f283b49202ae374b1c42bc8e9b33a048 (diff) |
KVM: s390: introduce post handlers for STSI
The Store System Information (STSI) instruction currently collects all
information it relays to the caller in the kernel. Some information,
however, is only available in user space. An example of this is the
guest name: The kernel always sets "KVMGuest", but user space knows the
actual guest name.
This patch introduces a new exit, KVM_EXIT_S390_STSI, guarded by a
capability that can be enabled by user space if it wants to be able to
insert such data. User space will be provided with the target buffer
and the requested STSI function code.
Reviewed-by: Eric Farman <farman@linux.vnet.ibm.com>
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Ekaterina Tumanova <tumanova@linux.vnet.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Diffstat (limited to 'Documentation/virtual/kvm/api.txt')
-rw-r--r-- | Documentation/virtual/kvm/api.txt | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/Documentation/virtual/kvm/api.txt b/Documentation/virtual/kvm/api.txt index 281179d92a28..c1fcb7a3c125 100644 --- a/Documentation/virtual/kvm/api.txt +++ b/Documentation/virtual/kvm/api.txt | |||
@@ -3304,3 +3304,31 @@ Returns: 0 on success, negative value on error | |||
3304 | Allows use of the vector registers introduced with z13 processor, and | 3304 | Allows use of the vector registers introduced with z13 processor, and |
3305 | provides for the synchronization between host and user space. Will | 3305 | provides for the synchronization between host and user space. Will |
3306 | return -EINVAL if the machine does not support vectors. | 3306 | return -EINVAL if the machine does not support vectors. |
3307 | |||
3308 | 7.4 KVM_CAP_S390_USER_STSI | ||
3309 | |||
3310 | Architectures: s390 | ||
3311 | Parameters: none | ||
3312 | |||
3313 | This capability allows post-handlers for the STSI instruction. After | ||
3314 | initial handling in the kernel, KVM exits to user space with | ||
3315 | KVM_EXIT_S390_STSI to allow user space to insert further data. | ||
3316 | |||
3317 | Before exiting to userspace, kvm handlers should fill in s390_stsi field of | ||
3318 | vcpu->run: | ||
3319 | struct { | ||
3320 | __u64 addr; | ||
3321 | __u8 ar; | ||
3322 | __u8 reserved; | ||
3323 | __u8 fc; | ||
3324 | __u8 sel1; | ||
3325 | __u16 sel2; | ||
3326 | } s390_stsi; | ||
3327 | |||
3328 | @addr - guest address of STSI SYSIB | ||
3329 | @fc - function code | ||
3330 | @sel1 - selector 1 | ||
3331 | @sel2 - selector 2 | ||
3332 | @ar - access register number | ||
3333 | |||
3334 | KVM handlers should exit to userspace with rc = -EREMOTE. | ||