Re: [PATCH v2 2/5] KVM: s390: vsie: Only accept FORMAT1 CRYCB for guest2

From: Pierre Morel
Date: Thu Aug 23 2018 - 03:42:30 EST

On 22/08/2018 18:55, David Hildenbrand wrote:
On 22.08.2018 18:51, Pierre Morel wrote:
As the comment above the function suggested the shadowing
of the guest2 CRYCB can only accept a format 1 since
AP instructions are not supported in the guest.

Let's modify the check which allowed to accept a format 2 too.

As the bit is ignored without AP/APXA, it is perfectly valid to accept a
format 2, we just have to interpret it as format 1 (which is what we do)

What am I missing?

I was still having AP interpretation in mind.

Signed-off-by: Pierre Morel <pmorel@xxxxxxxxxxxxx>
arch/s390/kvm/vsie.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/arch/s390/kvm/vsie.c b/arch/s390/kvm/vsie.c
index 12b9707..56a9d47 100644
--- a/arch/s390/kvm/vsie.c
+++ b/arch/s390/kvm/vsie.c
@@ -156,7 +156,9 @@ static int shadow_crycb(struct kvm_vcpu *vcpu, struct vsie_page *vsie_page)
u8 ecb3_flags;
scb_s->crycbd = 0;
- if (!(crycbd_o & vcpu->arch.sie_block->crycbd & CRYCB_FORMAT1))
+ if (!(crycbd_o == CRYCB_FORMAT1))
+ return 0;

huh, this looks very broken. The address is still in there.
completely broken you are right

anyway this broken useless patch disappear.



Pierre Morel
Linux/KVM/QEMU in BÃblingen - Germany