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

[Xen-changelog] Xen-ia64-specific changes to adapt to recent xen-unstable changes



# HG changeset patch
# User djm@xxxxxxxxxxxxxxx
# Node ID d4d880fcef2860ebe3fd54b391147a57db06a5c7
# Parent  b2f4823b6ff09017e21c0d44f73c58118f50ea46
Xen-ia64-specific changes to adapt to recent xen-unstable changes
Signed-off-by: Dan Magenheimer <dan.magenheimer@xxxxxx>

diff -r b2f4823b6ff0 -r d4d880fcef28 xen/arch/ia64/xen/domain.c
--- a/xen/arch/ia64/xen/domain.c        Fri Sep  9 16:30:54 2005
+++ b/xen/arch/ia64/xen/domain.c        Fri Sep  9 16:31:36 2005
@@ -1101,3 +1101,19 @@
        set_bit(_VCPUF_cpu_migrated, &v->vcpu_flags);
        v->processor = newcpu;
 }
+
+void sync_vcpu_execstate(struct vcpu *v)
+{
+       ia64_save_fpu(v->arch._thread.fph);
+#ifdef CONFIG_VTI
+       if (VMX_DOMAIN(v))
+               vmx_save_state(v);
+#else
+       if (0) do {} while(0);
+#endif
+       else {
+               if (IA64_HAS_EXTRA_STATE(v))
+                       ia64_save_extra(v);
+       }
+       // FIXME SMP: Anything else needed here for SMP?
+}
diff -r b2f4823b6ff0 -r d4d880fcef28 xen/arch/ia64/xen/hypercall.c
--- a/xen/arch/ia64/xen/hypercall.c     Fri Sep  9 16:30:54 2005
+++ b/xen/arch/ia64/xen/hypercall.c     Fri Sep  9 16:31:36 2005
@@ -151,7 +151,7 @@
                regs->r8 = do_dom0_op(regs->r14);
                break;
 
-           case __HYPERVISOR_dom_mem_op:
+           case __HYPERVISOR_memory_op:
 #ifdef CONFIG_VTI
                regs->r8 = do_dom_mem_op(regs->r14, regs->r15, regs->r16, 
regs->r17, regs->r18); 
 #else
diff -r b2f4823b6ff0 -r d4d880fcef28 xen/arch/ia64/xen/xensetup.c
--- a/xen/arch/ia64/xen/xensetup.c      Fri Sep  9 16:30:54 2005
+++ b/xen/arch/ia64/xen/xensetup.c      Fri Sep  9 16:31:36 2005
@@ -11,6 +11,7 @@
 #include <xen/multiboot.h>
 #include <xen/sched.h>
 #include <xen/mm.h>
+#include <public/version.h>
 //#include <xen/delay.h>
 #include <xen/compile.h>
 //#include <xen/console.h>
@@ -384,3 +385,17 @@
 printk("About to call startup_cpu_idle_loop()\n");
     startup_cpu_idle_loop();
 }
+
+void arch_get_xen_caps(xen_capabilities_info_t *info)
+{
+    char *p=info->caps;
+
+    *p=0;
+
+    p+=sprintf(p,"xen_%d.%d_ia64 ",XEN_VERSION,XEN_SUBVERSION);
+
+    BUG_ON((p-info->caps)>sizeof(*info));
+
+    if(p>info->caps) *(p-1) = 0;
+}
+
diff -r b2f4823b6ff0 -r d4d880fcef28 xen/include/asm-ia64/mm.h
--- a/xen/include/asm-ia64/mm.h Fri Sep  9 16:30:54 2005
+++ b/xen/include/asm-ia64/mm.h Fri Sep  9 16:31:36 2005
@@ -415,7 +415,7 @@
 /* If pmt table is provided by control pannel later, we need __get_user
 * here. However if it's allocated by HV, we should access it directly
 */
-#define phys_to_machine_mapping(d, gpfn)                       \
+#define get_mfn_from_pfn(d, gpfn)                      \
     ((d) == dom0 ? gpfn :                                      \
        (gpfn <= d->arch.max_pfn ? (d)->arch.pmt[(gpfn)] :      \
                INVALID_MFN))
@@ -424,7 +424,7 @@
     machine_to_phys_mapping[(mfn)]
 
 #define __gpfn_to_mfn(_d, gpfn)                        \
-    phys_to_machine_mapping((_d), (gpfn))
+    get_mfn_from_pfn((_d), (gpfn))
 
 #define __gpfn_invalid(_d, gpfn)                       \
        (__gpfn_to_mfn((_d), (gpfn)) & GPFN_INV_MASK)
diff -r b2f4823b6ff0 -r d4d880fcef28 xen/include/asm-ia64/xenpage.h
--- a/xen/include/asm-ia64/xenpage.h    Fri Sep  9 16:30:54 2005
+++ b/xen/include/asm-ia64/xenpage.h    Fri Sep  9 16:31:36 2005
@@ -29,6 +29,25 @@
        unsigned long l;
        void *p;
 } xen_va;
+
+static inline int get_order_from_bytes(physaddr_t size)
+{
+    int order;
+    size = (size-1) >> PAGE_SHIFT;
+    for ( order = 0; size; order++ )
+        size >>= 1;
+    return order;
+}
+
+static inline int get_order_from_pages(unsigned long nr_pages)
+{
+    int order;
+    nr_pages--;
+    for ( order = 0; nr_pages; order++ )
+        nr_pages >>= 1;
+    return order;
+}
+
 #endif
 
 #undef __pa
diff -r b2f4823b6ff0 -r d4d880fcef28 xen/include/asm-ia64/xensystem.h
--- a/xen/include/asm-ia64/xensystem.h  Fri Sep  9 16:30:54 2005
+++ b/xen/include/asm-ia64/xensystem.h  Fri Sep  9 16:31:36 2005
@@ -22,6 +22,7 @@
 #endif // CONFIG_VTI
 
 #define XEN_START_ADDR          0xf000000000000000
+#define HYPERVISOR_VIRT_START   0xf000000000000000
 #undef KERNEL_START
 #define KERNEL_START            0xf000000004000000
 #undef PERCPU_ADDR

_______________________________________________
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®.