The vsie pages are not standard page tables, so do not convert them to use ptdesc. Howver, page->index is going away so use page->private to store the address rather than page->index. Signed-off-by: Matthew Wilcox (Oracle) <willy@xxxxxxxxxxxxx> --- arch/s390/kvm/vsie.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/arch/s390/kvm/vsie.c b/arch/s390/kvm/vsie.c index 150b9387860a..26cbd69eb06d 100644 --- a/arch/s390/kvm/vsie.c +++ b/arch/s390/kvm/vsie.c @@ -1393,9 +1393,9 @@ static struct vsie_page *get_vsie_page(struct kvm *kvm, unsigned long addr) kvm->arch.vsie.next++; kvm->arch.vsie.next %= nr_vcpus; } - radix_tree_delete(&kvm->arch.vsie.addr_to_page, page->index >> 9); + radix_tree_delete(&kvm->arch.vsie.addr_to_page, page->private >> 9); } - page->index = addr; + page->private = addr; /* double use of the same address */ if (radix_tree_insert(&kvm->arch.vsie.addr_to_page, addr >> 9, page)) { page_ref_dec(page); @@ -1496,7 +1496,7 @@ void kvm_s390_vsie_destroy(struct kvm *kvm) vsie_page = page_to_virt(page); release_gmap_shadow(vsie_page); /* free the radix tree entry */ - radix_tree_delete(&kvm->arch.vsie.addr_to_page, page->index >> 9); + radix_tree_delete(&kvm->arch.vsie.addr_to_page, page->private >> 9); __free_page(page); } kvm->arch.vsie.page_count = 0; -- 2.45.2