On 04/02/2020 18.07, Cornelia Huck wrote: > On Tue, 4 Feb 2020 13:29:46 +0100 > Christian Borntraeger <borntraeger@xxxxxxxxxx> wrote: > >> On 04.02.20 13:20, David Hildenbrand wrote: >>> On 03.02.20 14:19, Christian Borntraeger wrote: >>>> From: Janosch Frank <frankja@xxxxxxxxxxxxx> >>>> >>>> We have two new SIE exit codes dealing with instructions. >>>> 104 (0x68) for a secure instruction interception, on which the SIE needs >>>> hypervisor action to complete the instruction. We can piggy-back on the >>>> existing instruction handlers. >>>> >>>> 108 which is merely a notification and provides data for tracking and >>>> management. For example this is used to tell the host about a new value >>>> for the prefix register. As there will be several special case handlers >>>> in later patches, we handle this in a separate function. >>>> >>>> Signed-off-by: Janosch Frank <frankja@xxxxxxxxxxxxx> >>>> --- >>>> arch/s390/include/asm/kvm_host.h | 2 ++ >>>> arch/s390/kvm/intercept.c | 11 +++++++++++ >>>> 2 files changed, 13 insertions(+) >>>> >>>> diff --git a/arch/s390/include/asm/kvm_host.h b/arch/s390/include/asm/kvm_host.h >>>> index d63ed05272ec..58845b315be0 100644 >>>> --- a/arch/s390/include/asm/kvm_host.h >>>> +++ b/arch/s390/include/asm/kvm_host.h >>>> @@ -217,6 +217,8 @@ struct kvm_s390_sie_block { >>>> #define ICPT_KSS 0x5c >>>> #define ICPT_PV_MCHKR 0x60 >>>> #define ICPT_PV_INT_EN 0x64 >>>> +#define ICPT_PV_INSTR 0x68 >>>> +#define ICPT_PV_NOTIF 0x6c >>> >>> NOTIFY? NOTIFICATION? NOTIF is weird. >> >> ack. I used NOTIFY to keep the numbers aligned. >> >>> >>>> __u8 icptcode; /* 0x0050 */ >>>> __u8 icptstatus; /* 0x0051 */ >>>> __u16 ihcpu; /* 0x0052 */ >>>> diff --git a/arch/s390/kvm/intercept.c b/arch/s390/kvm/intercept.c >>>> index eaa2a21c3170..4b3fbbde1674 100644 >>>> --- a/arch/s390/kvm/intercept.c >>>> +++ b/arch/s390/kvm/intercept.c >>>> @@ -444,6 +444,11 @@ static int handle_operexc(struct kvm_vcpu *vcpu) >>>> return kvm_s390_inject_program_int(vcpu, PGM_OPERATION); >>>> } >>>> >>>> +static int handle_pv_not(struct kvm_vcpu *vcpu) >>> >>> "notification" please. not not. You see why ;) >> >> ack. >> > > With these changes on top: I concur, with the changes on top: Reviewed-by: Thomas Huth <thuth@xxxxxxxxxx>