mbox series

[v2,0/5] KVM: s390: vsie: fixes and cleanups

Message ID 20200403153050.20569-1-david@redhat.com (mailing list archive)
Headers show
Series KVM: s390: vsie: fixes and cleanups | expand

Message

David Hildenbrand April 3, 2020, 3:30 p.m. UTC
Some vsie/gmap fixes and two cleanups/improvements.

Patch #1 fixes an issue reported by Janosch. It was never observed so far,
because KVM usually doesn't use a region 1 table for it's guest (unless
memory would be exceeding something like 16 EB, which isn't even supported
by the HW). Older QEMU+KVM or other hypervisors can trigger this.

Patch #2 fixes a code path that probably was never taken and will most
probably not be taken very often in the future - unless somebody really
messes up the page tables for a guest (or writes a test for it). At some
point, a test case for this would be nice.

Patch #3 fixes a rare possible race. Don't think this is stable material.

Gave it some testing with my limited access to somewhat-fast s390x
machines. Booted a Linux kernel, supplying all possible number of
page table hiearchies.

v1 -> v2:
- "KVM: s390: vsie: Fix region 1 ASCE sanity shadow address checks"
-- Fix WARN_ON_ONCE
- "gmap_table_walk() simplifications"
-- Also init "table" directly

David Hildenbrand (5):
  KVM: s390: vsie: Fix region 1 ASCE sanity shadow address checks
  KVM: s390: vsie: Fix delivery of addressing exceptions
  KVM: s390: vsie: Fix possible race when shadowing region 3 tables
  KVM: s390: vsie: Move conditional reschedule
  KVM: s390: vsie: gmap_table_walk() simplifications

 arch/s390/kvm/vsie.c |  4 ++--
 arch/s390/mm/gmap.c  | 17 +++++++++++------
 2 files changed, 13 insertions(+), 8 deletions(-)

Comments

Christian Borntraeger April 6, 2020, 4:06 p.m. UTC | #1
Series applied. thanks. 
I will schedule the first 3 for master, 4 and 5 for next.


On 03.04.20 17:30, David Hildenbrand wrote:
> Some vsie/gmap fixes and two cleanups/improvements.
> 
> Patch #1 fixes an issue reported by Janosch. It was never observed so far,
> because KVM usually doesn't use a region 1 table for it's guest (unless
> memory would be exceeding something like 16 EB, which isn't even supported
> by the HW). Older QEMU+KVM or other hypervisors can trigger this.
> 
> Patch #2 fixes a code path that probably was never taken and will most
> probably not be taken very often in the future - unless somebody really
> messes up the page tables for a guest (or writes a test for it). At some
> point, a test case for this would be nice.
> 
> Patch #3 fixes a rare possible race. Don't think this is stable material.
> 
> Gave it some testing with my limited access to somewhat-fast s390x
> machines. Booted a Linux kernel, supplying all possible number of
> page table hiearchies.
> 
> v1 -> v2:
> - "KVM: s390: vsie: Fix region 1 ASCE sanity shadow address checks"
> -- Fix WARN_ON_ONCE
> - "gmap_table_walk() simplifications"
> -- Also init "table" directly
> 
> David Hildenbrand (5):
>   KVM: s390: vsie: Fix region 1 ASCE sanity shadow address checks
>   KVM: s390: vsie: Fix delivery of addressing exceptions
>   KVM: s390: vsie: Fix possible race when shadowing region 3 tables
>   KVM: s390: vsie: Move conditional reschedule
>   KVM: s390: vsie: gmap_table_walk() simplifications
> 
>  arch/s390/kvm/vsie.c |  4 ++--
>  arch/s390/mm/gmap.c  | 17 +++++++++++------
>  2 files changed, 13 insertions(+), 8 deletions(-)
>