Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-12-SP2:GA
xen.7653
qemu-xen-upstream-hvm-pv-support.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File qemu-xen-upstream-hvm-pv-support.patch of Package xen.7653
--- tools/qemu-xen-dir-remote/hw/i386/xen/xen_platform.c | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) --- a/tools/qemu-xen-dir-remote/hw/i386/xen/xen_platform.c +++ b/tools/qemu-xen-dir-remote/hw/i386/xen/xen_platform.c @@ -312,6 +312,28 @@ static void xen_platform_ioport_writeb(v case 0: /* Platform flags */ platform_fixed_ioport_writeb(opaque, 0, (uint32_t)val); break; + case 4: + if (val == 1 && size == 1) { + /* + * SUSE unplug for Xenlinux + * xen-kmp used this since xen-3.0.4, instead the official protocol from xen-3.3+ + * It did an unconditional "outl(1, (ioaddr + 4));" + * This approach was used until openSUSE 12.3, up to SLE11SP3 and in SLE10. + * Starting with openSUSE 13.1, SLE11SP4 and SLE12 the official protocol is used. + * pre VMDP 1.7 made use of 4 and 8 depending on how vmdp was configured. + * If VMDP was to control both disk and LAN it would use 4. + * If it controlled just disk or just LAN, it would use 8 below. + */ + PCIDevice *pci_dev = PCI_DEVICE(s); + DPRINTF("unplug disks\n"); + bdrv_drain_all(); + bdrv_flush_all(); + pci_unplug_disks(pci_dev->bus); + DPRINTF("unplug nics\n"); + pci_unplug_nics(pci_dev->bus); + DPRINTF("done\n"); + } + break; case 8: log_writeb(s, (uint32_t)val); break;
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor