[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-ia64-devel] [PATCH] 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.

-- Kouya

Signed-off-by: Kouya Shimura <kouya@xxxxxxxxxxxxxx>

diff -r f378c424e0ce xen/arch/ia64/xen/vcpu.c
--- a/xen/arch/ia64/xen/vcpu.c  Tue Apr 03 13:04:51 2007 -0600
+++ b/xen/arch/ia64/xen/vcpu.c  Thu Apr 05 17:30:50 2007 +0900
@@ -174,6 +174,8 @@ void vcpu_init_regs(struct vcpu *v)
                    INT_ENABLE_OFFSET(v);
                VCPU(v, itv) = (1 << 16);       /* timer vector masked */
        }
+
+       VCPU(v, pta) = 15<<2;   /* pta.size mustn't be 0. the minimum is 15 */
 
        v->arch.domain_itm_last = -1L;
 }
_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.