From bccead27ffbc9f18308f153c8b0b14aa0ed697a5 Mon Sep 17 00:00:00 2001 From: Alex Williamson Date: Thu, 5 Apr 2007 09:26:54 -0600 Subject: [PATCH] [IA64] Fix initial value of cr.pta The initial value of cr.pta in a vcpu is zero. So a Reserved Register/Field fault is raised if a guest executes the following sequence: mov r2=cr.pta;; ... mov cr.pta=r2 Actually, the windows installer with vcpus>=3 crashes due to this issue. Signed-off-by: Kouya Shimura --- xen/arch/ia64/xen/vcpu.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/xen/arch/ia64/xen/vcpu.c b/xen/arch/ia64/xen/vcpu.c index 65c7f2bb4d..5a6de49327 100644 --- a/xen/arch/ia64/xen/vcpu.c +++ b/xen/arch/ia64/xen/vcpu.c @@ -175,6 +175,9 @@ void vcpu_init_regs(struct vcpu *v) VCPU(v, itv) = (1 << 16); /* timer vector masked */ } + /* pta.size must not be 0. The minimum is 15 (32k) */ + VCPU(v, pta) = 15 << 2; + v->arch.domain_itm_last = -1L; } -- 2.39.5