[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 39/40] xenner: integrate into xen pv machine
From: |
Alexander Graf |
Subject: |
[Qemu-devel] [PATCH 39/40] xenner: integrate into xen pv machine |
Date: |
Tue, 2 Nov 2010 17:26:25 +0100 |
For native Xen support, we already have a xen machine description. This one
doesn't really know too much about xenner yet though, so we need to teach it.
This patch adds support for xenner in the xen pv machine description.
Signed-off-by: Alexander Graf <address@hidden>
---
hw/xen_backend.h | 1 +
hw/xen_machine_pv.c | 16 ++++++++++++++--
2 files changed, 15 insertions(+), 2 deletions(-)
diff --git a/hw/xen_backend.h b/hw/xen_backend.h
index f53a742..f6fc5f3 100644
--- a/hw/xen_backend.h
+++ b/hw/xen_backend.h
@@ -2,6 +2,7 @@
#define QEMU_HW_XEN_BACKEND_H 1
#include "xen_common.h"
+#include "xen_redirect.h"
#include "sysemu.h"
#include "net.h"
#include "qdev.h"
diff --git a/hw/xen_machine_pv.c b/hw/xen_machine_pv.c
index 6f2666d..6611011 100644
--- a/hw/xen_machine_pv.c
+++ b/hw/xen_machine_pv.c
@@ -29,6 +29,7 @@
#include "xen_backend.h"
#include "xen_domainbuild.h"
#include "blockdev.h"
+#include "xenner.h"
static void create_dummy_env(const char *cpu_model)
{
@@ -57,12 +58,14 @@ static void xen_init_pv(ram_addr_t ram_size,
int i;
/* Initialize backend core & drivers */
+ xen_interfaces_init();
if (xen_be_init() != 0) {
fprintf(stderr, "%s: xen backend core setup failed\n", __FUNCTION__);
exit(1);
}
switch (xen_mode) {
+#ifdef CONFIG_XEN
case XEN_ATTACH:
create_dummy_env(cpu_model);
/* nothing to do, xend handles everything */
@@ -75,9 +78,18 @@ static void xen_init_pv(ram_addr_t ram_size,
exit(1);
}
break;
+#endif
+#ifdef CONFIG_XENNER
case XEN_EMULATE:
- fprintf(stderr, "xen emulation not implemented (yet)\n");
- exit(1);
+ if (xenner_init_pv(kernel_filename, kernel_cmdline,
+ initrd_filename) < 0) {
+ fprintf(stderr, "xenner pv domain creation failed\n");
+ exit(1);
+ }
+ break;
+#endif
+ default:
+ /* not reached, xen_interfaces_init() catches this already */
break;
}
--
1.6.0.2
- [Qemu-devel] [PATCH 15/40] xenner: kernel: lapic code, (continued)
- [Qemu-devel] [PATCH 15/40] xenner: kernel: lapic code, Alexander Graf, 2010/11/01
- [Qemu-devel] [PATCH 27/40] xenner: add xc_dom.h, Alexander Graf, 2010/11/01
- [Qemu-devel] [PATCH 34/40] xenner: PV machine, Alexander Graf, 2010/11/01
- [Qemu-devel] [PATCH 32/40] xenner: emudev, Alexander Graf, 2010/11/01
- [Qemu-devel] [PATCH 18/40] xenner: kernel: Main, Alexander Graf, 2010/11/01
- [Qemu-devel] [PATCH 21/40] xenner: kernel: mmu support for 32-bit normal, Alexander Graf, 2010/11/01
- [Qemu-devel] [PATCH 23/40] xenner: kernel: generic MM functionality, Alexander Graf, 2010/11/01
- Re: [Qemu-devel] [PATCH 00/40] RFC: Xenner, Alexander Graf, 2010/11/01
- [Qemu-devel] [PATCH 36/40] xen: only create dummy env when necessary, Alexander Graf, 2010/11/02
- [Qemu-devel] [PATCH 38/40] xenner: integrate into build system, Alexander Graf, 2010/11/02
- [Qemu-devel] [PATCH 39/40] xenner: integrate into xen pv machine,
Alexander Graf <=
- [Qemu-devel] [PATCH 40/40] xen: add sysrq support, Alexander Graf, 2010/11/02