WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-ia64-devel

[Xen-ia64-devel] [PATCH 8/23] clean up of ia64 hvm builder

To: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-ia64-devel] [PATCH 8/23] clean up of ia64 hvm builder
From: Isaku Yamahata <yamahata@xxxxxxxxxxxxx>
Date: Fri, 12 Oct 2007 12:51:35 +0900
Cc: Isaku Yamahata <yamahata@xxxxxxxxxxxxx>
Delivery-date: Thu, 11 Oct 2007 20:53:17 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-ia64-devel-request@lists.xensource.com?subject=help>
List-id: Discussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com>
List-post: <mailto:xen-ia64-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.4.2.1i
# HG changeset patch
# User yamahata@xxxxxxxxxxxxx
# Date 1191320647 -32400
# Node ID 7c8ffd44bdab4a5c0c4b3a406e956b6c1a6077a9
# Parent  879c3cd63276668ab5854d702c3a1076640d51f0
ia64 hvm domain builder clean up. use xc_vcpu_setcontext().
PATCHNAME: ia64_hvm_builder_use_xc_vcpu_setcontext

Signed-off-by: Isaku Yamahata <yamahata@xxxxxxxxxxxxx>

diff -r 879c3cd63276 -r 7c8ffd44bdab tools/libxc/ia64/xc_ia64_hvm_build.c
--- a/tools/libxc/ia64/xc_ia64_hvm_build.c      Wed Sep 26 15:50:30 2007 +0900
+++ b/tools/libxc/ia64/xc_ia64_hvm_build.c      Tue Oct 02 19:24:07 2007 +0900
@@ -890,7 +890,7 @@ xc_ia64_setup_shared_info(int xc_handle,
  */
 static int
 setup_guest(int xc_handle, uint32_t dom, unsigned long memsize,
-            char *image, unsigned long image_size, vcpu_guest_context_t *ctxt)
+            char *image, unsigned long image_size)
 {
     xen_pfn_t *pfn_list;
     shared_iopage_t *sp;
@@ -1065,8 +1065,6 @@ int
 int
 xc_hvm_build(int xc_handle, uint32_t domid, int memsize, const char 
*image_name)
 {
-    struct xen_domctl launch_domctl;
-    int rc;
     vcpu_guest_context_t st_ctxt, *ctxt = &st_ctxt;
     char *image = NULL;
     unsigned long image_size;
@@ -1086,42 +1084,25 @@ xc_hvm_build(int xc_handle, uint32_t dom
 
     image_size = (image_size + PAGE_SIZE - 1) & PAGE_MASK;
 
-    if (lock_pages(&st_ctxt, sizeof(st_ctxt))) {
-        PERROR("Unable to lock_pages ctxt");
-        return 1;
-    }
+    if (setup_guest(xc_handle, domid, (unsigned long)memsize, image,
+                    image_size) < 0) {
+        ERROR("Error constructing guest OS");
+        goto error_out;
+    }
+
+    free(image);
 
     memset(ctxt, 0, sizeof(*ctxt));
-
-    if (setup_guest(xc_handle, domid, (unsigned long)memsize, image,
-                    image_size, ctxt) < 0) {
-        ERROR("Error constructing guest OS");
-        goto error_out;
-    }
-
-    free(image);
-
     ctxt->regs.ip = 0x80000000ffffffb0UL;
     ctxt->regs.ar.fpsr = xc_ia64_fpsr_default();
     ctxt->regs.cr.isr = 1UL << 63;
     ctxt->regs.psr = IA64_PSR_AC | IA64_PSR_BN;
     ctxt->regs.cr.dcr = 0;
     ctxt->regs.cr.pta = 15 << 2;
-
-    memset(&launch_domctl, 0, sizeof(launch_domctl));
-
-    launch_domctl.domain = (domid_t)domid;
-    launch_domctl.u.vcpucontext.vcpu = 0;
-    set_xen_guest_handle(launch_domctl.u.vcpucontext.ctxt, ctxt);
-
-    launch_domctl.cmd = XEN_DOMCTL_setvcpucontext;
-    rc = do_domctl(xc_handle, &launch_domctl);
-    unlock_pages(&st_ctxt, sizeof(st_ctxt));
-    return rc;
+    return xc_vcpu_setcontext(xc_handle, domid, 0, ctxt);
 
 error_out:
     free(image);
-    unlock_pages(&st_ctxt, sizeof(st_ctxt));
     return -1;
 }
 

Attachment: 16058_7c8ffd44bdab_ia64_hvm_builder_use_xc_vcpu_setcontext.patch
Description: Text Data

_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel
<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-ia64-devel] [PATCH 8/23] clean up of ia64 hvm builder, Isaku Yamahata <=