From f26441439e5bacff948b172cb4d2da3ad8ec7ebd Mon Sep 17 00:00:00 2001 From: Jan Beulich Date: Mon, 23 Apr 2018 16:12:01 +0200 Subject: [PATCH] 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 --- xen/arch/x86/mm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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; -- 2.39.5