From: Jan Beulich Date: Mon, 23 Apr 2018 14:12:01 +0000 (+0200) Subject: x86: correct assertion in destroy_perdomain_mapping() X-Git-Tag: archive/raspbian/4.11.1-1+rpi1~1^2~66^2~159 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=f26441439e5bacff948b172cb4d2da3ad8ec7ebd;p=xen.git x86: correct assertion in destroy_perdomain_mapping() hvm_domain_initialise() may call this with nr being zero, which triggers the "does not cross L3 boundary" check. Signed-off-by: Jan Beulich Acked-by: Andrew Cooper Release-acked-by: Juergen Gross --- diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c index 9fe5583fc3..53b36d8889 100644 --- a/xen/arch/x86/mm.c +++ b/xen/arch/x86/mm.c @@ -5475,7 +5475,7 @@ void destroy_perdomain_mapping(struct domain *d, unsigned long va, ASSERT(va >= PERDOMAIN_VIRT_START && va < PERDOMAIN_VIRT_SLOT(PERDOMAIN_SLOTS)); - ASSERT(!l3_table_offset(va ^ (va + nr * PAGE_SIZE - 1))); + ASSERT(!nr || !l3_table_offset(va ^ (va + nr * PAGE_SIZE - 1))); if ( !d->arch.perdomain_l3_pg ) return;