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

[Xen-devel] [PATCH 3 of 4] libxl: move hvm_build_set_params to libxl_dom

To: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] [PATCH 3 of 4] libxl: move hvm_build_set_params to libxl_dom.c
From: Ian Campbell <ian.campbell@xxxxxxxxxx>
Date: Tue, 07 Sep 2010 11:07:55 +0100
Cc: Ian Campbell <ian.campbell@xxxxxxxxxx>
Delivery-date: Tue, 07 Sep 2010 03:11:54 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <patchbomb.1283854072@xxxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Ian Campbell <ian.campbell@xxxxxxxxxx>
# Date 1283853891 -3600
# Node ID 60cfaa1f0101d52a04f0b4d869bd6e0d5f1c74d5
# Parent  f5372f2ac680ab1bd686499f4a9bdbc288629db1
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>

diff -r f5372f2ac680 -r 60cfaa1f0101 tools/libxl/Makefile
--- a/tools/libxl/Makefile      Tue Sep 07 11:04:50 2010 +0100
+++ b/tools/libxl/Makefile      Tue Sep 07 11:04:51 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 f5372f2ac680 -r 60cfaa1f0101 tools/libxl/libxl_dom.c
--- a/tools/libxl/libxl_dom.c   Tue Sep 07 11:04:50 2010 +0100
+++ b/tools/libxl/libxl_dom.c   Tue Sep 07 11:04:51 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"
@@ -214,6 +217,45 @@ out:
 out:
     xc_dom_release(dom);
     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,
diff -r f5372f2ac680 -r 60cfaa1f0101 tools/libxl/libxl_internal.h
--- a/tools/libxl/libxl_internal.h      Tue Sep 07 11:04:50 2010 +0100
+++ b/tools/libxl/libxl_internal.h      Tue Sep 07 11:04:51 2010 +0100
@@ -181,12 +181,6 @@ _hidden int libxl__wait_for_device_model
                                 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 */
 
  /* higher-level double-fork and separate detach eg as for device models */
diff -r f5372f2ac680 -r 60cfaa1f0101 tools/libxl/xenguest.c
--- a/tools/libxl/xenguest.c    Tue Sep 07 11:04:50 2010 +0100
+++ /dev/null   Thu Jan 01 00:00:00 1970 +0000
@@ -1,62 +0,0 @@
-/*
- * Copyright (C) 2009      Citrix Ltd.
- * Author Vincent Hanquez <vincent.hanquez@xxxxxxxxxxxxx>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published
- * by the Free Software Foundation; version 2.1 only. with the special
- * exception on linking described in file LICENSE.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- */
-
-#include <xenctrl.h>
-#include <xenguest.h>
-#include <sys/mman.h>
-#include <xen/hvm/hvm_info_table.h>
-#include <string.h>
-
-#include "libxl.h"
-#include "libxl_internal.h"
-
-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;
-}

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