diff options
| author | Jason J. Herne <jjherne@linux.vnet.ibm.com> | 2014-11-25 09:46:02 -0500 | 
|---|---|---|
| committer | Christian Borntraeger <borntraeger@de.ibm.com> | 2015-01-23 13:25:40 +0100 | 
| commit | 72f250206f0f291190ab7f54e4d92ab211779929 (patch) | |
| tree | 26e1d8b82e4ff5dd59822f5c849364de4b82d5a1 /arch/s390/include | |
| parent | 556cc0dab1f65f40b755da556a462ae68d6b57a1 (diff) | |
| download | linux-72f250206f0f291190ab7f54e4d92ab211779929.tar.bz2 | |
KVM: s390: Provide guest TOD Clock Get/Set Controls
Provide controls for setting/getting the guest TOD clock based on the VM
attribute interface.
Provide TOD and TOD_HIGH vm attributes on s390 for managing guest Time Of
Day clock value.
TOD_HIGH is presently always set to 0. In the future it will contain a high
order expansion of the tod clock value after it overflows the 64-bits of
the TOD.
Signed-off-by: Jason J. Herne <jjherne@linux.vnet.ibm.com>
Reviewed-by: David Hildenbrand <dahi@linux.vnet.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Diffstat (limited to 'arch/s390/include')
| -rw-r--r-- | arch/s390/include/asm/kvm_host.h | 1 | ||||
| -rw-r--r-- | arch/s390/include/uapi/asm/kvm.h | 5 | 
2 files changed, 6 insertions, 0 deletions
| diff --git a/arch/s390/include/asm/kvm_host.h b/arch/s390/include/asm/kvm_host.h index a2dcd0e099f7..8e22aa0f97fd 100644 --- a/arch/s390/include/asm/kvm_host.h +++ b/arch/s390/include/asm/kvm_host.h @@ -528,6 +528,7 @@ struct kvm_arch{  	struct mutex ipte_mutex;  	spinlock_t start_stop_lock;  	struct kvm_s390_crypto crypto; +	u64 epoch;  };  #define KVM_HVA_ERR_BAD		(-1UL) diff --git a/arch/s390/include/uapi/asm/kvm.h b/arch/s390/include/uapi/asm/kvm.h index 7e9165e1bec5..cb64319d3e51 100644 --- a/arch/s390/include/uapi/asm/kvm.h +++ b/arch/s390/include/uapi/asm/kvm.h @@ -57,12 +57,17 @@ struct kvm_s390_io_adapter_req {  /* kvm attr_group  on vm fd */  #define KVM_S390_VM_MEM_CTRL		0 +#define KVM_S390_VM_TOD			1  /* kvm attributes for mem_ctrl */  #define KVM_S390_VM_MEM_ENABLE_CMMA	0  #define KVM_S390_VM_MEM_CLR_CMMA	1  #define KVM_S390_VM_MEM_LIMIT_SIZE	2 +/* kvm attributes for KVM_S390_VM_TOD */ +#define KVM_S390_VM_TOD_LOW		0 +#define KVM_S390_VM_TOD_HIGH		1 +  /* for KVM_GET_REGS and KVM_SET_REGS */  struct kvm_regs {  	/* general purpose regs for s390 */ |