KVM: s390: Check for PSTATE when handling DIAGNOSE
DIAGNOSE is a privileged instruction and thus we must make sure that we are in supervisor mode before taking any other actions. Signed-off-by: Thomas Huth <thuth@linux.vnet.ibm.com> Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
5087dfa6c8
commit
93e1750f5e
|
@ -132,6 +132,9 @@ int kvm_s390_handle_diag(struct kvm_vcpu *vcpu)
|
||||||
{
|
{
|
||||||
int code = (vcpu->arch.sie_block->ipb & 0xfff0000) >> 16;
|
int code = (vcpu->arch.sie_block->ipb & 0xfff0000) >> 16;
|
||||||
|
|
||||||
|
if (vcpu->arch.sie_block->gpsw.mask & PSW_MASK_PSTATE)
|
||||||
|
return kvm_s390_inject_program_int(vcpu, PGM_PRIVILEGED_OP);
|
||||||
|
|
||||||
trace_kvm_s390_handle_diag(vcpu, code);
|
trace_kvm_s390_handle_diag(vcpu, code);
|
||||||
switch (code) {
|
switch (code) {
|
||||||
case 0x10:
|
case 0x10:
|
||||||
|
|
Loading…
Reference in New Issue