Message ID | 1535019956-23539-2-git-send-email-pmorel@linux.ibm.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | KVM: s390: vsie: Consolidate CRYCB validation | expand |
On 08/23/2018 12:25 PM, Pierre Morel wrote: > Copy the key mask to the right offset inside the shadow CRYCB > > Signed-off-by: Pierre Morel <pmorel@linux.ibm.com> > Reviewed-by: David Hildenbrand <david@redhat.com> > Reviewed-by: Cornelia Huck <cohuck@redhat.com> > Reviewed-by: Janosch Frank <frankja@linux.ibm.com> This should be cc stable I guess? > --- > arch/s390/kvm/vsie.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/arch/s390/kvm/vsie.c b/arch/s390/kvm/vsie.c > index 9175518..12b9707 100644 > --- a/arch/s390/kvm/vsie.c > +++ b/arch/s390/kvm/vsie.c > @@ -173,7 +173,8 @@ static int shadow_crycb(struct kvm_vcpu *vcpu, struct vsie_page *vsie_page) > return set_validity_icpt(scb_s, 0x0039U); > > /* copy only the wrapping keys */ > - if (read_guest_real(vcpu, crycb_addr + 72, &vsie_page->crycb, 56)) > + if (read_guest_real(vcpu, crycb_addr + 72, > + vsie_page->crycb.dea_wrapping_key_mask, 56)) > return set_validity_icpt(scb_s, 0x0035U); > > scb_s->ecb3 |= ecb3_flags; >
On 23.08.2018 13:07, Christian Borntraeger wrote: > > > On 08/23/2018 12:25 PM, Pierre Morel wrote: >> Copy the key mask to the right offset inside the shadow CRYCB >> >> Signed-off-by: Pierre Morel <pmorel@linux.ibm.com> >> Reviewed-by: David Hildenbrand <david@redhat.com> >> Reviewed-by: Cornelia Huck <cohuck@redhat.com> >> Reviewed-by: Janosch Frank <frankja@linux.ibm.com> > > This should be cc stable I guess? > Yes, g3 guests will be run with same wrapping keys.
On 23/08/2018 13:19, David Hildenbrand wrote: > On 23.08.2018 13:07, Christian Borntraeger wrote: >> >> >> On 08/23/2018 12:25 PM, Pierre Morel wrote: >>> Copy the key mask to the right offset inside the shadow CRYCB >>> >>> Signed-off-by: Pierre Morel <pmorel@linux.ibm.com> >>> Reviewed-by: David Hildenbrand <david@redhat.com> >>> Reviewed-by: Cornelia Huck <cohuck@redhat.com> >>> Reviewed-by: Janosch Frank <frankja@linux.ibm.com> >> >> This should be cc stable I guess? >> > > Yes, g3 guests will be run with same wrapping keys. > OK I do send it separated from the other patches. regard, Pierre
On 08/23/2018 01:41 PM, Pierre Morel wrote: > On 23/08/2018 13:19, David Hildenbrand wrote: >> On 23.08.2018 13:07, Christian Borntraeger wrote: >>> >>> >>> On 08/23/2018 12:25 PM, Pierre Morel wrote: >>>> Copy the key mask to the right offset inside the shadow CRYCB >>>> >>>> Signed-off-by: Pierre Morel <pmorel@linux.ibm.com> >>>> Reviewed-by: David Hildenbrand <david@redhat.com> >>>> Reviewed-by: Cornelia Huck <cohuck@redhat.com> >>>> Reviewed-by: Janosch Frank <frankja@linux.ibm.com> >>> >>> This should be cc stable I guess? >>> >> >> Yes, g3 guests will be run with same wrapping keys. >> > > OK I do send it separated from the other patches. No need to do that. I can add that when picking up.
On 23/08/2018 14:43, Christian Borntraeger wrote: > > > On 08/23/2018 01:41 PM, Pierre Morel wrote: >> On 23/08/2018 13:19, David Hildenbrand wrote: >>> On 23.08.2018 13:07, Christian Borntraeger wrote: >>>> >>>> >>>> On 08/23/2018 12:25 PM, Pierre Morel wrote: >>>>> Copy the key mask to the right offset inside the shadow CRYCB >>>>> >>>>> Signed-off-by: Pierre Morel <pmorel@linux.ibm.com> >>>>> Reviewed-by: David Hildenbrand <david@redhat.com> >>>>> Reviewed-by: Cornelia Huck <cohuck@redhat.com> >>>>> Reviewed-by: Janosch Frank <frankja@linux.ibm.com> >>>> >>>> This should be cc stable I guess? >>>> >>> >>> Yes, g3 guests will be run with same wrapping keys. >>> >> >> OK I do send it separated from the other patches. > > No need to do that. I can add that when picking up. > OK Thank Pierre
On 08/23/2018 12:25 PM, Pierre Morel wrote: > Copy the key mask to the right offset inside the shadow CRYCB > > Signed-off-by: Pierre Morel <pmorel@linux.ibm.com> > Reviewed-by: David Hildenbrand <david@redhat.com> > Reviewed-by: Cornelia Huck <cohuck@redhat.com> > Reviewed-by: Janosch Frank <frankja@linux.ibm.com> > --- > arch/s390/kvm/vsie.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/arch/s390/kvm/vsie.c b/arch/s390/kvm/vsie.c > index 9175518..12b9707 100644 > --- a/arch/s390/kvm/vsie.c > +++ b/arch/s390/kvm/vsie.c > @@ -173,7 +173,8 @@ static int shadow_crycb(struct kvm_vcpu *vcpu, struct vsie_page *vsie_page) > return set_validity_icpt(scb_s, 0x0039U); > > /* copy only the wrapping keys */ > - if (read_guest_real(vcpu, crycb_addr + 72, &vsie_page->crycb, 56)) > + if (read_guest_real(vcpu, crycb_addr + 72, > + vsie_page->crycb.dea_wrapping_key_mask, 56)) When we fix that code.., dont we have to XOR the guest3 wrapping keys with the guest2 ones? > return set_validity_icpt(scb_s, 0x0035U); > > scb_s->ecb3 |= ecb3_flags; >
On 23.08.2018 15:12, Christian Borntraeger wrote: > > > On 08/23/2018 12:25 PM, Pierre Morel wrote: >> Copy the key mask to the right offset inside the shadow CRYCB >> >> Signed-off-by: Pierre Morel <pmorel@linux.ibm.com> >> Reviewed-by: David Hildenbrand <david@redhat.com> >> Reviewed-by: Cornelia Huck <cohuck@redhat.com> >> Reviewed-by: Janosch Frank <frankja@linux.ibm.com> >> --- >> arch/s390/kvm/vsie.c | 3 ++- >> 1 file changed, 2 insertions(+), 1 deletion(-) >> >> diff --git a/arch/s390/kvm/vsie.c b/arch/s390/kvm/vsie.c >> index 9175518..12b9707 100644 >> --- a/arch/s390/kvm/vsie.c >> +++ b/arch/s390/kvm/vsie.c >> @@ -173,7 +173,8 @@ static int shadow_crycb(struct kvm_vcpu *vcpu, struct vsie_page *vsie_page) >> return set_validity_icpt(scb_s, 0x0039U); >> >> /* copy only the wrapping keys */ >> - if (read_guest_real(vcpu, crycb_addr + 72, &vsie_page->crycb, 56)) >> + if (read_guest_real(vcpu, crycb_addr + 72, >> + vsie_page->crycb.dea_wrapping_key_mask, 56)) > > When we fix that code.., dont we have to XOR the guest3 wrapping keys with > the guest2 ones? That's done further down in that function. > > >> return set_validity_icpt(scb_s, 0x0035U); >> >> scb_s->ecb3 |= ecb3_flags; >> >
diff --git a/arch/s390/kvm/vsie.c b/arch/s390/kvm/vsie.c index 9175518..12b9707 100644 --- a/arch/s390/kvm/vsie.c +++ b/arch/s390/kvm/vsie.c @@ -173,7 +173,8 @@ static int shadow_crycb(struct kvm_vcpu *vcpu, struct vsie_page *vsie_page) return set_validity_icpt(scb_s, 0x0039U); /* copy only the wrapping keys */ - if (read_guest_real(vcpu, crycb_addr + 72, &vsie_page->crycb, 56)) + if (read_guest_real(vcpu, crycb_addr + 72, + vsie_page->crycb.dea_wrapping_key_mask, 56)) return set_validity_icpt(scb_s, 0x0035U); scb_s->ecb3 |= ecb3_flags;