KVM: s390: vsie: allow guest FORMAT-0 CRYCB on host FORMAT-1
When the guest schedules a SIE with a FORMAT-0 CRYCB, we are able to schedule it in the host with a FORMAT-1 CRYCB if the host uses FORMAT-1 or FORMAT-0. Signed-off-by: Pierre Morel <pmorel@linux.ibm.com> Signed-off-by: Tony Krowiak <akrowiak@linux.ibm.com> Message-Id: <20180925231641.4954-22-akrowiak@linux.vnet.ibm.com> Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
This commit is contained in:
committed by
Christian Borntraeger
parent
6ee7409820
commit
c9ba8c2cd2
@ -220,11 +220,17 @@ static int setup_apcb(struct kvm_vcpu *vcpu, struct kvm_s390_crypto_cb *crycb_s,
|
|||||||
case CRYCB_FORMAT0:
|
case CRYCB_FORMAT0:
|
||||||
if ((crycb_o & PAGE_MASK) != ((crycb_o + 32) & PAGE_MASK))
|
if ((crycb_o & PAGE_MASK) != ((crycb_o + 32) & PAGE_MASK))
|
||||||
return -EACCES;
|
return -EACCES;
|
||||||
if (fmt_h != CRYCB_FORMAT0)
|
|
||||||
|
switch (fmt_h) {
|
||||||
|
case CRYCB_FORMAT2:
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
return setup_apcb00(vcpu, (unsigned long *) &crycb_s->apcb0,
|
case CRYCB_FORMAT1:
|
||||||
(unsigned long) &crycb->apcb0,
|
case CRYCB_FORMAT0:
|
||||||
(unsigned long *) &crycb_h->apcb0);
|
return setup_apcb00(vcpu,
|
||||||
|
(unsigned long *) &crycb_s->apcb0,
|
||||||
|
(unsigned long) &crycb->apcb0,
|
||||||
|
(unsigned long *) &crycb_h->apcb0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user