|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v7 6/8] libxl: Introduce libxl__arch_domain_create (x86 version)
Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
Acked-by: Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx>
Acked-by: Ian Campbell <Ian.Campbell@xxxxxxxxxx>
---
tools/libxl/Makefile | 2 +-
tools/libxl/libxl_create.c | 12 ++----------
tools/libxl/libxl_x86.c | 19 +++++++++++++++++++
3 files changed, 22 insertions(+), 11 deletions(-)
create mode 100644 tools/libxl/libxl_x86.c
diff --git a/tools/libxl/Makefile b/tools/libxl/Makefile
index 6ba4cf0..8ac8674 100644
--- a/tools/libxl/Makefile
+++ b/tools/libxl/Makefile
@@ -34,7 +34,7 @@ LIBXL_OBJS-y += libxl_blktap2.o
else
LIBXL_OBJS-y += libxl_noblktap2.o
endif
-LIBXL_OBJS-$(CONFIG_X86) += libxl_cpuid.o libxl_noarch.o
+LIBXL_OBJS-$(CONFIG_X86) += libxl_cpuid.o libxl_x86.o
LIBXL_OBJS-$(CONFIG_IA64) += libxl_nocpuid.o libxl_noarch.o
LIBXL_OBJS-$(CONFIG_ARM) += libxl_nocpuid.o libxl_noarch.o
diff --git a/tools/libxl/libxl_create.c b/tools/libxl/libxl_create.c
index 14721eb..2637222 100644
--- a/tools/libxl/libxl_create.c
+++ b/tools/libxl/libxl_create.c
@@ -18,6 +18,7 @@
#include "libxl_osdeps.h" /* must come before any other headers */
#include "libxl_internal.h"
+#include "libxl_arch.h"
#include <xc_dom.h>
#include <xenguest.h>
@@ -820,16 +821,7 @@ static void domcreate_devmodel_started(libxl__egc *egc,
}
}
- if (d_config->c_info.type == LIBXL_DOMAIN_TYPE_PV &&
- libxl_defbool_val(d_config->b_info.u.pv.e820_host)) {
- ret = libxl__e820_alloc(gc, domid, d_config);
- if (ret) {
- LIBXL__LOG_ERRNO(ctx, LIBXL__LOG_ERROR,
- "Failed while collecting E820 with: %d (errno:%d)\n",
- ret, errno);
- goto error_out;
- }
- }
+ libxl__arch_domain_create(gc, d_config, domid);
domcreate_console_available(egc, dcs);
domcreate_complete(egc, dcs, 0);
diff --git a/tools/libxl/libxl_x86.c b/tools/libxl/libxl_x86.c
new file mode 100644
index 0000000..7e28504
--- /dev/null
+++ b/tools/libxl/libxl_x86.c
@@ -0,0 +1,19 @@
+#include "libxl_internal.h"
+#include "libxl_arch.h"
+
+int libxl__arch_domain_create(libxl__gc *gc, libxl_domain_config *d_config,
+ uint32_t domid)
+{
+ int ret = 0;
+ if (d_config->c_info.type == LIBXL_DOMAIN_TYPE_PV &&
+ libxl_defbool_val(d_config->b_info.u.pv.e820_host)) {
+ ret = libxl__e820_alloc(gc, domid, d_config);
+ if (ret) {
+ LIBXL__LOG_ERRNO(gc->owner, LIBXL__LOG_ERROR,
+ "Failed while collecting E820 with: %d (errno:%d)\n",
+ ret, errno);
+ }
+ }
+
+ return ret;
+}
--
1.7.2.5
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |