From 9aee93077301b348e869b8c0410e47f5f09d15ab Mon Sep 17 00:00:00 2001 From: "awilliam@xenbuild2.aw" Date: Sun, 4 Feb 2007 11:28:54 -0700 Subject: [PATCH] [IA64] Bug fix new_tlbflush_clock_period() __vhpt_flush() might be called from new_tlbflush_clock_period() even if the vcpu doesn't have the per-vcpu-vhpt. It erases 64KB memory content that starts from machine address 0. Signed-off-by: Kouya Shimura --- xen/arch/ia64/xen/flushtlb.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/xen/arch/ia64/xen/flushtlb.c b/xen/arch/ia64/xen/flushtlb.c index 0c77c1b6df..c7008db3ff 100644 --- a/xen/arch/ia64/xen/flushtlb.c +++ b/xen/arch/ia64/xen/flushtlb.c @@ -88,6 +88,8 @@ new_tlbflush_clock_period(void) smp_mb(); for_each_domain(d) { for_each_vcpu(d, v) { + if (!test_bit(_VCPUF_initialised, &v->vcpu_flags) || VMX_DOMAIN(v)) + continue; if (HAS_PERVCPU_VHPT(v->domain)) vcpu_vhpt_flush(v); } -- 2.30.2