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

[Xen-changelog] [IA64] Fix vm_summary info in VTi domain



# HG changeset patch
# User awilliam@xxxxxxxxxxx
# Node ID e8383c2fcd50109d9434855348c083acb7eb7d9e
# Parent  83f7dfe273a0d5949ba0f193a6bae63e392b5ccd
[IA64] Fix vm_summary info in VTi domain

This patch fixed vm_summary info and provide correct max_itr_entry,
max_dtr_entry,impl_va_msb, rid_size and so on. 

Signed-off-by: Zhang xiantao <xiantao.zhang@xxxxxxxxx>

diff -r 83f7dfe273a0 -r e8383c2fcd50 xen/arch/ia64/vmx/pal_emul.c
--- a/xen/arch/ia64/vmx/pal_emul.c      Tue Apr 25 23:38:09 2006 -0600
+++ b/xen/arch/ia64/vmx/pal_emul.c      Wed Apr 26 12:40:56 2006 -0600
@@ -21,6 +21,8 @@
 #include <asm/vmx_vcpu.h>
 #include <asm/pal.h>
 #include <asm/sal.h>
+#include <asm/tlb.h>
+#include <asm/vmx_mm_def.h>
 
 static void
 get_pal_parameters (VCPU *vcpu, UINT64 *gr29,
@@ -285,9 +287,20 @@ pal_test_info(VCPU *vcpu){
 
 static struct ia64_pal_retval
 pal_vm_summary(VCPU *vcpu){
-       struct ia64_pal_retval result;
-
-       result.status= -1; //unimplemented
+       pal_vm_info_1_u_t vminfo1;
+       pal_vm_info_2_u_t vminfo2;      
+       struct ia64_pal_retval result;
+       
+       PAL_CALL(result,PAL_VM_SUMMARY,0,0,0);
+       if(!result.status){
+               vminfo1.pvi1_val = result.v0;
+               vminfo1.pal_vm_info_1_s.max_itr_entry = NITRS -1;
+               vminfo1.pal_vm_info_1_s.max_dtr_entry = NDTRS -1;
+               result.v0 = vminfo1.pvi1_val;
+               vminfo2.pal_vm_info_2_s.impl_va_msb = GUEST_IMPL_VA_MSB;
+               vminfo2.pal_vm_info_2_s.rid_size = 
current->domain->arch.rid_bits;
+               result.v1 = vminfo2.pvi2_val;
+       } 
        return result;
 }
 
diff -r 83f7dfe273a0 -r e8383c2fcd50 xen/include/asm-ia64/vmx_mm_def.h
--- a/xen/include/asm-ia64/vmx_mm_def.h Tue Apr 25 23:38:09 2006 -0600
+++ b/xen/include/asm-ia64/vmx_mm_def.h Wed Apr 26 12:40:56 2006 -0600
@@ -28,6 +28,7 @@
 #define ARCH_PAGE_SHIFT   12
 #define ARCH_PAGE_SIZE    PSIZE(ARCH_PAGE_SHIFT)
 #define MAX_PHYS_ADDR_BITS  50
+#define GUEST_IMPL_VA_MSB   59
 #define PMASK(size)         (~((size) - 1))
 #define PSIZE(size)         (1UL<<(size))
 //#define PAGE_SIZE_4K        PSIZE(12)

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

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