linux/arch/s390/include/uapi/asm
Collin Walling 23a60f8344 s390/kvm: diagnose 0x318 sync and reset
DIAGNOSE 0x318 (diag318) sets information regarding the environment
the VM is running in (Linux, z/VM, etc) and is observed via
firmware/service events.

This is a privileged s390x instruction that must be intercepted by
SIE. Userspace handles the instruction as well as migration. Data
is communicated via VCPU register synchronization.

The Control Program Name Code (CPNC) is stored in the SIE block. The
CPNC along with the Control Program Version Code (CPVC) are stored
in the kvm_vcpu_arch struct.

This data is reset on load normal and clear resets.

Signed-off-by: Collin Walling <walling@linux.ibm.com>
Reviewed-by: Janosch Frank <frankja@linux.ibm.com>
Acked-by: Cornelia Huck <cohuck@redhat.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Link: https://lore.kernel.org/r/20200622154636.5499-3-walling@linux.ibm.com
[borntraeger@de.ibm.com: fix sync_reg position]
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
2020-06-23 10:55:33 +02:00
..
auxvec.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
bitsperlong.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
bpf_perf_event.h treewide: add "WITH Linux-syscall-note" to SPDX tag of uapi headers 2019-07-25 11:05:10 +02:00
byteorder.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
chpid.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
chsc.h s390/chsc: fix packed-not-aligned warnings 2018-07-17 07:27:56 +02:00
clp.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
cmb.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
dasd.h s390/dasd: Add new ioctl to release space 2019-07-11 20:39:54 +02:00
debug.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
guarded_storage.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
hypfs.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
ioctls.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
ipcbuf.h arch: ipcbuf.h: make uapi asm/ipcbuf.h self-contained 2019-12-04 19:44:14 -08:00
ipl.h s390: nvme ipl 2020-05-06 15:19:35 +02:00
Kbuild kbuild: force all architectures except um to include mandatory-y 2019-03-17 12:56:32 +09:00
kvm_para.h s390: include: Remove redundant license text 2017-11-24 15:37:22 +01:00
kvm_perf.h s390: include: Remove redundant license text 2017-11-24 15:37:22 +01:00
kvm.h s390/kvm: diagnose 0x318 sync and reset 2020-06-23 10:55:33 +02:00
monwriter.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
perf_regs.h s390: add a few more SPDX identifiers 2017-12-05 07:51:09 +01:00
pkey.h s390/pkey/zcrypt: Support EP11 AES secure keys 2020-01-30 13:07:56 +01:00
posix_types.h s390: use generic UID16 implementation 2019-01-18 09:33:18 +01:00
ptrace.h s390/uapi: correct whitespace & coding style in asm/ptrace.h 2017-12-05 15:02:41 +01:00
qeth.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
runtime_instr.h s390: fix unrecognized __aligned() in uapi header 2019-06-07 10:09:51 +02:00
schid.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
sclp_ctl.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
setup.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
sie.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
sigcontext.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
signal.h s390/signal: cleanup uapi struct sigaction 2018-04-17 10:36:12 +02:00
stat.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
statfs.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
sthyi.h s390: add a few more SPDX identifiers 2017-12-05 07:51:09 +01:00
tape390.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
termios.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
types.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
ucontext.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
unistd.h s390/syscalls: use generated syscall_table.h and unistd.h header files 2018-01-23 07:36:52 +01:00
virtio-ccw.h s390/virtio: add BSD license to virtio-ccw 2017-12-05 07:51:07 +01:00
vmcp.h s390: add a few more SPDX identifiers 2017-12-05 07:51:09 +01:00
vtoc.h License cleanup: add SPDX license identifier to uapi header files with no license 2017-11-02 11:19:54 +01:00
zcrypt.h s390/zcrypt: ep11 structs rework, export zcrypt_send_ep11_cprb 2020-01-30 13:07:55 +01:00