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-changelog

[Xen-changelog] [xen-unstable] libxl: move hvm_build_set_params to libxl

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] libxl: move hvm_build_set_params to libxl_dom.c
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Fri, 10 Sep 2010 14:40:34 -0700
Delivery-date: Fri, 10 Sep 2010 14:46:18 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Ian Campbell <ian.campbell@xxxxxxxxxx>
# Date 1283960852 -3600
# Node ID bd331cd1e7040d3f6ce86ae30488da1d771a9108
# Parent  d6663c62524a375b3b88daab7df641b1f35df07e
libxl: move hvm_build_set_params to libxl_dom.c

It is an internal function with only one caller.

Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
Signed-off-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
---
 tools/libxl/Makefile         |    2 +-
 tools/libxl/libxl_dom.c      |   42 ++++++++++++++++++++++++++++++++++++++++++
 tools/libxl/libxl_internal.h |    6 ------
 3 files changed, 43 insertions(+), 7 deletions(-)

diff -r d6663c62524a -r bd331cd1e704 tools/libxl/Makefile
--- a/tools/libxl/Makefile      Wed Sep 08 16:46:27 2010 +0100
+++ b/tools/libxl/Makefile      Wed Sep 08 16:47:32 2010 +0100
@@ -27,7 +27,7 @@ LIBXL_OBJS-y += libxl_noblktap2.o
 LIBXL_OBJS-y += libxl_noblktap2.o
 endif
 
-LIBXL_OBJS = flexarray.o libxl.o libxl_pci.o libxl_dom.o libxl_exec.o 
libxl_xshelp.o libxl_device.o libxl_internal.o xenguest.o libxl_utils.o 
$(LIBXL_OBJS-y)
+LIBXL_OBJS = flexarray.o libxl.o libxl_pci.o libxl_dom.o libxl_exec.o 
libxl_xshelp.o libxl_device.o libxl_internal.o libxl_utils.o $(LIBXL_OBJS-y)
 LIBXL_OBJS += _libxl_types.o
 
 AUTOINCS= libxlu_cfg_y.h libxlu_cfg_l.h
diff -r d6663c62524a -r bd331cd1e704 tools/libxl/libxl_dom.c
--- a/tools/libxl/libxl_dom.c   Wed Sep 08 16:46:27 2010 +0100
+++ b/tools/libxl/libxl_dom.c   Wed Sep 08 16:47:32 2010 +0100
@@ -20,6 +20,7 @@
 #include <glob.h>
 #include <inttypes.h>
 #include <string.h>
+#include <sys/mman.h>
 #include <sys/time.h> /* for struct timeval */
 #include <unistd.h> /* for sleep(2) */
 
@@ -27,6 +28,8 @@
 #include <xc_dom.h>
 #include <xenguest.h>
 #include <fcntl.h>
+
+#include <xen/hvm/hvm_info_table.h>
 
 #include "libxl.h"
 #include "libxl_internal.h"
@@ -216,6 +219,45 @@ out:
     return ret == 0 ? 0 : ERROR_FAIL;
 }
 
+static int hvm_build_set_params(xc_interface *handle, uint32_t domid,
+                                libxl_domain_build_info *info,
+                                int store_evtchn, unsigned long *store_mfn,
+                                int console_evtchn, unsigned long *console_mfn)
+{
+    struct hvm_info_table *va_hvm;
+    uint8_t *va_map, sum;
+    int i;
+
+    va_map = xc_map_foreign_range(handle, domid,
+                                  XC_PAGE_SIZE, PROT_READ | PROT_WRITE,
+                                  HVM_INFO_PFN);
+    if (va_map == NULL)
+        return -1;
+
+    va_hvm = (struct hvm_info_table *)(va_map + HVM_INFO_OFFSET);
+    va_hvm->acpi_enabled = info->u.hvm.acpi;
+    va_hvm->apic_mode = info->u.hvm.apic;
+    va_hvm->nr_vcpus = info->max_vcpus;
+    memcpy(va_hvm->vcpu_online, &info->cur_vcpus, sizeof(info->cur_vcpus));
+    for (i = 0, sum = 0; i < va_hvm->length; i++)
+        sum += ((uint8_t *) va_hvm)[i];
+    va_hvm->checksum -= sum;
+    munmap(va_map, XC_PAGE_SIZE);
+
+    xc_get_hvm_param(handle, domid, HVM_PARAM_STORE_PFN, store_mfn);
+    xc_get_hvm_param(handle, domid, HVM_PARAM_CONSOLE_PFN, console_mfn);
+    xc_set_hvm_param(handle, domid, HVM_PARAM_PAE_ENABLED, info->u.hvm.pae);
+#if defined(__i386__) || defined(__x86_64__)
+    xc_set_hvm_param(handle, domid, HVM_PARAM_VIRIDIAN, info->u.hvm.viridian);
+    xc_set_hvm_param(handle, domid, HVM_PARAM_HPET_ENABLED, (unsigned long) 
info->u.hvm.hpet);
+#endif
+    xc_set_hvm_param(handle, domid, HVM_PARAM_TIMER_MODE, (unsigned long) 
info->u.hvm.timer_mode);
+    xc_set_hvm_param(handle, domid, HVM_PARAM_VPT_ALIGN, (unsigned long) 
info->u.hvm.vpt_align);
+    xc_set_hvm_param(handle, domid, HVM_PARAM_STORE_EVTCHN, store_evtchn);
+    xc_set_hvm_param(handle, domid, HVM_PARAM_CONSOLE_EVTCHN, console_evtchn);
+    return 0;
+}
+
 int libxl__build_hvm(libxl_ctx *ctx, uint32_t domid,
               libxl_domain_build_info *info, libxl_domain_build_state *state)
 {
diff -r d6663c62524a -r bd331cd1e704 tools/libxl/libxl_internal.h
--- a/tools/libxl/libxl_internal.h      Wed Sep 08 16:46:27 2010 +0100
+++ b/tools/libxl/libxl_internal.h      Wed Sep 08 16:47:32 2010 +0100
@@ -180,12 +180,6 @@ _hidden int libxl__wait_for_device_model
                                                       void *userdata),
                                 void *check_callback_userdata);
 _hidden int libxl__wait_for_backend(libxl_ctx *ctx, char *be_path, char 
*state);
-
-/* from xenguest (helper */
-_hidden int hvm_build_set_params(xc_interface *handle, uint32_t domid,
-                         libxl_domain_build_info *info,
-                         int store_evtchn, unsigned long *store_mfn,
-                         int console_evtchn, unsigned long *console_mfn);
 
 /* xl_exec */
 

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

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] libxl: move hvm_build_set_params to libxl_dom.c, Xen patchbot-unstable <=