fe31f9be81
do not understand the new PV driver protocol. - Upstream Xen version renamed to 4.0.0 in changeset 20624 & 20625. - fate#307594: HP-MCBS: XEN: support NR_CPUS=256 This is a spec file change (xen.spec) - bnc#555152 - "NAME" column in xentop (SLES11) output limited to 10 characters unlike SLES10 The update to c/s 20572 includes this fix (at c/s 20567). - Modify xen-paths.diff - Merge xend-tap-fix.patch to xen-domUloader.diff remove part of it which accepted by upstream - Load gntdev module in xend init script similar to blkbk, netbk, etc. - Backport dmmd from sles11/xen block-dmmd xen-qemu-iscsi-fix.patch xen.spec - Fix regression when create_vbd for tap xend-tap-fix.patch - Temporarily disable libxl because of libconfig dependency. - fate#302864 domUloader support lvm in disk domUloader.py Note: for test in Beta1, if not good, remove it - fate#302864 domUloader support fs on whole disk domUloader.py - Turn KMPs back on now that kernel side fix is checked in. - fate#304415 VMM: ability to switch networking mode Add vif-route-ifup to handle routed configurations using sysconfig scripts. vif-route-ifup.patch - fate#307540 USB for Xen VMs usb-add.patch - fate#305545 XEN extra descriptive field within xenstore add_des.patch - Update to Xen version 3.5.0 for the following features. fate#304226 XEN: FlexMigration feature of VT-x2 support fate#305004 Add SR-IOV PF and VF drivers to Vt-d enabled Xen fate#306830 T states in Xen controlling by MSR fate#306832 Fix for xen panic on new processors fate#306833 Westmere and Nehalem-EX: Add support for Pause Loop exiting feature for Xen fate#306835 Xen: server virtual power management enhacement fate#306837 VT-d2 - PCI SIG ATS support fate#306872 Xen: Node manager support P/T-states change when Vt-d enable fate#306873 Xen: SMP guest live migration may fail with hap=1 on NHM fate#306875 Westmere: LT-SX (Xen) fate#306891 RAS features for Xen: Add support for Machine Check and CPU/Memory online/offline features fate#307322 1GB page support in Xen fate#307324 Xen IOMMU support OBS-URL: https://build.opensuse.org/package/show/Virtualization/xen?expand=0&rev=26
66 lines
2.0 KiB
Diff
66 lines
2.0 KiB
Diff
Index: xen-4.0.0-testing/tools/ioemu-remote/hw/xen_platform.c
|
|
===================================================================
|
|
--- xen-4.0.0-testing.orig/tools/ioemu-remote/hw/xen_platform.c
|
|
+++ xen-4.0.0-testing/tools/ioemu-remote/hw/xen_platform.c
|
|
@@ -30,6 +30,8 @@
|
|
#include "qemu-xen.h"
|
|
#include "net.h"
|
|
#include "xen_platform.h"
|
|
+#include "sysemu.h"
|
|
+#include <xc_private.h>
|
|
|
|
#include <assert.h>
|
|
#include <xenguest.h>
|
|
@@ -335,11 +337,51 @@ static void xen_platform_ioport_writeb(v
|
|
}
|
|
}
|
|
|
|
+static uint32_t ioport_base;
|
|
+
|
|
+static void platform_ioport_write(void *opaque, uint32_t addr, uint32_t val)
|
|
+{
|
|
+ DECLARE_DOMCTL;
|
|
+ int rc;
|
|
+
|
|
+ if (val == 0)
|
|
+ qemu_invalidate_map_cache();
|
|
+
|
|
+ switch (addr - ioport_base) {
|
|
+ case 0:
|
|
+ fprintf(logfile, "Init hypercall page %x, addr %x.\n", val, addr);
|
|
+ domctl.domain = (domid_t)domid;
|
|
+ domctl.u.hypercall_init.gmfn = val;
|
|
+ domctl.cmd = XEN_DOMCTL_hypercall_init;
|
|
+ rc = xc_domctl(xc_handle, &domctl);
|
|
+ fprintf(logfile, "result -> %d.\n", rc);
|
|
+ break;
|
|
+ case 4:
|
|
+ fprintf(logfile, "Disconnect IDE hard disk...\n");
|
|
+ ide_unplug_harddisks();
|
|
+ fprintf(logfile, "Disconnect netifs...\n");
|
|
+ pci_unplug_netifs();
|
|
+ fprintf(logfile, "Shutdown taps...\n");
|
|
+ net_tap_shutdown_all();
|
|
+ fprintf(logfile, "Done.\n");
|
|
+ break;
|
|
+ default:
|
|
+ fprintf(logfile, "Write to bad port %x (base %x) on evtchn device.\n",
|
|
+ addr, ioport_base);
|
|
+ break;
|
|
+ }
|
|
+}
|
|
+
|
|
static void platform_ioport_map(PCIDevice *pci_dev, int region_num, uint32_t addr, uint32_t size, int type)
|
|
{
|
|
+ ioport_base = addr;
|
|
+
|
|
+ register_ioport_write(addr, 16, 4, platform_ioport_write, NULL);
|
|
+/*
|
|
PCIXenPlatformState *d = (PCIXenPlatformState *)pci_dev;
|
|
register_ioport_write(addr, size, 1, xen_platform_ioport_writeb, d);
|
|
register_ioport_read(addr, size, 1, xen_platform_ioport_readb, d);
|
|
+*/
|
|
}
|
|
|
|
static uint32_t platform_mmio_read(void *opaque, target_phys_addr_t addr)
|