# HG changeset patch
# User chris@xxxxxxxxxxxxxxxxxxxxxxxx
# Node ID ec8dd0528fc69fc643268493d5a3d722a5650cd7
# Parent 06e2a95d33952a03c8b2d2b665b325c4d2343de0
[qemu patches] Update patches for changesets 10957:08a11694b109 -
10959:06e2a95d3395.
Signed-off-by: Christian Limpach <Christian.Limpach@xxxxxxxxxxxxx>
---
tools/ioemu/patches/acpi-poweroff-support | 8 -
tools/ioemu/patches/acpi-support | 129 ++++++-----------
tools/ioemu/patches/acpi-timer-support | 2
tools/ioemu/patches/domain-destroy | 21 +-
tools/ioemu/patches/domain-reset | 12 -
tools/ioemu/patches/domain-timeoffset | 40 ++---
tools/ioemu/patches/hypervisor-pit | 18 +-
tools/ioemu/patches/ide-hd-multithread | 24 +--
tools/ioemu/patches/ioemu-ia64 | 21 +-
tools/ioemu/patches/qemu-64bit | 28 +--
tools/ioemu/patches/qemu-allow-disable-sdl | 6
tools/ioemu/patches/qemu-bugfixes | 25 ---
tools/ioemu/patches/qemu-cleanup | 22 +-
tools/ioemu/patches/qemu-dm | 126 ++++++++--------
tools/ioemu/patches/qemu-fix-memset-args | 4
tools/ioemu/patches/qemu-fix-write-to-disk-synchronous | 14 -
tools/ioemu/patches/qemu-hvm-banner | 4
tools/ioemu/patches/qemu-init-vgabios | 6
tools/ioemu/patches/qemu-logging | 28 +--
tools/ioemu/patches/qemu-no-apic | 16 +-
tools/ioemu/patches/qemu-nobios | 19 +-
tools/ioemu/patches/qemu-smp | 20 +-
tools/ioemu/patches/qemu-target-i386-dm | 48 ++----
tools/ioemu/patches/qemu-timer | 14 -
tools/ioemu/patches/serial-non-block | 4
tools/ioemu/patches/series | 1
tools/ioemu/patches/shadow-vram | 12 -
tools/ioemu/patches/shared-vram | 26 +--
tools/ioemu/patches/support-xm-console | 6
tools/ioemu/patches/vnc-access-monitor-vt | 16 +-
tools/ioemu/patches/vnc-cleanup | 19 +-
tools/ioemu/patches/vnc-fixes | 101 +++++++++----
tools/ioemu/patches/vnc-start-vncviewer | 46 +++---
tools/ioemu/patches/vnc-title-domain-name | 6
tools/ioemu/patches/xen-build | 57 ++++---
tools/ioemu/patches/xen-domain-name | 30 +--
tools/ioemu/patches/xen-domid | 18 +-
tools/ioemu/patches/xen-mm | 27 +--
tools/ioemu/patches/xen-network | 12 -
tools/ioemu/patches/xenstore-block-device-config | 75 ++++-----
tools/ioemu/patches/xenstore-write-vnc-port | 10 -
41 files changed, 557 insertions(+), 564 deletions(-)
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/acpi-poweroff-support
--- a/tools/ioemu/patches/acpi-poweroff-support Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/acpi-poweroff-support Mon Aug 07 18:28:50 2006 +0100
@@ -1,10 +1,10 @@ Index: ioemu/hw/piix4acpi.c
Index: ioemu/hw/piix4acpi.c
===================================================================
---- ioemu.orig/hw/piix4acpi.c 2006-07-12 11:35:03.574468946 +0100
-+++ ioemu/hw/piix4acpi.c 2006-07-12 11:35:03.631461806 +0100
+--- ioemu.orig/hw/piix4acpi.c 2006-08-06 02:30:29.288761563 +0100
++++ ioemu/hw/piix4acpi.c 2006-08-06 02:30:42.131331446 +0100
@@ -45,6 +45,10 @@
#define GBL_RLS (1 << 2)
- #define SLP_EN (1 << 13)
+ #define SLP_EN (1 << 13)
+/* Bits of PM1a register define here */
+#define SLP_TYP_MASK 0x1C00
@@ -13,7 +13,7 @@ Index: ioemu/hw/piix4acpi.c
typedef struct AcpiDeviceState AcpiDeviceState;
AcpiDeviceState *acpi_device_table;
-@@ -270,7 +274,14 @@
+@@ -190,7 +194,14 @@
s->pm1_control = (val<<8)||(s->pm1_control);
/* printf("acpiPm1ControlP1_writeb \n addr %x val:%x\n", addr, val); */
@@ -29,7 +29,7 @@ Index: ioemu/hw/piix4acpi.c
static uint32_t acpiPm1ControlP1_readb(void *opaque, uint32_t addr)
{
-@@ -337,7 +348,14 @@
+@@ -257,7 +268,14 @@
s->pm1_control = val;
/* printf("acpiPm1Control_writew \n addr %x val:%x\n", addr, val); */
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/acpi-support
--- a/tools/ioemu/patches/acpi-support Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/acpi-support Mon Aug 07 18:28:50 2006 +0100
@@ -1,94 +1,50 @@ Index: ioemu/Makefile.target
Index: ioemu/Makefile.target
===================================================================
---- ioemu.orig/Makefile.target 2006-08-03 19:19:39.000000000 +0100
-+++ ioemu/Makefile.target 2006-08-04 10:35:36.445703379 +0100
-@@ -335,6 +335,7 @@
- VL_OBJS+= ide.o pckbd.o ps2.o vga.o $(SOUND_HW) dma.o $(AUDIODRV)
+--- ioemu.orig/Makefile.target 2006-08-06 02:23:23.000000000 +0100
++++ ioemu/Makefile.target 2006-08-07 17:38:47.698306442 +0100
+@@ -357,6 +357,7 @@
VL_OBJS+= fdc.o mc146818rtc.o serial.o pc.o
- VL_OBJS+= cirrus_vga.o mixeng.o parallel.o
+ VL_OBJS+= cirrus_vga.o mixeng.o parallel.o acpi.o piix_pci.o
+ VL_OBJS+= usb-uhci.o
+VL_OBJS+= piix4acpi.o
DEFINES += -DHAS_AUDIO
endif
ifeq ($(TARGET_BASE_ARCH), ppc)
Index: ioemu/hw/pc.c
===================================================================
---- ioemu.orig/hw/pc.c 2006-08-03 19:19:39.000000000 +0100
-+++ ioemu/hw/pc.c 2006-08-04 10:38:05.559415853 +0100
-@@ -566,6 +566,9 @@
+--- ioemu.orig/hw/pc.c 2006-08-06 02:23:45.000000000 +0100
++++ ioemu/hw/pc.c 2006-08-07 17:42:00.939426374 +0100
+@@ -572,6 +572,9 @@
static int parallel_io[MAX_PARALLEL_PORTS] = { 0x378, 0x278, 0x3bc };
static int parallel_irq[MAX_PARALLEL_PORTS] = { 7, 7, 7 };
+/* PIIX4 acpi pci configuration space, func 3 */
-+extern void pci_piix4_acpi_init(PCIBus *bus);
++extern void pci_piix4_acpi_init(PCIBus *bus, int devfn);
+
#ifdef HAS_AUDIO
static void audio_init (PCIBus *pci_bus)
{
-@@ -867,6 +870,10 @@
+@@ -874,11 +877,15 @@
cmos_init(ram_size, boot_device, bs_table, timeoffset);
+ /* using PIIX4 acpi model */
+ if (pci_enabled && acpi_enabled)
-+ pci_piix4_acpi_init(pci_bus);
++ pci_piix4_acpi_init(pci_bus, piix3_devfn + 3);
+
if (pci_enabled && usb_enabled) {
- usb_uhci_init(pci_bus, usb_root_ports);
- usb_attach(usb_root_ports[0], vm_usb_hub);
-Index: ioemu/hw/pci.c
-===================================================================
---- ioemu.orig/hw/pci.c 2006-08-03 19:19:35.000000000 +0100
-+++ ioemu/hw/pci.c 2006-08-03 19:19:39.000000000 +0100
-@@ -1697,7 +1697,7 @@
- static uint32_t pci_bios_io_addr;
- static uint32_t pci_bios_mem_addr;
- /* host irqs corresponding to PCI irqs A-D */
--static uint8_t pci_irqs[4] = { 11, 9, 11, 9 };
-+static uint8_t pci_irqs[4] = { 10, 11, 10, 11 };
-
- static void pci_set_io_region_addr(PCIDevice *d, int region_num, uint32_t
addr)
- {
-@@ -1750,12 +1750,22 @@
- pci_set_io_region_addr(d, 3, 0x374);
- }
- break;
-+ case 0x0680:
-+ if (vendor_id == 0x8086 && device_id == 0x7113) {
-+ // PIIX4 ACPI PM
-+ pci_config_writew(d, 0x20, 0x0000); // NO smb bus IO enable in PIIX4
-+ pci_config_writew(d, 0x22, 0x0000);
-+ goto default_map;
-+ }
-+ break;
-+
- case 0x0300:
- if (vendor_id != 0x1234)
- goto default_map;
- /* VGA: map frame buffer to default Bochs VBE address */
- pci_set_io_region_addr(d, 0, 0xE0000000);
- break;
-+
- case 0x0800:
- /* PIC */
- vendor_id = pci_config_readw(d, PCI_VENDOR_ID);
-@@ -1800,6 +1810,13 @@
- pic_irq = pci_irqs[pin];
- pci_config_writeb(d, PCI_INTERRUPT_LINE, pic_irq);
+ usb_uhci_init(pci_bus, piix3_devfn + 2);
}
-+ if (class== 0x0680&& vendor_id == 0x8086 && device_id == 0x7113) {
-+ // PIIX4 ACPI PM
-+ pci_config_writew(d, 0x20, 0x0000); // NO smb bus IO enable in PIIX4
-+ pci_config_writew(d, 0x22, 0x0000);
-+ pci_config_writew(d, 0x3c, 0x0009); // Hardcodeed IRQ9
-+ pci_config_writew(d, 0x3d, 0x0001);
-+ }
- }
-
- /*
+
+- if (pci_enabled && acpi_enabled) {
++ if (pci_enabled && acpi_enabled && 0) {
+ piix4_pm_init(pci_bus, piix3_devfn + 3);
+ }
+
Index: ioemu/hw/piix4acpi.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ ioemu/hw/piix4acpi.c 2006-08-04 10:35:36.762666604 +0100
++++ ioemu/hw/piix4acpi.c 2006-08-07 17:41:41.932577728 +0100
@@ -0,0 +1,388 @@
+/*
+ * PIIX4 ACPI controller emulation
@@ -450,7 +406,7 @@ Index: ioemu/hw/piix4acpi.c
+
+
+/* PIIX4 acpi pci configuration space, func 3 */
-+void pci_piix4_acpi_init(PCIBus *bus)
++void pci_piix4_acpi_init(PCIBus *bus, int devfn)
+{
+ PCIAcpiState *d;
+ uint8_t *pci_conf;
@@ -458,7 +414,7 @@ Index: ioemu/hw/piix4acpi.c
+ /* register a function 3 of PIIX4 */
+ d = (PCIAcpiState *)pci_register_device(
+ bus, "PIIX4 ACPI", sizeof(PCIAcpiState),
-+ ((PCIDevice *)piix3_state)->devfn + 3, NULL, NULL);
++ devfn, NULL, NULL);
+
+ acpi_state = d;
+ pci_conf = d->dev.config;
@@ -480,18 +436,18 @@ Index: ioemu/hw/piix4acpi.c
+}
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-08-04 10:35:36.697674145 +0100
-+++ ioemu/vl.c 2006-08-04 10:37:38.001608828 +0100
-@@ -166,6 +166,8 @@
-
- time_t timeoffset = 0;
-
+--- ioemu.orig/vl.c 2006-08-06 02:23:45.000000000 +0100
++++ ioemu/vl.c 2006-08-07 17:41:40.613727012 +0100
+@@ -156,7 +156,7 @@
+ #else
+ #define MAX_CPUS 1
+ #endif
+-int acpi_enabled = 1;
+int acpi_enabled = 0;
-+
- char domain_name[1024] = { 'H','V', 'M', 'X', 'E', 'N', '-'};
- extern int domid;
-
-@@ -4803,6 +4805,7 @@
+ int fd_bootchk = 1;
+
+ extern int vcpus;
+@@ -5341,6 +5341,7 @@
"-loadvm file start right away with a saved state (loadvm in
monitor)\n"
"-vnc display start a VNC server on display\n"
"-timeoffset time offset (in seconds) from local time\n"
@@ -499,7 +455,7 @@ Index: ioemu/vl.c
"\n"
"During emulation, the following keys are useful:\n"
"ctrl-alt-f toggle full screen\n"
-@@ -4894,6 +4897,7 @@
+@@ -5426,6 +5427,7 @@
QEMU_OPTION_d,
QEMU_OPTION_vcpus,
QEMU_OPTION_timeoffset,
@@ -507,7 +463,7 @@ Index: ioemu/vl.c
};
typedef struct QEMUOption {
-@@ -4973,6 +4977,7 @@
+@@ -5509,6 +5511,7 @@
{ "d", HAS_ARG, QEMU_OPTION_d },
{ "vcpus", 1, QEMU_OPTION_vcpus },
{ "timeoffset", HAS_ARG, QEMU_OPTION_timeoffset },
@@ -515,7 +471,7 @@ Index: ioemu/vl.c
{ NULL },
};
-@@ -5678,6 +5683,9 @@
+@@ -6256,6 +6259,9 @@
case QEMU_OPTION_timeoffset:
timeoffset = strtol(optarg, NULL, 0);
break;
@@ -527,9 +483,9 @@ Index: ioemu/vl.c
}
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2006-08-04 10:35:36.629682033 +0100
-+++ ioemu/vl.h 2006-08-04 10:36:21.513475699 +0100
-@@ -159,6 +159,7 @@
+--- ioemu.orig/vl.h 2006-08-06 02:23:45.000000000 +0100
++++ ioemu/vl.h 2006-08-07 17:38:47.847289567 +0100
+@@ -167,6 +167,7 @@
extern int kqemu_allowed;
extern int win2k_install_hack;
extern int usb_enabled;
@@ -537,3 +493,46 @@ Index: ioemu/vl.h
extern int smp_cpus;
/* XXX: make it dynamic */
+Index: ioemu/hw/piix_pci.c
+===================================================================
+--- ioemu.orig/hw/piix_pci.c 2006-08-06 02:29:41.000000000 +0100
++++ ioemu/hw/piix_pci.c 2006-08-07 17:38:57.480198468 +0100
+@@ -241,7 +241,7 @@
+ static uint32_t pci_bios_io_addr;
+ static uint32_t pci_bios_mem_addr;
+ /* host irqs corresponding to PCI irqs A-D */
+-static uint8_t pci_irqs[4] = { 11, 9, 11, 9 };
++static uint8_t pci_irqs[4] = { 10, 11, 10, 11 };
+
+ static void pci_config_writel(PCIDevice *d, uint32_t addr, uint32_t val)
+ {
+@@ -336,6 +336,14 @@
+ pci_set_io_region_addr(d, 3, 0x374);
+ }
+ break;
++ case 0x0680:
++ if (vendor_id == 0x8086 && device_id == 0x7113) {
++ /* PIIX4 ACPI PM */
++ pci_config_writew(d, 0x20, 0x0000); /* NO smb bus IO enable in
PIIX4 */
++ pci_config_writew(d, 0x22, 0x0000);
++ goto default_map;
++ }
++ break;
+ case 0x0300:
+ if (vendor_id != 0x1234)
+ goto default_map;
+@@ -386,6 +394,14 @@
+ pic_irq = pci_irqs[pin];
+ pci_config_writeb(d, PCI_INTERRUPT_LINE, pic_irq);
+ }
++
++ if (class== 0x0680&& vendor_id == 0x8086 && device_id == 0x7113) {
++ // PIIX4 ACPI PM
++ pci_config_writew(d, 0x20, 0x0000); // NO smb bus IO enable in PIIX4
++ pci_config_writew(d, 0x22, 0x0000);
++ pci_config_writew(d, 0x3c, 0x0009); // Hardcodeed IRQ9
++ pci_config_writew(d, 0x3d, 0x0001);
++ }
+ }
+
+ /*
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/acpi-timer-support
--- a/tools/ioemu/patches/acpi-timer-support Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/acpi-timer-support Mon Aug 07 18:28:50 2006 +0100
@@ -1,7 +1,7 @@ Index: ioemu/hw/piix4acpi.c
Index: ioemu/hw/piix4acpi.c
===================================================================
---- ioemu.orig/hw/piix4acpi.c 2006-08-04 10:57:28.922994985 +0100
-+++ ioemu/hw/piix4acpi.c 2006-08-04 11:35:15.177574467 +0100
+--- ioemu.orig/hw/piix4acpi.c 2006-08-06 02:24:54.262068457 +0100
++++ ioemu/hw/piix4acpi.c 2006-08-06 02:30:29.288761563 +0100
@@ -24,31 +24,30 @@
*/
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/domain-destroy
--- a/tools/ioemu/patches/domain-destroy Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/domain-destroy Mon Aug 07 18:28:50 2006 +0100
@@ -1,7 +1,8 @@ diff -r e1dce5114e92 monitor.c
-diff -r e1dce5114e92 monitor.c
---- a/monitor.c Mon Jun 26 16:04:15 2006 +0100
-+++ b/monitor.c Mon Jun 26 16:04:26 2006 +0100
-@@ -306,6 +306,7 @@ static void do_info_history (void)
+Index: ioemu/monitor.c
+===================================================================
+--- ioemu.orig/monitor.c 2006-08-06 02:22:01.487319736 +0100
++++ ioemu/monitor.c 2006-08-06 02:23:02.269544103 +0100
+@@ -308,6 +308,7 @@
static void do_quit(void)
{
@@ -9,10 +10,11 @@ diff -r e1dce5114e92 monitor.c
exit(0);
}
-diff -r e1dce5114e92 target-i386-dm/helper2.c
---- a/target-i386-dm/helper2.c Mon Jun 26 16:04:15 2006 +0100
-+++ b/target-i386-dm/helper2.c Mon Jun 26 16:04:26 2006 +0100
-@@ -483,5 +483,25 @@ int main_loop(void)
+Index: ioemu/target-i386-dm/helper2.c
+===================================================================
+--- ioemu.orig/target-i386-dm/helper2.c 2006-08-06 02:22:59.251880493
+0100
++++ ioemu/target-i386-dm/helper2.c 2006-08-06 02:23:02.270543991 +0100
+@@ -483,5 +483,25 @@
shared_page->vcpu_iodata[send_vcpu].dm_eport);
}
}
@@ -38,10 +40,11 @@ diff -r e1dce5114e92 target-i386-dm/help
+ xc_interface_close(xcHandle);
+ }
+}
-diff -r e1dce5114e92 vl.h
---- a/vl.h Mon Jun 26 16:04:15 2006 +0100
-+++ b/vl.h Mon Jun 26 16:04:26 2006 +0100
-@@ -1098,4 +1098,7 @@ void kqemu_record_dump(void);
+Index: ioemu/vl.h
+===================================================================
+--- ioemu.orig/vl.h 2006-08-06 02:22:59.255880047 +0100
++++ ioemu/vl.h 2006-08-06 02:23:02.271543880 +0100
+@@ -1189,4 +1189,7 @@
void kqemu_record_dump(void);
extern char domain_name[];
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/domain-reset
--- a/tools/ioemu/patches/domain-reset Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/domain-reset Mon Aug 07 18:28:50 2006 +0100
@@ -1,7 +1,7 @@ Index: ioemu/target-i386-dm/helper2.c
Index: ioemu/target-i386-dm/helper2.c
===================================================================
---- ioemu.orig/target-i386-dm/helper2.c 2006-07-27 11:16:57.527492229
+0100
-+++ ioemu/target-i386-dm/helper2.c 2006-07-27 11:16:59.381287013 +0100
+--- ioemu.orig/target-i386-dm/helper2.c 2006-08-06 02:21:15.779415007
+0100
++++ ioemu/target-i386-dm/helper2.c 2006-08-06 02:22:59.251880493 +0100
@@ -123,6 +123,25 @@
/* called from main_cpu_reset */
void cpu_reset(CPUX86State *env)
@@ -41,9 +41,9 @@ Index: ioemu/target-i386-dm/helper2.c
/* Wait up to 10 msec. */
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-07-27 11:16:59.317294097 +0100
-+++ ioemu/vl.c 2006-07-27 11:16:59.384286681 +0100
-@@ -4412,7 +4412,7 @@
+--- ioemu.orig/vl.c 2006-08-06 02:22:56.618174081 +0100
++++ ioemu/vl.c 2006-08-06 02:22:59.254880158 +0100
+@@ -4948,7 +4948,7 @@
} QEMUResetEntry;
static QEMUResetEntry *first_reset_entry;
@@ -54,9 +54,9 @@ Index: ioemu/vl.c
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2006-07-27 11:16:58.127425816 +0100
-+++ ioemu/vl.h 2006-07-27 11:16:59.384286681 +0100
-@@ -122,6 +122,7 @@
+--- ioemu.orig/vl.h 2006-08-06 02:22:01.501318175 +0100
++++ ioemu/vl.h 2006-08-06 02:22:59.255880047 +0100
+@@ -130,6 +130,7 @@
void qemu_register_reset(QEMUResetHandler *func, void *opaque);
void qemu_system_reset_request(void);
@@ -64,7 +64,7 @@ Index: ioemu/vl.h
void qemu_system_shutdown_request(void);
void qemu_system_powerdown_request(void);
#if !defined(TARGET_SPARC)
-@@ -131,6 +132,8 @@
+@@ -139,6 +140,8 @@
void qemu_system_powerdown(void);
#endif
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/domain-timeoffset
--- a/tools/ioemu/patches/domain-timeoffset Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/domain-timeoffset Mon Aug 07 18:28:50 2006 +0100
@@ -1,7 +1,7 @@ Index: ioemu/hw/mc146818rtc.c
Index: ioemu/hw/mc146818rtc.c
===================================================================
---- ioemu.orig/hw/mc146818rtc.c 2006-08-04 10:57:22.049787220 +0100
-+++ ioemu/hw/mc146818rtc.c 2006-08-04 10:57:28.677023336 +0100
+--- ioemu.orig/hw/mc146818rtc.c 2006-08-07 17:44:43.593604340 +0100
++++ ioemu/hw/mc146818rtc.c 2006-08-07 17:44:47.594168708 +0100
@@ -178,10 +178,27 @@
}
}
@@ -46,9 +46,9 @@ Index: ioemu/hw/mc146818rtc.c
static void rtc_copy_date(RTCState *s)
Index: ioemu/hw/pc.c
===================================================================
---- ioemu.orig/hw/pc.c 2006-08-04 10:57:28.406054568 +0100
-+++ ioemu/hw/pc.c 2006-08-04 10:57:28.678023221 +0100
-@@ -151,7 +151,7 @@
+--- ioemu.orig/hw/pc.c 2006-08-07 17:44:47.324198106 +0100
++++ ioemu/hw/pc.c 2006-08-07 17:44:54.830380715 +0100
+@@ -159,7 +159,7 @@
}
/* hd_table must contain 4 block drivers */
@@ -57,7 +57,7 @@ Index: ioemu/hw/pc.c
{
RTCState *s = rtc_state;
int val;
-@@ -162,6 +162,7 @@
+@@ -170,6 +170,7 @@
/* set the CMOS date */
time(&ti);
@@ -65,7 +65,7 @@ Index: ioemu/hw/pc.c
if (rtc_utc)
tm = gmtime(&ti);
else
-@@ -613,7 +614,7 @@
+@@ -619,7 +620,7 @@
static void pc_init1(uint64_t ram_size, int vga_ram_size, int boot_device,
DisplayState *ds, const char **fd_filename, int snapshot,
const char *kernel_filename, const char *kernel_cmdline,
@@ -74,7 +74,7 @@ Index: ioemu/hw/pc.c
int pci_enabled)
{
#ifndef NOBIOS
-@@ -864,7 +865,7 @@
+@@ -871,7 +872,7 @@
floppy_controller = fdctrl_init(6, 2, 0, 0x3f0, fd_table);
@@ -82,8 +82,8 @@ Index: ioemu/hw/pc.c
+ cmos_init(ram_size, boot_device, bs_table, timeoffset);
if (pci_enabled && usb_enabled) {
- usb_uhci_init(pci_bus, usb_root_ports);
-@@ -883,12 +884,13 @@
+ usb_uhci_init(pci_bus, piix3_devfn + 2);
+@@ -912,12 +913,13 @@
int snapshot,
const char *kernel_filename,
const char *kernel_cmdline,
@@ -99,7 +99,7 @@ Index: ioemu/hw/pc.c
}
static void pc_init_isa(uint64_t ram_size, int vga_ram_size, int boot_device,
-@@ -896,12 +898,13 @@
+@@ -925,12 +927,13 @@
int snapshot,
const char *kernel_filename,
const char *kernel_cmdline,
@@ -117,9 +117,9 @@ Index: ioemu/hw/pc.c
QEMUMachine pc_machine = {
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-08-04 10:57:28.545038549 +0100
-+++ ioemu/vl.c 2006-08-04 10:57:28.680022990 +0100
-@@ -164,6 +164,8 @@
+--- ioemu.orig/vl.c 2006-08-07 17:44:47.464182863 +0100
++++ ioemu/vl.c 2006-08-07 17:44:54.830380715 +0100
+@@ -163,6 +163,8 @@
int xc_handle;
@@ -128,7 +128,7 @@ Index: ioemu/vl.c
char domain_name[1024] = { 'H','V', 'M', 'X', 'E', 'N', '-'};
extern int domid;
-@@ -4800,6 +4802,7 @@
+@@ -5338,6 +5340,7 @@
#endif
"-loadvm file start right away with a saved state (loadvm in
monitor)\n"
"-vnc display start a VNC server on display\n"
@@ -136,7 +136,7 @@ Index: ioemu/vl.c
"\n"
"During emulation, the following keys are useful:\n"
"ctrl-alt-f toggle full screen\n"
-@@ -4890,6 +4893,7 @@
+@@ -5422,6 +5425,7 @@
QEMU_OPTION_d,
QEMU_OPTION_vcpus,
@@ -144,7 +144,7 @@ Index: ioemu/vl.c
};
typedef struct QEMUOption {
-@@ -4968,6 +4972,7 @@
+@@ -5504,6 +5508,7 @@
{ "d", HAS_ARG, QEMU_OPTION_d },
{ "vcpus", 1, QEMU_OPTION_vcpus },
@@ -152,7 +152,7 @@ Index: ioemu/vl.c
{ NULL },
};
-@@ -5670,6 +5675,9 @@
+@@ -6248,6 +6253,9 @@
vcpus = atoi(optarg);
fprintf(logfile, "qemu: the number of cpus is %d\n", vcpus);
break;
@@ -162,7 +162,7 @@ Index: ioemu/vl.c
}
}
}
-@@ -6007,7 +6015,8 @@
+@@ -6489,7 +6497,8 @@
machine->init(ram_size, vga_ram_size, boot_device,
ds, fd_filename, snapshot,
@@ -170,13 +170,13 @@ Index: ioemu/vl.c
+ kernel_filename, kernel_cmdline, initrd_filename,
+ timeoffset);
- gui_timer = qemu_new_timer(rt_clock, gui_update, NULL);
- qemu_mod_timer(gui_timer, qemu_get_clock(rt_clock));
+ /* init USB devices */
+ if (usb_enabled) {
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2006-08-04 10:57:28.411053992 +0100
-+++ ioemu/vl.h 2006-08-04 10:57:28.681022875 +0100
-@@ -556,7 +556,7 @@
+--- ioemu.orig/vl.h 2006-08-07 17:44:47.329197562 +0100
++++ ioemu/vl.h 2006-08-07 17:44:54.830380715 +0100
+@@ -575,7 +575,7 @@
int boot_device,
DisplayState *ds, const char **fd_filename, int snapshot,
const char *kernel_filename, const char *kernel_cmdline,
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/hypervisor-pit
--- a/tools/ioemu/patches/hypervisor-pit Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/hypervisor-pit Mon Aug 07 18:28:50 2006 +0100
@@ -1,20 +1,20 @@ Index: ioemu/Makefile.target
Index: ioemu/Makefile.target
===================================================================
---- ioemu.orig/Makefile.target 2006-07-27 11:16:58.970332506 +0100
-+++ ioemu/Makefile.target 2006-07-27 11:16:59.758245283 +0100
-@@ -333,7 +333,7 @@
+--- ioemu.orig/Makefile.target 2006-08-06 02:22:26.380544784 +0100
++++ ioemu/Makefile.target 2006-08-06 02:23:23.059226607 +0100
+@@ -354,7 +354,7 @@
ifeq ($(TARGET_BASE_ARCH), i386)
# Hardware support
VL_OBJS+= ide.o pckbd.o ps2.o vga.o $(SOUND_HW) dma.o $(AUDIODRV)
-VL_OBJS+= fdc.o mc146818rtc.o serial.o i8254.o pcspk.o pc.o
+VL_OBJS+= fdc.o mc146818rtc.o serial.o pc.o
- VL_OBJS+= cirrus_vga.o mixeng.o parallel.o
+ VL_OBJS+= cirrus_vga.o mixeng.o parallel.o acpi.o piix_pci.o
+ VL_OBJS+= usb-uhci.o
DEFINES += -DHAS_AUDIO
- endif
Index: ioemu/hw/pc.c
===================================================================
---- ioemu.orig/hw/pc.c 2006-07-27 11:16:59.036325200 +0100
-+++ ioemu/hw/pc.c 2006-07-27 11:16:59.759245173 +0100
+--- ioemu.orig/hw/pc.c 2006-08-06 02:22:35.588518336 +0100
++++ ioemu/hw/pc.c 2006-08-06 02:23:07.875919141 +0100
@@ -38,7 +38,9 @@
static fdctrl_t *floppy_controller;
@@ -25,7 +25,7 @@ Index: ioemu/hw/pc.c
#ifndef CONFIG_DM
static IOAPICState *ioapic;
#endif /* !CONFIG_DM */
-@@ -803,8 +805,10 @@
+@@ -810,8 +812,10 @@
}
#endif /* !CONFIG_DM */
isa_pic = pic_init(pic_irq_request, first_cpu);
@@ -38,9 +38,9 @@ Index: ioemu/hw/pc.c
pic_set_alt_irq_func(isa_pic, ioapic_set_irq, ioapic);
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-07-27 11:16:59.614261222 +0100
-+++ ioemu/vl.c 2006-07-27 11:16:59.762244841 +0100
-@@ -5034,6 +5034,7 @@
+--- ioemu.orig/vl.c 2006-08-06 02:23:05.216215627 +0100
++++ ioemu/vl.c 2006-08-06 02:23:07.878918807 +0100
+@@ -5570,6 +5570,7 @@
#ifdef HAS_AUDIO
struct soundhw soundhw[] = {
@@ -48,7 +48,7 @@ Index: ioemu/vl.c
#ifdef TARGET_I386
{
"pcspk",
-@@ -5043,6 +5044,7 @@
+@@ -5579,6 +5580,7 @@
{ .init_isa = pcspk_audio_init }
},
#endif
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/ide-hd-multithread
--- a/tools/ioemu/patches/ide-hd-multithread Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/ide-hd-multithread Mon Aug 07 18:28:50 2006 +0100
@@ -1,6 +1,7 @@ diff -r d711aa4fa261 hw/ide.c
-diff -r d711aa4fa261 hw/ide.c
---- a/hw/ide.c Fri Jun 16 10:13:37 2006 +0200
-+++ b/hw/ide.c Fri Jun 16 10:30:28 2006 +0200
+Index: ioemu/hw/ide.c
+===================================================================
+--- ioemu.orig/hw/ide.c 2006-08-06 02:03:50.520919718 +0100
++++ ioemu/hw/ide.c 2006-08-06 02:23:41.153209614 +0100
@@ -22,6 +22,7 @@
* THE SOFTWARE.
*/
@@ -9,7 +10,7 @@ diff -r d711aa4fa261 hw/ide.c
/* debug IDE devices */
//#define DEBUG_IDE
-@@ -390,6 +391,48 @@ typedef struct PCIIDEState {
+@@ -390,6 +391,48 @@
int type; /* see IDE_TYPE_xxx */
} PCIIDEState;
@@ -58,7 +59,7 @@ diff -r d711aa4fa261 hw/ide.c
static void ide_dma_start(IDEState *s, IDEDMAFunc *dma_cb);
static void padstr(char *str, const char *src, int len)
-@@ -695,7 +738,9 @@ static int ide_read_dma_cb(IDEState *s,
+@@ -695,7 +738,9 @@
}
if (s->io_buffer_index >= s->io_buffer_size && s->nsector == 0) {
s->status = READY_STAT | SEEK_STAT;
@@ -68,7 +69,7 @@ diff -r d711aa4fa261 hw/ide.c
#ifdef DEBUG_IDE_ATAPI
printf("dma status=0x%x\n", s->status);
#endif
-@@ -795,7 +840,11 @@ static int ide_write_dma_cb(IDEState *s,
+@@ -795,7 +840,11 @@
qemu_get_clock(vm_clock) + (ticks_per_sec /
1000));
} else
#endif
@@ -80,7 +81,7 @@ diff -r d711aa4fa261 hw/ide.c
return 0;
}
if (n > MAX_MULT_SECTORS)
-@@ -1046,7 +1095,9 @@ static int ide_atapi_cmd_read_dma_cb(IDE
+@@ -1046,7 +1095,9 @@
if (s->packet_transfer_size <= 0) {
s->status = READY_STAT;
s->nsector = (s->nsector & ~7) | ATAPI_INT_REASON_IO |
ATAPI_INT_REASON_CD;
@@ -90,7 +91,7 @@ diff -r d711aa4fa261 hw/ide.c
#ifdef DEBUG_IDE_ATAPI
printf("dma status=0x%x\n", s->status);
#endif
-@@ -2219,9 +2270,30 @@ static void ide_map(PCIDevice *pci_dev,
+@@ -2103,9 +2154,30 @@
}
}
@@ -110,18 +111,18 @@ diff -r d711aa4fa261 hw/ide.c
/* XXX: full callback usage to prepare non blocking I/Os support -
error handling */
+#ifdef DMA_MULTI_THREAD
- static void ide_dma_loop(BMDMAState *bm)
++static void ide_dma_loop(BMDMAState *bm)
+{
+ write(file_pipes[1], &bm, sizeof(bm));
+}
+static void dma_thread_loop(BMDMAState *bm)
+#else /* DMA_MULTI_THREAD */
-+static void ide_dma_loop(BMDMAState *bm)
+ static void ide_dma_loop(BMDMAState *bm)
+#endif /* !DMA_MULTI_THREAD */
{
struct {
uint32_t addr;
-@@ -2257,10 +2329,7 @@ static void ide_dma_loop(BMDMAState *bm)
+@@ -2141,10 +2213,7 @@
}
/* end of transfer */
the_end:
@@ -133,7 +134,7 @@ diff -r d711aa4fa261 hw/ide.c
}
static void ide_dma_start(IDEState *s, IDEDMAFunc *dma_cb)
-@@ -2486,6 +2555,9 @@ void pci_cmd646_ide_init(PCIBus *bus, Bl
+@@ -2370,6 +2439,9 @@
cmd646_set_irq, d, 0);
ide_init2(&d->ide_if[2], hd_table[2], hd_table[3],
cmd646_set_irq, d, 1);
@@ -143,7 +144,7 @@ diff -r d711aa4fa261 hw/ide.c
}
/* hd_table must contain 4 block drivers */
-@@ -2521,6 +2593,9 @@ void pci_piix3_ide_init(PCIBus *bus, Blo
+@@ -2405,6 +2477,9 @@
pic_set_irq_new, isa_pic, 15);
ide_init_ioport(&d->ide_if[0], 0x1f0, 0x3f6);
ide_init_ioport(&d->ide_if[2], 0x170, 0x376);
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/ioemu-ia64
--- a/tools/ioemu/patches/ioemu-ia64 Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/ioemu-ia64 Mon Aug 07 18:28:50 2006 +0100
@@ -1,7 +1,7 @@ Index: ioemu/hw/iommu.c
Index: ioemu/hw/iommu.c
===================================================================
---- ioemu.orig/hw/iommu.c 2006-08-04 10:57:22.606723023 +0100
-+++ ioemu/hw/iommu.c 2006-08-04 10:57:27.489160251 +0100
+--- ioemu.orig/hw/iommu.c 2006-08-06 01:55:03.240628184 +0100
++++ ioemu/hw/iommu.c 2006-08-06 02:18:54.843126039 +0100
@@ -82,7 +82,11 @@
#define IOPTE_VALID 0x00000002 /* IOPTE is valid */
#define IOPTE_WAZ 0x00000001 /* Write as zeros */
@@ -16,8 +16,8 @@ Index: ioemu/hw/iommu.c
Index: ioemu/cpu-all.h
===================================================================
---- ioemu.orig/cpu-all.h 2006-08-04 10:57:27.123202432 +0100
-+++ ioemu/cpu-all.h 2006-08-04 10:57:27.490160136 +0100
+--- ioemu.orig/cpu-all.h 2006-08-06 02:17:09.392881406 +0100
++++ ioemu/cpu-all.h 2006-08-06 02:18:54.844125928 +0100
@@ -835,6 +835,31 @@
:"=m" (*(volatile long *)addr)
:"dIr" (nr));
@@ -52,9 +52,9 @@ Index: ioemu/cpu-all.h
/* memory API */
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-08-04 10:57:27.419168318 +0100
-+++ ioemu/vl.c 2006-08-04 10:57:27.493159790 +0100
-@@ -5567,6 +5567,11 @@
+--- ioemu.orig/vl.c 2006-08-06 02:18:45.608155528 +0100
++++ ioemu/vl.c 2006-08-06 02:18:54.847125593 +0100
+@@ -6140,6 +6140,11 @@
/* init the memory */
phys_ram_size = ram_size + vga_ram_size + bios_size;
@@ -66,7 +66,7 @@ Index: ioemu/vl.c
#ifdef CONFIG_DM
nr_pages = ram_size/PAGE_SIZE;
-@@ -5578,6 +5583,7 @@
+@@ -6151,6 +6156,7 @@
exit(-1);
}
@@ -74,7 +74,7 @@ Index: ioemu/vl.c
if (xc_get_pfn_list(xc_handle, domid, page_array, nr_pages) != nr_pages) {
fprintf(logfile, "xc_get_pfn_list returned error %d\n", errno);
exit(-1);
-@@ -5600,6 +5606,41 @@
+@@ -6173,6 +6179,41 @@
free(page_array);
@@ -115,11 +115,11 @@ Index: ioemu/vl.c
+#endif
#else /* !CONFIG_DM */
- #ifdef CONFIG_SOFTMMU
+ phys_ram_base = qemu_vmalloc(phys_ram_size);
Index: ioemu/target-i386-dm/exec-dm.c
===================================================================
---- ioemu.orig/target-i386-dm/exec-dm.c 2006-08-04 10:57:26.738246803
+0100
-+++ ioemu/target-i386-dm/exec-dm.c 2006-08-04 10:57:27.493159790 +0100
+--- ioemu.orig/target-i386-dm/exec-dm.c 2006-08-06 02:15:01.776108064
+0100
++++ ioemu/target-i386-dm/exec-dm.c 2006-08-06 02:18:54.848125482 +0100
@@ -341,6 +341,23 @@
return io_mem_read[io_index >> IO_MEM_SHIFT];
}
@@ -156,8 +156,8 @@ Index: ioemu/target-i386-dm/exec-dm.c
memset(buf, 0xff, len);
Index: ioemu/exec-all.h
===================================================================
---- ioemu.orig/exec-all.h 2006-08-04 10:57:26.651256830 +0100
-+++ ioemu/exec-all.h 2006-08-04 10:57:27.494159675 +0100
+--- ioemu.orig/exec-all.h 2006-08-06 02:14:09.796902750 +0100
++++ ioemu/exec-all.h 2006-08-06 02:18:54.848125482 +0100
@@ -462,12 +462,13 @@
}
#endif
@@ -177,8 +177,8 @@ Index: ioemu/exec-all.h
Index: ioemu/target-i386-dm/cpu.h
===================================================================
---- ioemu.orig/target-i386-dm/cpu.h 2006-08-04 10:57:26.737246918 +0100
-+++ ioemu/target-i386-dm/cpu.h 2006-08-04 10:57:27.494159675 +0100
+--- ioemu.orig/target-i386-dm/cpu.h 2006-08-06 02:15:01.776108064 +0100
++++ ioemu/target-i386-dm/cpu.h 2006-08-06 02:18:54.848125482 +0100
@@ -80,7 +80,11 @@
/* helper2.c */
int main_loop(void);
@@ -194,7 +194,7 @@ Index: ioemu/ia64_intrinsic.h
Index: ioemu/ia64_intrinsic.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ ioemu/ia64_intrinsic.h 2006-08-04 10:57:27.495159560 +0100
++++ ioemu/ia64_intrinsic.h 2006-08-06 02:18:54.849125370 +0100
@@ -0,0 +1,276 @@
+#ifndef IA64_INTRINSIC_H
+#define IA64_INTRINSIC_H
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/qemu-64bit
--- a/tools/ioemu/patches/qemu-64bit Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/qemu-64bit Mon Aug 07 18:28:50 2006 +0100
@@ -1,7 +1,7 @@ Index: ioemu/cpu-all.h
Index: ioemu/cpu-all.h
===================================================================
---- ioemu.orig/cpu-all.h 2006-07-26 13:19:49.515051864 +0100
-+++ ioemu/cpu-all.h 2006-07-26 13:19:49.563046860 +0100
+--- ioemu.orig/cpu-all.h 2006-08-06 02:14:09.796902750 +0100
++++ ioemu/cpu-all.h 2006-08-06 02:15:39.707879423 +0100
@@ -822,7 +822,7 @@
/* memory API */
@@ -13,9 +13,9 @@ Index: ioemu/cpu-all.h
extern uint8_t *phys_ram_dirty;
Index: ioemu/hw/pc.c
===================================================================
---- ioemu.orig/hw/pc.c 2006-07-26 13:19:49.516051760 +0100
-+++ ioemu/hw/pc.c 2006-07-26 13:19:49.564046755 +0100
-@@ -147,7 +147,7 @@
+--- ioemu.orig/hw/pc.c 2006-08-06 02:14:09.797902638 +0100
++++ ioemu/hw/pc.c 2006-08-06 02:15:39.708879311 +0100
+@@ -155,7 +155,7 @@
}
/* hd_table must contain 4 block drivers */
@@ -24,7 +24,7 @@ Index: ioemu/hw/pc.c
{
RTCState *s = rtc_state;
int val;
-@@ -604,7 +604,7 @@
+@@ -610,7 +610,7 @@
}
/* PC hardware initialisation */
@@ -33,7 +33,7 @@ Index: ioemu/hw/pc.c
DisplayState *ds, const char **fd_filename, int snapshot,
const char *kernel_filename, const char *kernel_cmdline,
const char *initrd_filename,
-@@ -853,7 +853,7 @@
+@@ -882,7 +882,7 @@
}
}
@@ -42,7 +42,7 @@ Index: ioemu/hw/pc.c
DisplayState *ds, const char **fd_filename,
int snapshot,
const char *kernel_filename,
-@@ -866,7 +866,7 @@
+@@ -895,7 +895,7 @@
initrd_filename, 1);
}
@@ -53,9 +53,9 @@ Index: ioemu/hw/pc.c
const char *kernel_filename,
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-07-26 13:19:49.552048007 +0100
-+++ ioemu/vl.c 2006-07-26 13:19:49.566046547 +0100
-@@ -123,7 +123,7 @@
+--- ioemu.orig/vl.c 2006-08-06 02:15:31.040845624 +0100
++++ ioemu/vl.c 2006-08-06 02:15:39.711878977 +0100
+@@ -122,7 +122,7 @@
const char* keyboard_layout = NULL;
int64_t ticks_per_sec;
int boot_device = 'c';
@@ -64,7 +64,7 @@ Index: ioemu/vl.c
int pit_min_timer_count = 0;
int nb_nics;
NICInfo nd_table[MAX_NICS];
-@@ -5320,7 +5320,7 @@
+@@ -5895,7 +5895,7 @@
help();
break;
case QEMU_OPTION_m:
@@ -75,9 +75,9 @@ Index: ioemu/vl.c
if (ram_size > PHYS_RAM_MAX_SIZE) {
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2006-07-26 13:19:49.552048007 +0100
-+++ ioemu/vl.h 2006-07-26 13:19:49.567046443 +0100
-@@ -138,7 +138,7 @@
+--- ioemu.orig/vl.h 2006-08-06 02:15:10.368150219 +0100
++++ ioemu/vl.h 2006-08-06 02:15:39.711878977 +0100
+@@ -146,7 +146,7 @@
extern int xc_handle;
extern int domid;
@@ -86,7 +86,7 @@ Index: ioemu/vl.h
extern int bios_size;
extern int rtc_utc;
extern int cirrus_vga_enabled;
-@@ -542,7 +542,7 @@
+@@ -561,7 +561,7 @@
#ifndef QEMU_TOOL
@@ -97,9 +97,9 @@ Index: ioemu/vl.h
const char *kernel_filename, const char *kernel_cmdline,
Index: ioemu/hw/vga.c
===================================================================
---- ioemu.orig/hw/vga.c 2006-07-26 13:19:49.549048319 +0100
-+++ ioemu/hw/vga.c 2006-07-26 13:20:17.956085603 +0100
-@@ -1293,7 +1293,8 @@
+--- ioemu.orig/hw/vga.c 2006-08-06 02:15:10.364150665 +0100
++++ ioemu/hw/vga.c 2006-08-06 02:15:39.712878866 +0100
+@@ -1365,7 +1365,8 @@
static void vga_draw_graphic(VGAState *s, int full_update)
{
int y1, y, update, page_min, page_max, linesize, y_start, double_scan,
mask;
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/qemu-allow-disable-sdl
--- a/tools/ioemu/patches/qemu-allow-disable-sdl Mon Aug 07 18:27:27
2006 +0100
+++ b/tools/ioemu/patches/qemu-allow-disable-sdl Mon Aug 07 18:28:50
2006 +0100
@@ -1,8 +1,8 @@ Index: ioemu/configure
Index: ioemu/configure
===================================================================
---- ioemu.orig/configure 2006-08-03 19:19:38.000000000 +0100
-+++ ioemu/configure 2006-08-03 23:38:19.000000000 +0100
-@@ -226,8 +226,6 @@
+--- ioemu.orig/configure 2006-08-06 02:15:01.771108621 +0100
++++ ioemu/configure 2006-08-06 02:42:26.213918476 +0100
+@@ -228,8 +228,6 @@
;;
--enable-cocoa) cocoa="yes" ; coreaudio="yes" ; sdl="no"
;;
@@ -11,7 +11,7 @@ Index: ioemu/configure
--disable-gcc-check) check_gcc="no"
;;
--disable-system) softmmu="no"
-@@ -736,14 +734,6 @@
+@@ -758,14 +756,6 @@
target_user_only="yes"
fi
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/qemu-bugfixes
--- a/tools/ioemu/patches/qemu-bugfixes Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/qemu-bugfixes Mon Aug 07 18:28:50 2006 +0100
@@ -1,8 +1,8 @@ Index: ioemu/console.c
Index: ioemu/console.c
===================================================================
---- ioemu.orig/console.c 2006-07-27 11:16:53.732912290 +0100
-+++ ioemu/console.c 2006-07-27 11:16:57.753467214 +0100
-@@ -449,7 +449,7 @@
+--- ioemu.orig/console.c 2006-08-06 02:03:45.803444993 +0100
++++ ioemu/console.c 2006-08-06 02:15:48.546894051 +0100
+@@ -505,7 +505,7 @@
c++;
}
}
@@ -11,7 +11,7 @@ Index: ioemu/console.c
s->cells = cells;
}
-@@ -954,11 +954,21 @@
+@@ -1032,11 +1032,21 @@
return !active_console->text_console;
}
@@ -34,8 +34,8 @@ Index: ioemu/console.c
static int color_inited;
chr = qemu_mallocz(sizeof(CharDriverState));
-@@ -976,12 +986,7 @@
-
+@@ -1058,12 +1068,7 @@
+
if (!color_inited) {
color_inited = 1;
- for(j = 0; j < 2; j++) {
@@ -48,23 +48,11 @@ Index: ioemu/console.c
}
s->y_displayed = 0;
s->y_base = 0;
-Index: ioemu/usb-linux.c
-===================================================================
---- ioemu.orig/usb-linux.c 2006-07-27 11:16:53.732912290 +0100
-+++ ioemu/usb-linux.c 2006-07-27 11:16:57.754467103 +0100
-@@ -26,6 +26,7 @@
- #if defined(__linux__)
- #include <dirent.h>
- #include <sys/ioctl.h>
-+#define __user /* new versions of usbdevice_fs.h use this private attribute */
- #include <linux/usbdevice_fs.h>
- #include <linux/version.h>
-
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-07-27 11:16:57.681475183 +0100
-+++ ioemu/vl.c 2006-07-27 11:17:33.279534373 +0100
-@@ -3201,6 +3201,7 @@
+--- ioemu.orig/vl.c 2006-08-06 02:15:39.711878977 +0100
++++ ioemu/vl.c 2006-08-06 02:15:48.550893605 +0100
+@@ -3671,6 +3671,7 @@
if (net_tap_fd_init(vlan, fd))
ret = 0;
} else {
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/qemu-cleanup
--- a/tools/ioemu/patches/qemu-cleanup Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/qemu-cleanup Mon Aug 07 18:28:50 2006 +0100
@@ -1,8 +1,8 @@ Index: ioemu/hw/vga.c
Index: ioemu/hw/vga.c
===================================================================
---- ioemu.orig/hw/vga.c 2006-07-12 11:33:54.853085901 +0100
-+++ ioemu/hw/vga.c 2006-07-12 11:35:00.780818943 +0100
-@@ -1563,7 +1563,9 @@
+--- ioemu.orig/hw/vga.c 2006-08-06 02:03:51.906765409 +0100
++++ ioemu/hw/vga.c 2006-08-06 02:15:10.364150665 +0100
+@@ -1622,7 +1622,9 @@
static void vga_save(QEMUFile *f, void *opaque)
{
VGAState *s = opaque;
@@ -12,7 +12,7 @@ Index: ioemu/hw/vga.c
qemu_put_be32s(f, &s->latch);
qemu_put_8s(f, &s->sr_index);
-@@ -1604,7 +1606,10 @@
+@@ -1663,7 +1665,10 @@
static int vga_load(QEMUFile *f, void *opaque, int version_id)
{
VGAState *s = opaque;
@@ -26,8 +26,8 @@ Index: ioemu/hw/vga.c
return -EINVAL;
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-07-12 11:35:00.708827963 +0100
-+++ ioemu/vl.c 2006-07-12 11:35:00.783818568 +0100
+--- ioemu.orig/vl.c 2006-08-06 02:15:01.774108287 +0100
++++ ioemu/vl.c 2006-08-06 02:15:31.040845624 +0100
@@ -39,6 +39,7 @@
#include <sys/ioctl.h>
#include <sys/socket.h>
@@ -36,7 +36,7 @@ Index: ioemu/vl.c
#include <dirent.h>
#include <netdb.h>
#ifdef _BSD
-@@ -4777,7 +4778,9 @@
+@@ -5308,7 +5309,9 @@
QEMU_OPTION_d,
QEMU_OPTION_hdachs,
QEMU_OPTION_L,
@@ -46,7 +46,7 @@ Index: ioemu/vl.c
QEMU_OPTION_k,
QEMU_OPTION_localtime,
QEMU_OPTION_cirrusvga,
-@@ -4844,7 +4847,9 @@
+@@ -5379,7 +5382,9 @@
{ "d", HAS_ARG, QEMU_OPTION_d },
{ "hdachs", HAS_ARG, QEMU_OPTION_hdachs },
{ "L", HAS_ARG, QEMU_OPTION_L },
@@ -56,10 +56,10 @@ Index: ioemu/vl.c
#ifdef USE_KQEMU
{ "no-kqemu", 0, QEMU_OPTION_no_kqemu },
{ "kernel-kqemu", 0, QEMU_OPTION_kernel_kqemu },
-@@ -5274,9 +5279,11 @@
- case QEMU_OPTION_fdb:
- fd_filename[1] = optarg;
+@@ -5849,9 +5854,11 @@
+ fd_bootchk = 0;
break;
+ #endif
+#ifdef USE_CODE_COPY
case QEMU_OPTION_no_code_copy:
code_copy_enabled = 0;
@@ -70,9 +70,9 @@ Index: ioemu/vl.c
fprintf(stderr, "qemu: too many network clients\n");
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2006-07-12 11:35:00.709827838 +0100
-+++ ioemu/vl.h 2006-07-12 11:35:00.784818442 +0100
-@@ -892,7 +892,7 @@
+--- ioemu.orig/vl.h 2006-08-06 02:15:01.775108175 +0100
++++ ioemu/vl.h 2006-08-06 02:15:10.368150219 +0100
+@@ -957,7 +957,7 @@
unsigned long vram_offset, int vram_size, int width, int height);
/* slavio_intctl.c */
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/qemu-dm
--- a/tools/ioemu/patches/qemu-dm Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/qemu-dm Mon Aug 07 18:28:50 2006 +0100
@@ -1,8 +1,8 @@ Index: ioemu/Makefile.target
Index: ioemu/Makefile.target
===================================================================
---- ioemu.orig/Makefile.target 2006-07-14 15:50:41.320748096 +0100
-+++ ioemu/Makefile.target 2006-07-14 15:55:04.753733845 +0100
-@@ -285,7 +285,7 @@
+--- ioemu.orig/Makefile.target 2006-08-06 02:14:04.797460093 +0100
++++ ioemu/Makefile.target 2006-08-06 02:14:09.794902973 +0100
+@@ -302,7 +302,7 @@
endif
# must use static linking to avoid leaving stuff in virtual address space
@@ -13,8 +13,8 @@ Index: ioemu/Makefile.target
VL_OBJS+=tap-win32.o
Index: ioemu/configure
===================================================================
---- ioemu.orig/configure 2006-07-14 15:50:41.320748096 +0100
-+++ ioemu/configure 2006-07-14 15:55:04.753733845 +0100
+--- ioemu.orig/configure 2006-08-06 02:14:04.797460093 +0100
++++ ioemu/configure 2006-08-06 02:14:09.795902861 +0100
@@ -75,8 +75,8 @@
bigendian="no"
mingw32="no"
@@ -26,7 +26,7 @@ Index: ioemu/configure
adlib="no"
oss="no"
dsound="no"
-@@ -727,6 +727,8 @@
+@@ -749,6 +749,8 @@
if expr $target : '.*-softmmu' > /dev/null ; then
target_softmmu="yes"
fi
@@ -37,8 +37,8 @@ Index: ioemu/configure
target_user_only="yes"
Index: ioemu/cpu-all.h
===================================================================
---- ioemu.orig/cpu-all.h 2006-07-14 15:50:30.488983278 +0100
-+++ ioemu/cpu-all.h 2006-07-14 15:55:04.544757636 +0100
+--- ioemu.orig/cpu-all.h 2006-08-06 02:14:04.797460093 +0100
++++ ioemu/cpu-all.h 2006-08-06 02:14:09.796902750 +0100
@@ -690,7 +690,9 @@
void page_set_flags(target_ulong start, target_ulong end, int flags);
void page_unprotect_range(target_ulong data, target_ulong data_size);
@@ -64,8 +64,8 @@ Index: ioemu/cpu-all.h
void cpu_dump_state(CPUState *env, FILE *f,
Index: ioemu/disas.h
===================================================================
---- ioemu.orig/disas.h 2006-07-14 15:50:30.489983164 +0100
-+++ ioemu/disas.h 2006-07-14 15:50:41.334746500 +0100
+--- ioemu.orig/disas.h 2006-08-06 02:14:04.797460093 +0100
++++ ioemu/disas.h 2006-08-06 02:14:09.796902750 +0100
@@ -1,6 +1,7 @@
#ifndef _QEMU_DISAS_H
#define _QEMU_DISAS_H
@@ -83,8 +83,8 @@ Index: ioemu/disas.h
#endif /* _QEMU_DISAS_H */
Index: ioemu/exec-all.h
===================================================================
---- ioemu.orig/exec-all.h 2006-07-14 15:50:30.490983050 +0100
-+++ ioemu/exec-all.h 2006-07-14 15:50:41.335746386 +0100
+--- ioemu.orig/exec-all.h 2006-08-06 02:14:04.798459982 +0100
++++ ioemu/exec-all.h 2006-08-06 02:14:09.796902750 +0100
@@ -509,7 +509,7 @@
extern int tb_invalidated_flag;
@@ -105,17 +105,17 @@ Index: ioemu/exec-all.h
return addr;
Index: ioemu/hw/pc.c
===================================================================
---- ioemu.orig/hw/pc.c 2006-07-14 15:50:30.491982936 +0100
-+++ ioemu/hw/pc.c 2006-07-14 15:55:04.543757750 +0100
-@@ -65,6 +65,7 @@
- return qemu_get_clock(vm_clock);
+--- ioemu.orig/hw/pc.c 2006-08-06 02:14:04.797460093 +0100
++++ ioemu/hw/pc.c 2006-08-06 02:14:09.797902638 +0100
+@@ -73,6 +73,7 @@
+ }
}
+#ifndef CONFIG_DM
/* IRQ handling */
int cpu_get_pic_interrupt(CPUState *env)
{
-@@ -81,6 +82,7 @@
+@@ -89,6 +90,7 @@
intno = pic_read_irq(isa_pic);
return intno;
}
@@ -123,7 +123,7 @@ Index: ioemu/hw/pc.c
static void pic_irq_request(void *opaque, int level)
{
-@@ -394,6 +396,7 @@
+@@ -400,6 +402,7 @@
/*************************************************/
@@ -131,7 +131,7 @@ Index: ioemu/hw/pc.c
static void putb(uint8_t **pp, int val)
{
uint8_t *q;
-@@ -540,6 +543,7 @@
+@@ -546,6 +549,7 @@
float_pointer_struct[10] =
-mpf_checksum(float_pointer_struct, q - float_pointer_struct);
}
@@ -139,7 +139,7 @@ Index: ioemu/hw/pc.c
static const int ide_iobase[2] = { 0x1f0, 0x170 };
-@@ -619,12 +623,14 @@
+@@ -626,12 +630,14 @@
/* init CPUs */
for(i = 0; i < smp_cpus; i++) {
env = cpu_init();
@@ -154,7 +154,7 @@ Index: ioemu/hw/pc.c
register_savevm("cpu", i, 3, cpu_save, cpu_load, env);
qemu_register_reset(main_cpu_reset, env);
if (pci_enabled) {
-@@ -683,6 +689,7 @@
+@@ -690,6 +696,7 @@
bochs_bios_init();
@@ -162,7 +162,7 @@ Index: ioemu/hw/pc.c
if (linux_boot) {
uint8_t bootsect[512];
uint8_t old_bootsect[512];
-@@ -738,6 +745,7 @@
+@@ -745,6 +752,7 @@
/* loader type */
stw_raw(phys_ram_base + KERNEL_PARAMS_ADDR + 0x210, 0x01);
}
@@ -170,7 +170,7 @@ Index: ioemu/hw/pc.c
if (pci_enabled) {
pci_bus = i440fx_init();
-@@ -776,9 +784,11 @@
+@@ -783,9 +791,11 @@
isa_pic = pic_init(pic_irq_request, first_cpu);
pit = pit_init(0x40, 0);
pcspk_init(pit);
@@ -184,8 +184,8 @@ Index: ioemu/hw/pc.c
if (serial_hds[i]) {
Index: ioemu/hw/vga_int.h
===================================================================
---- ioemu.orig/hw/vga_int.h 2006-07-14 15:50:30.491982936 +0100
-+++ ioemu/hw/vga_int.h 2006-07-14 15:55:02.931941245 +0100
+--- ioemu.orig/hw/vga_int.h 2006-08-06 02:14:04.797460093 +0100
++++ ioemu/hw/vga_int.h 2006-08-06 02:14:09.797902638 +0100
@@ -28,7 +28,7 @@
#define ST01_DISP_ENABLE 0x01
@@ -193,12 +193,12 @@ Index: ioemu/hw/vga_int.h
-#define CONFIG_BOCHS_VBE
+//#define CONFIG_BOCHS_VBE
- #define VBE_DISPI_MAX_XRES 1024
- #define VBE_DISPI_MAX_YRES 768
+ #define VBE_DISPI_MAX_XRES 1600
+ #define VBE_DISPI_MAX_YRES 1200
Index: ioemu/monitor.c
===================================================================
---- ioemu.orig/monitor.c 2006-07-14 15:50:30.493982708 +0100
-+++ ioemu/monitor.c 2006-07-14 15:55:04.754733732 +0100
+--- ioemu.orig/monitor.c 2006-08-06 02:14:04.798459982 +0100
++++ ioemu/monitor.c 2006-08-06 02:14:49.574468309 +0100
@@ -68,6 +68,12 @@
void term_flush(void)
@@ -212,7 +212,7 @@ Index: ioemu/monitor.c
if (term_outbuf_index > 0) {
qemu_chr_write(monitor_hd, term_outbuf, term_outbuf_index);
term_outbuf_index = 0;
-@@ -104,6 +110,7 @@
+@@ -106,6 +112,7 @@
va_end(ap);
}
@@ -220,7 +220,7 @@ Index: ioemu/monitor.c
static int monitor_fprintf(FILE *stream, const char *fmt, ...)
{
va_list ap;
-@@ -112,6 +119,7 @@
+@@ -114,6 +121,7 @@
va_end(ap);
return 0;
}
@@ -228,7 +228,7 @@ Index: ioemu/monitor.c
static int compare_cmd(const char *name, const char *list)
{
-@@ -225,6 +233,7 @@
+@@ -227,6 +235,7 @@
return mon_cpu;
}
@@ -236,7 +236,7 @@ Index: ioemu/monitor.c
static void do_info_registers(void)
{
CPUState *env;
-@@ -278,6 +287,7 @@
+@@ -280,6 +289,7 @@
{
dump_exec_info(NULL, monitor_fprintf);
}
@@ -244,7 +244,7 @@ Index: ioemu/monitor.c
static void do_info_history (void)
{
-@@ -375,6 +385,7 @@
+@@ -377,6 +387,7 @@
cpu_set_log(mask);
}
@@ -252,7 +252,7 @@ Index: ioemu/monitor.c
static void do_savevm(const char *filename)
{
if (qemu_savevm(filename) < 0)
-@@ -621,6 +632,7 @@
+@@ -623,6 +634,7 @@
#endif
term_printf("\n");
}
@@ -260,23 +260,23 @@ Index: ioemu/monitor.c
static void do_sum(uint32_t start, uint32_t size)
{
-@@ -792,6 +804,7 @@
- }
+@@ -841,6 +853,7 @@
+ kbd_mouse_event(0, 0, 0, mouse_button_state);
}
+#ifndef CONFIG_DM
static void do_ioport_read(int count, int format, int size, int addr, int
has_index, int index)
{
uint32_t val;
-@@ -952,6 +965,7 @@
- }
- }
- #endif
-+#endif /* !CONFIG_DM */
-
- static void do_info_kqemu(void)
- {
-@@ -1045,6 +1059,7 @@
+@@ -1031,6 +1044,7 @@
+ term_printf("kqemu support: not compiled\n");
+ #endif
+ }
++#endif /* !CONFIG_DM */
+
+ #ifdef CONFIG_PROFILER
+
+@@ -1152,6 +1166,7 @@
"filename", "save screen into PPM image 'filename'" },
{ "log", "s", do_log,
"item1[,...]", "activate logging of the specified items to
'/tmp/qemu.log'" },
@@ -284,7 +284,7 @@ Index: ioemu/monitor.c
{ "savevm", "F", do_savevm,
"filename", "save the whole virtual machine state to 'filename'" },
{ "loadvm", "F", do_loadvm,
-@@ -1065,21 +1080,26 @@
+@@ -1172,21 +1187,26 @@
"/fmt expr", "print expression value (use $reg for CPU register
access)", },
{ "i", "/ii.", do_ioport_read,
"/fmt addr", "I/O port read" },
@@ -308,10 +308,10 @@ Index: ioemu/monitor.c
{ "cpu", "i", do_cpu_set,
"index", "set the default CPU" },
+#endif /* !CONFIG_DM */
- { NULL, NULL, },
- };
-
-@@ -1090,10 +1110,12 @@
+ { "mouse_move", "sss?", do_mouse_move,
+ "dx dy [dz]", "send mouse move events" },
+ { "mouse_button", "i", do_mouse_button,
+@@ -1208,10 +1228,12 @@
"", "show the network state" },
{ "block", "", do_info_block,
"", "show the block devices" },
@@ -324,7 +324,7 @@ Index: ioemu/monitor.c
{ "history", "", do_info_history,
"", "show the command line history", },
{ "irq", "", irq_info,
-@@ -1102,6 +1124,7 @@
+@@ -1220,6 +1242,7 @@
"", "show i8259 (PIC) state", },
{ "pci", "", pci_info,
"", "show PCI info", },
@@ -332,15 +332,15 @@ Index: ioemu/monitor.c
#if defined(TARGET_I386)
{ "tlb", "", tlb_info,
"", "show virtual to physical memory mappings", },
-@@ -1110,6 +1133,7 @@
- #endif
- { "jit", "", do_info_jit,
+@@ -1230,6 +1253,7 @@
"", "show dynamic compiler info", },
-+#endif /* !CONFIG_DM */
{ "kqemu", "", do_info_kqemu,
"", "show kqemu information", },
++#endif /* !CONFIG_DM */
{ "usb", "", usb_info,
-@@ -1123,6 +1147,7 @@
+ "", "show guest USB devices", },
+ { "usbhost", "", usb_host_info,
+@@ -1243,6 +1267,7 @@
/*******************************************************************/
@@ -348,7 +348,7 @@ Index: ioemu/monitor.c
static const char *pch;
static jmp_buf expr_env;
-@@ -1663,6 +1688,7 @@
+@@ -1786,6 +1811,7 @@
*pp = pch;
return 0;
}
@@ -356,7 +356,7 @@ Index: ioemu/monitor.c
static int get_str(char *buf, int buf_size, const char **pp)
{
-@@ -1729,8 +1755,10 @@
+@@ -1852,8 +1878,10 @@
return 0;
}
@@ -367,7 +367,7 @@ Index: ioemu/monitor.c
#define MAX_ARGS 16
-@@ -1738,7 +1766,10 @@
+@@ -1861,7 +1889,10 @@
{
const char *p, *pstart, *typestr;
char *q;
@@ -379,7 +379,7 @@ Index: ioemu/monitor.c
term_cmd_t *cmd;
char cmdname[256];
char buf[1024];
-@@ -1830,6 +1861,7 @@
+@@ -1953,6 +1984,7 @@
args[nb_args++] = str;
}
break;
@@ -387,7 +387,7 @@ Index: ioemu/monitor.c
case '/':
{
int count, format, size;
-@@ -1962,6 +1994,7 @@
+@@ -2085,6 +2117,7 @@
}
}
break;
@@ -395,7 +395,7 @@ Index: ioemu/monitor.c
case '-':
{
int has_option;
-@@ -1988,6 +2021,11 @@
+@@ -2111,6 +2144,11 @@
args[nb_args++] = (void *)has_option;
}
break;
@@ -407,7 +407,7 @@ Index: ioemu/monitor.c
default:
bad_type:
term_printf("%s: unknown type '%c'\n", cmdname, c);
-@@ -2035,6 +2073,7 @@
+@@ -2161,6 +2199,7 @@
return;
}
@@ -415,7 +415,7 @@ Index: ioemu/monitor.c
static void cmd_completion(const char *name, const char *list)
{
const char *p, *pstart;
-@@ -2222,6 +2261,11 @@
+@@ -2354,6 +2393,11 @@
for(i = 0; i < nb_args; i++)
qemu_free(args[i]);
}
@@ -429,9 +429,9 @@ Index: ioemu/monitor.c
{
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-07-14 15:50:30.496982366 +0100
-+++ ioemu/vl.c 2006-07-14 15:55:07.676401124 +0100
-@@ -423,12 +423,15 @@
+--- ioemu.orig/vl.c 2006-08-06 02:14:04.797460093 +0100
++++ ioemu/vl.c 2006-08-06 02:14:09.802902081 +0100
+@@ -422,12 +422,15 @@
void hw_error(const char *fmt, ...)
{
va_list ap;
@@ -447,7 +447,7 @@ Index: ioemu/vl.c
for(env = first_cpu; env != NULL; env = env->next_cpu) {
fprintf(stderr, "CPU #%d:\n", env->cpu_index);
#ifdef TARGET_I386
-@@ -437,6 +440,7 @@
+@@ -436,6 +439,7 @@
cpu_dump_state(env, stderr, fprintf, 0);
#endif
}
@@ -455,7 +455,7 @@ Index: ioemu/vl.c
va_end(ap);
abort();
}
-@@ -3800,6 +3804,7 @@
+@@ -4336,6 +4340,7 @@
return ret;
}
@@ -463,7 +463,7 @@ Index: ioemu/vl.c
/***********************************************************/
/* cpu save/restore */
-@@ -4234,6 +4239,25 @@
+@@ -4770,6 +4775,25 @@
}
return 0;
}
@@ -489,7 +489,7 @@ Index: ioemu/vl.c
/***********************************************************/
/* machine registration */
-@@ -5481,6 +5505,7 @@
+@@ -6054,6 +6078,7 @@
socket_init();
#endif
@@ -497,7 +497,7 @@ Index: ioemu/vl.c
/* init network clients */
if (nb_net_clients == 0) {
/* if no clients, we use a default config */
-@@ -5490,6 +5515,7 @@
+@@ -6063,6 +6088,7 @@
"user");
nb_net_clients = 2;
}
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/qemu-fix-memset-args
--- a/tools/ioemu/patches/qemu-fix-memset-args Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/qemu-fix-memset-args Mon Aug 07 18:28:50 2006 +0100
@@ -1,8 +1,8 @@ Index: ioemu/audio/audio.c
Index: ioemu/audio/audio.c
===================================================================
---- ioemu.orig/audio/audio.c 2006-07-14 13:43:45.000000000 +0100
-+++ ioemu/audio/audio.c 2006-08-04 10:18:17.243240246 +0100
-@@ -597,11 +597,11 @@
+--- ioemu.orig/audio/audio.c 2006-08-06 02:03:50.013976165 +0100
++++ ioemu/audio/audio.c 2006-08-06 02:42:28.991609008 +0100
+@@ -605,11 +605,11 @@
}
if (info->sign) {
diff -r 06e2a95d3395 -r ec8dd0528fc6
tools/ioemu/patches/qemu-fix-write-to-disk-synchronous
--- a/tools/ioemu/patches/qemu-fix-write-to-disk-synchronous Mon Aug 07
18:27:27 2006 +0100
+++ b/tools/ioemu/patches/qemu-fix-write-to-disk-synchronous Mon Aug 07
18:28:50 2006 +0100
@@ -1,7 +1,7 @@ Index: ioemu/block-vmdk.c
Index: ioemu/block-vmdk.c
===================================================================
---- ioemu.orig/block-vmdk.c 2006-07-14 13:43:45.000000000 +0100
-+++ ioemu/block-vmdk.c 2006-08-04 10:27:15.368803650 +0100
+--- ioemu.orig/block-vmdk.c 2006-08-06 02:03:45.756450226 +0100
++++ ioemu/block-vmdk.c 2006-08-06 02:42:31.884286728 +0100
@@ -96,7 +96,7 @@
uint32_t magic;
int l1_size;
@@ -13,8 +13,8 @@ Index: ioemu/block-vmdk.c
if (fd < 0)
Index: ioemu/block-qcow.c
===================================================================
---- ioemu.orig/block-qcow.c 2006-07-14 13:43:45.000000000 +0100
-+++ ioemu/block-qcow.c 2006-08-04 10:27:15.367803766 +0100
+--- ioemu.orig/block-qcow.c 2006-08-06 02:03:45.754450449 +0100
++++ ioemu/block-qcow.c 2006-08-06 02:42:31.885286616 +0100
@@ -95,7 +95,7 @@
int fd, len, i, shift;
QCowHeader header;
@@ -26,8 +26,8 @@ Index: ioemu/block-qcow.c
if (fd < 0)
Index: ioemu/block-bochs.c
===================================================================
---- ioemu.orig/block-bochs.c 2006-07-14 13:43:45.000000000 +0100
-+++ ioemu/block-bochs.c 2006-08-04 10:27:15.345806311 +0100
+--- ioemu.orig/block-bochs.c 2006-08-06 01:55:02.225741179 +0100
++++ ioemu/block-bochs.c 2006-08-06 02:42:31.885286616 +0100
@@ -91,7 +91,7 @@
int fd, i;
struct bochs_header bochs;
@@ -39,9 +39,9 @@ Index: ioemu/block-bochs.c
if (fd < 0)
Index: ioemu/block.c
===================================================================
---- ioemu.orig/block.c 2006-08-03 19:19:39.000000000 +0100
-+++ ioemu/block.c 2006-08-04 10:27:15.357804923 +0100
-@@ -677,7 +677,7 @@
+--- ioemu.orig/block.c 2006-08-06 02:42:18.880735483 +0100
++++ ioemu/block.c 2006-08-06 02:42:31.886286505 +0100
+@@ -685,7 +685,7 @@
int rv;
#endif
@@ -52,8 +52,8 @@ Index: ioemu/block.c
if (fd < 0)
Index: ioemu/block-cow.c
===================================================================
---- ioemu.orig/block-cow.c 2006-07-14 13:43:45.000000000 +0100
-+++ ioemu/block-cow.c 2006-08-04 10:27:15.366803882 +0100
+--- ioemu.orig/block-cow.c 2006-08-06 02:03:45.751450783 +0100
++++ ioemu/block-cow.c 2006-08-06 02:42:31.886286505 +0100
@@ -69,7 +69,7 @@
struct cow_header_v2 cow_header;
int64_t size;
@@ -65,8 +65,8 @@ Index: ioemu/block-cow.c
if (fd < 0)
Index: ioemu/block-cloop.c
===================================================================
---- ioemu.orig/block-cloop.c 2006-07-14 13:43:45.000000000 +0100
-+++ ioemu/block-cloop.c 2006-08-04 10:27:15.365803997 +0100
+--- ioemu.orig/block-cloop.c 2006-08-06 01:55:02.226741067 +0100
++++ ioemu/block-cloop.c 2006-08-06 02:42:31.886286505 +0100
@@ -55,7 +55,7 @@
BDRVCloopState *s = bs->opaque;
uint32_t offsets_size,max_compressed_block_size=1,i;
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/qemu-hvm-banner
--- a/tools/ioemu/patches/qemu-hvm-banner Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/qemu-hvm-banner Mon Aug 07 18:28:50 2006 +0100
@@ -1,8 +1,8 @@ Index: ioemu/monitor.c
Index: ioemu/monitor.c
===================================================================
---- ioemu.orig/monitor.c 2006-07-12 11:35:00.705828339 +0100
-+++ ioemu/monitor.c 2006-07-12 11:35:01.307752925 +0100
-@@ -2293,15 +2293,14 @@
+--- ioemu.orig/monitor.c 2006-08-06 02:15:01.772108510 +0100
++++ ioemu/monitor.c 2006-08-06 02:17:10.847719223 +0100
+@@ -2425,15 +2425,14 @@
static void monitor_start_input(void)
{
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/qemu-init-vgabios
--- a/tools/ioemu/patches/qemu-init-vgabios Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/qemu-init-vgabios Mon Aug 07 18:28:50 2006 +0100
@@ -1,8 +1,8 @@ Index: ioemu/hw/vga.c
Index: ioemu/hw/vga.c
===================================================================
---- ioemu.orig/hw/vga.c 2006-07-27 11:10:44.847738090 +0100
-+++ ioemu/hw/vga.c 2006-07-27 11:11:02.008839258 +0100
-@@ -1669,6 +1669,136 @@
+--- ioemu.orig/hw/vga.c 2006-08-06 02:22:01.441324863 +0100
++++ ioemu/hw/vga.c 2006-08-06 02:22:46.606290142 +0100
+@@ -1728,6 +1728,136 @@
}
}
@@ -139,7 +139,7 @@ Index: ioemu/hw/vga.c
void vga_common_init(VGAState *s, DisplayState *ds, uint8_t *vga_ram_base,
unsigned long vga_ram_offset, int vga_ram_size)
{
-@@ -1710,6 +1840,8 @@
+@@ -1769,6 +1899,8 @@
vga_screen_dump, s);
/* XXX: currently needed for display */
vga_state = s;
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/qemu-logging
--- a/tools/ioemu/patches/qemu-logging Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/qemu-logging Mon Aug 07 18:28:50 2006 +0100
@@ -1,8 +1,8 @@ Index: ioemu/vl.c
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-07-27 11:16:57.756466882 +0100
-+++ ioemu/vl.c 2006-07-27 11:16:57.828458912 +0100
-@@ -4698,7 +4698,7 @@
+--- ioemu.orig/vl.c 2006-08-06 02:15:48.550893605 +0100
++++ ioemu/vl.c 2006-08-06 02:16:31.246133963 +0100
+@@ -5234,7 +5234,7 @@
"-S freeze CPU at startup (use 'c' to start
execution)\n"
"-s wait gdb connection to port %d\n"
"-p port change gdb connection port\n"
@@ -11,7 +11,7 @@ Index: ioemu/vl.c
"-hdachs c,h,s[,t] force hard disk 0 physical geometry and the
optional BIOS\n"
" translation (t=none or lba) (usually qemu can
guess them)\n"
"-L path set the directory for the BIOS and VGA BIOS\n"
-@@ -4776,7 +4776,7 @@
+@@ -5307,7 +5307,7 @@
QEMU_OPTION_S,
QEMU_OPTION_s,
QEMU_OPTION_p,
@@ -20,7 +20,7 @@ Index: ioemu/vl.c
QEMU_OPTION_hdachs,
QEMU_OPTION_L,
#ifdef USE_CODE_COPY
-@@ -4845,7 +4845,7 @@
+@@ -5380,7 +5380,7 @@
{ "S", 0, QEMU_OPTION_S },
{ "s", 0, QEMU_OPTION_s },
{ "p", HAS_ARG, QEMU_OPTION_p },
@@ -29,16 +29,16 @@ Index: ioemu/vl.c
{ "hdachs", HAS_ARG, QEMU_OPTION_hdachs },
{ "L", HAS_ARG, QEMU_OPTION_L },
#ifdef USE_CODE_COPY
-@@ -5096,6 +5096,8 @@
- char usb_devices[MAX_VM_USB_PORTS][128];
+@@ -5640,6 +5640,8 @@
+ char usb_devices[MAX_USB_CMDLINE][128];
int usb_devices_index;
+ char qemu_dm_logfilename[64];
+
LIST_INIT (&vm_change_state_head);
- #if !defined(CONFIG_SOFTMMU)
- /* we never want that malloc() uses mmap() */
-@@ -5145,6 +5147,11 @@
+ #ifndef _WIN32
+ {
+@@ -5715,6 +5717,11 @@
nb_nics = 0;
/* default mac address of the first network interface */
@@ -50,7 +50,7 @@ Index: ioemu/vl.c
optind = 1;
for(;;) {
if (optind >= argc)
-@@ -5330,7 +5337,7 @@
+@@ -5905,7 +5912,7 @@
exit(1);
}
break;
@@ -59,12 +59,3 @@ Index: ioemu/vl.c
{
int mask;
CPULogItem *item;
-@@ -5701,7 +5708,7 @@
- stk.ss_flags = 0;
-
- if (sigaltstack(&stk, NULL) < 0) {
-- perror("sigaltstack");
-+ fprintf(logfile, "sigaltstack returned error %d\n", errno);
- exit(1);
- }
- }
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/qemu-no-apic
--- a/tools/ioemu/patches/qemu-no-apic Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/qemu-no-apic Mon Aug 07 18:28:50 2006 +0100
@@ -1,20 +1,20 @@ Index: ioemu/Makefile.target
Index: ioemu/Makefile.target
===================================================================
---- ioemu.orig/Makefile.target 2006-07-12 11:35:00.704828464 +0100
-+++ ioemu/Makefile.target 2006-07-12 11:35:01.899678766 +0100
-@@ -334,7 +334,7 @@
+--- ioemu.orig/Makefile.target 2006-08-06 02:21:42.270461924 +0100
++++ ioemu/Makefile.target 2006-08-06 02:22:26.380544784 +0100
+@@ -355,7 +355,7 @@
# Hardware support
VL_OBJS+= ide.o pckbd.o ps2.o vga.o $(SOUND_HW) dma.o $(AUDIODRV)
VL_OBJS+= fdc.o mc146818rtc.o serial.o i8254.o pcspk.o pc.o
--VL_OBJS+= cirrus_vga.o mixeng.o apic.o parallel.o
-+VL_OBJS+= cirrus_vga.o mixeng.o parallel.o
+-VL_OBJS+= cirrus_vga.o mixeng.o apic.o parallel.o acpi.o piix_pci.o
++VL_OBJS+= cirrus_vga.o mixeng.o parallel.o acpi.o piix_pci.o
+ VL_OBJS+= usb-uhci.o
DEFINES += -DHAS_AUDIO
endif
- ifeq ($(TARGET_BASE_ARCH), ppc)
Index: ioemu/hw/pc.c
===================================================================
---- ioemu.orig/hw/pc.c 2006-07-12 11:35:01.685705573 +0100
-+++ ioemu/hw/pc.c 2006-07-12 11:35:01.900678640 +0100
+--- ioemu.orig/hw/pc.c 2006-08-06 02:22:01.524315611 +0100
++++ ioemu/hw/pc.c 2006-08-06 02:22:11.875161758 +0100
@@ -39,7 +39,9 @@
static fdctrl_t *floppy_controller;
static RTCState *rtc_state;
@@ -22,10 +22,10 @@ Index: ioemu/hw/pc.c
+#ifndef CONFIG_DM
static IOAPICState *ioapic;
+#endif /* !CONFIG_DM */
- static USBPort *usb_root_ports[2];
static void ioport80_write(void *opaque, uint32_t addr, uint32_t data)
-@@ -633,9 +635,11 @@
+ {
+@@ -640,9 +642,11 @@
#endif /* !CONFIG_DM */
register_savevm("cpu", i, 3, cpu_save, cpu_load, env);
qemu_register_reset(main_cpu_reset, env);
@@ -37,7 +37,7 @@ Index: ioemu/hw/pc.c
}
/* allocate RAM */
-@@ -782,9 +786,11 @@
+@@ -789,9 +793,11 @@
register_ioport_read(0x92, 1, 1, ioport92_read, NULL);
register_ioport_write(0x92, 1, 1, ioport92_write, NULL);
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/qemu-nobios
--- a/tools/ioemu/patches/qemu-nobios Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/qemu-nobios Mon Aug 07 18:28:50 2006 +0100
@@ -1,7 +1,8 @@ diff -r 77a889b0aef8 hw/pc.c
-diff -r 77a889b0aef8 hw/pc.c
---- a/hw/pc.c Wed Jun 14 19:29:20 2006 +0200
-+++ b/hw/pc.c Wed Jun 14 19:29:35 2006 +0200
-@@ -605,6 +605,8 @@ static void pc_init_ne2k_isa(NICInfo *nd
+Index: ioemu/hw/pc.c
+===================================================================
+--- ioemu.orig/hw/pc.c 2006-08-06 02:22:11.875161758 +0100
++++ ioemu/hw/pc.c 2006-08-06 02:22:35.588518336 +0100
+@@ -611,6 +611,8 @@
nb_ne2k++;
}
@@ -10,7 +11,7 @@ diff -r 77a889b0aef8 hw/pc.c
/* PC hardware initialisation */
static void pc_init1(uint64_t ram_size, int vga_ram_size, int boot_device,
DisplayState *ds, const char **fd_filename, int snapshot,
-@@ -612,10 +614,15 @@ static void pc_init1(uint64_t ram_size,
+@@ -618,10 +620,15 @@
const char *initrd_filename,
int pci_enabled)
{
@@ -25,9 +26,9 @@ diff -r 77a889b0aef8 hw/pc.c
int bios_size, isa_bios_size;
+#endif /* !NOBIOS */
PCIBus *pci_bus;
+ int piix3_devfn = -1;
CPUState *env;
- NICInfo *nd;
-@@ -647,6 +654,7 @@ static void pc_init1(uint64_t ram_size,
+@@ -654,6 +661,7 @@
cpu_register_physical_memory(0, ram_size, 0);
#endif
@@ -35,7 +36,7 @@ diff -r 77a889b0aef8 hw/pc.c
/* BIOS load */
bios_offset = ram_size + vga_ram_size;
vga_bios_offset = bios_offset + 256 * 1024;
-@@ -675,6 +683,7 @@ static void pc_init1(uint64_t ram_size,
+@@ -682,6 +690,7 @@
snprintf(buf, sizeof(buf), "%s/%s", bios_dir, VGABIOS_FILENAME);
}
ret = load_image(buf, phys_ram_base + vga_bios_offset);
@@ -43,7 +44,7 @@ diff -r 77a889b0aef8 hw/pc.c
/* setup basic memory access */
#ifndef CONFIG_DM /* HVM domain owns memory */
-@@ -682,6 +691,7 @@ static void pc_init1(uint64_t ram_size,
+@@ -689,6 +698,7 @@
vga_bios_offset | IO_MEM_ROM);
#endif
@@ -51,7 +52,7 @@ diff -r 77a889b0aef8 hw/pc.c
/* map the last 128KB of the BIOS in ISA space */
isa_bios_size = bios_size;
if (isa_bios_size > (128 * 1024))
-@@ -694,6 +704,7 @@ static void pc_init1(uint64_t ram_size,
+@@ -701,6 +711,7 @@
/* map all the bios at the top of memory */
cpu_register_physical_memory((uint32_t)(-bios_size),
bios_size, bios_offset | IO_MEM_ROM);
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/qemu-smp
--- a/tools/ioemu/patches/qemu-smp Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/qemu-smp Mon Aug 07 18:28:50 2006 +0100
@@ -1,17 +1,17 @@ Index: ioemu/vl.c
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-07-27 11:16:58.619371357 +0100
-+++ ioemu/vl.c 2006-07-27 11:16:58.823348777 +0100
-@@ -159,6 +159,8 @@
- #define MAX_CPUS 1
- #endif
+--- ioemu.orig/vl.c 2006-08-06 02:18:54.847125593 +0100
++++ ioemu/vl.c 2006-08-06 02:19:00.413505070 +0100
+@@ -158,6 +158,8 @@
+ int acpi_enabled = 1;
+ int fd_bootchk = 1;
+extern int vcpus;
+
int xc_handle;
char domain_name[1024] = { 'H','V', 'M', 'X', 'E', 'N', '-'};
-@@ -4636,6 +4638,7 @@
+@@ -5172,6 +5174,7 @@
"-m megs set virtual RAM size to megs MB [default=%d]\n"
"-smp n set the number of CPUs to 'n' [default=1]\n"
"-nographic disable graphical output and redirect serial I/Os
to console\n"
@@ -19,23 +19,23 @@ Index: ioemu/vl.c
#ifndef _WIN32
"-k language use keyboard layout (for example \"fr\" for
French)\n"
#endif
-@@ -4810,6 +4813,7 @@
- QEMU_OPTION_vnc,
+@@ -5342,6 +5345,7 @@
+ QEMU_OPTION_no_acpi,
QEMU_OPTION_d,
+ QEMU_OPTION_vcpus,
};
typedef struct QEMUOption {
-@@ -4887,6 +4891,7 @@
- { "cirrusvga", 0, QEMU_OPTION_cirrusvga },
+@@ -5423,6 +5427,7 @@
+ { "no-acpi", 0, QEMU_OPTION_no_acpi },
{ "d", HAS_ARG, QEMU_OPTION_d },
+ { "vcpus", 1, QEMU_OPTION_vcpus },
{ NULL },
};
-@@ -5509,6 +5514,10 @@
+@@ -6087,6 +6092,10 @@
domid = atoi(optarg);
fprintf(logfile, "domid: %d\n", domid);
break;
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/qemu-target-i386-dm
--- a/tools/ioemu/patches/qemu-target-i386-dm Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/qemu-target-i386-dm Mon Aug 07 18:28:50 2006 +0100
@@ -1,8 +1,8 @@ Index: ioemu/Makefile.target
Index: ioemu/Makefile.target
===================================================================
---- ioemu.orig/Makefile.target 2006-07-28 09:56:49.468301708 +0100
-+++ ioemu/Makefile.target 2006-07-28 09:56:58.486281629 +0100
-@@ -57,6 +57,8 @@
+--- ioemu.orig/Makefile.target 2006-08-06 02:14:09.794902973 +0100
++++ ioemu/Makefile.target 2006-08-06 02:21:42.270461924 +0100
+@@ -62,6 +62,8 @@
QEMU_SYSTEM=qemu-fast
endif
@@ -11,7 +11,7 @@ Index: ioemu/Makefile.target
ifdef CONFIG_USER_ONLY
PROGS=$(QEMU_USER)
else
-@@ -274,6 +276,9 @@
+@@ -291,6 +293,9 @@
OBJS+=gdbstub.o
endif
@@ -21,20 +21,20 @@ Index: ioemu/Makefile.target
all: $(PROGS)
$(QEMU_USER): $(OBJS)
-@@ -328,7 +333,7 @@
+@@ -349,7 +354,7 @@
ifeq ($(TARGET_BASE_ARCH), i386)
# Hardware support
VL_OBJS+= ide.o pckbd.o ps2.o vga.o $(SOUND_HW) dma.o $(AUDIODRV)
-VL_OBJS+= fdc.o mc146818rtc.o serial.o i8259.o i8254.o pcspk.o pc.o
+VL_OBJS+= fdc.o mc146818rtc.o serial.o i8254.o pcspk.o pc.o
- VL_OBJS+= cirrus_vga.o mixeng.o apic.o parallel.o
+ VL_OBJS+= cirrus_vga.o mixeng.o apic.o parallel.o acpi.o piix_pci.o
+ VL_OBJS+= usb-uhci.o
DEFINES += -DHAS_AUDIO
- endif
Index: ioemu/configure
===================================================================
---- ioemu.orig/configure 2006-07-28 09:56:49.469301595 +0100
-+++ ioemu/configure 2006-07-28 09:56:49.486299672 +0100
-@@ -359,6 +359,8 @@
+--- ioemu.orig/configure 2006-08-06 02:14:09.795902861 +0100
++++ ioemu/configure 2006-08-06 02:15:01.771108621 +0100
+@@ -373,6 +373,8 @@
if [ "$user" = "yes" ] ; then
target_list="i386-user arm-user armeb-user sparc-user ppc-user
mips-user mipsel-user $target_list"
fi
@@ -45,12 +45,12 @@ Index: ioemu/configure
fi
Index: ioemu/monitor.c
===================================================================
---- ioemu.orig/monitor.c 2006-07-28 09:56:49.472301255 +0100
-+++ ioemu/monitor.c 2006-07-28 09:56:58.720255164 +0100
-@@ -1142,6 +1142,10 @@
- "", "show host USB devices", },
- { "profile", "", do_info_profile,
+--- ioemu.orig/monitor.c 2006-08-06 02:14:49.574468309 +0100
++++ ioemu/monitor.c 2006-08-06 02:21:16.172371202 +0100
+@@ -1262,6 +1262,10 @@
"", "show profiling information", },
+ { "capture", "", do_info_capture,
+ "show capture information" },
+#ifdef CONFIG_DM
+ { "hvmiopage", "", sp_info,
+ "", "show HVM device model shared page info", },
@@ -60,8 +60,8 @@ Index: ioemu/monitor.c
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-07-28 09:56:49.475300916 +0100
-+++ ioemu/vl.c 2006-07-28 09:56:58.917232883 +0100
+--- ioemu.orig/vl.c 2006-08-06 02:14:09.802902081 +0100
++++ ioemu/vl.c 2006-08-06 02:21:16.369349244 +0100
@@ -87,7 +87,7 @@
#include "exec-all.h"
@@ -71,7 +71,7 @@ Index: ioemu/vl.c
//#define DEBUG_UNUSED_IOPORT
//#define DEBUG_IOPORT
-@@ -4382,7 +4382,7 @@
+@@ -4918,7 +4918,7 @@
static QEMUResetEntry *first_reset_entry;
static int reset_requested;
@@ -80,7 +80,7 @@ Index: ioemu/vl.c
static int powerdown_requested;
void qemu_register_reset(QEMUResetHandler *func, void *opaque)
-@@ -4534,6 +4534,7 @@
+@@ -5067,6 +5067,7 @@
qemu_get_clock(rt_clock));
}
@@ -88,7 +88,7 @@ Index: ioemu/vl.c
static CPUState *cur_cpu;
int main_loop(void)
-@@ -4608,6 +4609,7 @@
+@@ -5141,6 +5142,7 @@
cpu_disable_ticks();
return ret;
}
@@ -98,18 +98,18 @@ Index: ioemu/vl.c
{
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2006-07-28 09:56:49.281322859 +0100
-+++ ioemu/vl.h 2006-07-28 09:56:58.917232883 +0100
-@@ -38,6 +38,8 @@
+--- ioemu.orig/vl.h 2006-08-06 02:13:56.733359091 +0100
++++ ioemu/vl.h 2006-08-06 02:21:16.369349244 +0100
+@@ -37,6 +37,8 @@
+ #include <unistd.h>
#include <fcntl.h>
#include <sys/stat.h>
- #include "audio/audio.h"
+#include "xenctrl.h"
+#include "xs.h"
#ifndef O_LARGEFILE
#define O_LARGEFILE 0
-@@ -131,6 +133,11 @@
+@@ -139,6 +141,11 @@
void main_loop_wait(int timeout);
@@ -121,7 +121,7 @@ Index: ioemu/vl.h
extern int ram_size;
extern int bios_size;
extern int rtc_utc;
-@@ -814,6 +821,7 @@
+@@ -873,6 +880,7 @@
uint32_t pic_intack_read(PicState2 *s);
void pic_info(void);
void irq_info(void);
@@ -132,7 +132,7 @@ Index: ioemu/target-i386-dm/cpu.h
Index: ioemu/target-i386-dm/cpu.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ ioemu/target-i386-dm/cpu.h 2006-07-28 09:56:58.572271903 +0100
++++ ioemu/target-i386-dm/cpu.h 2006-08-06 02:21:16.023387810 +0100
@@ -0,0 +1,86 @@
+/*
+ * i386 virtual CPU header
@@ -223,7 +223,7 @@ Index: ioemu/target-i386-dm/exec-dm.c
Index: ioemu/target-i386-dm/exec-dm.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ ioemu/target-i386-dm/exec-dm.c 2006-07-28 09:58:22.882736989 +0100
++++ ioemu/target-i386-dm/exec-dm.c 2006-08-06 02:21:16.024387698 +0100
@@ -0,0 +1,516 @@
+/*
+ * virtual page mapping and translated block handling
@@ -744,7 +744,7 @@ Index: ioemu/target-i386-dm/helper2.c
Index: ioemu/target-i386-dm/helper2.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ ioemu/target-i386-dm/helper2.c 2006-07-28 09:56:58.312301309 +0100
++++ ioemu/target-i386-dm/helper2.c 2006-08-06 02:21:15.779415007 +0100
@@ -0,0 +1,464 @@
+/*
+ * i386 helpers (without register variable usage)
@@ -1213,7 +1213,7 @@ Index: ioemu/target-i386-dm/i8259-dm.c
Index: ioemu/target-i386-dm/i8259-dm.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ ioemu/target-i386-dm/i8259-dm.c 2006-07-28 09:56:49.492298993 +0100
++++ ioemu/target-i386-dm/i8259-dm.c 2006-08-06 02:15:01.777107952 +0100
@@ -0,0 +1,107 @@
+/* Xen 8259 stub for interrupt controller emulation
+ *
@@ -1325,7 +1325,7 @@ Index: ioemu/target-i386-dm/qemu-dm.debu
Index: ioemu/target-i386-dm/qemu-dm.debug
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ ioemu/target-i386-dm/qemu-dm.debug 2006-07-28 09:56:49.493298880 +0100
++++ ioemu/target-i386-dm/qemu-dm.debug 2006-08-06 02:15:01.778107841 +0100
@@ -0,0 +1,5 @@
+#!/bin/sh
+
@@ -1335,7 +1335,7 @@ Index: ioemu/target-i386-dm/qemu-ifup
Index: ioemu/target-i386-dm/qemu-ifup
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ ioemu/target-i386-dm/qemu-ifup 2006-07-28 09:56:49.493298880 +0100
++++ ioemu/target-i386-dm/qemu-ifup 2006-08-06 02:15:01.778107841 +0100
@@ -0,0 +1,10 @@
+#!/bin/sh
+
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/qemu-timer
--- a/tools/ioemu/patches/qemu-timer Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/qemu-timer Mon Aug 07 18:28:50 2006 +0100
@@ -1,8 +1,8 @@ Index: ioemu/vl.c
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-07-12 11:35:02.126650330 +0100
-+++ ioemu/vl.c 2006-07-12 11:35:02.273631916 +0100
-@@ -861,6 +861,16 @@
+--- ioemu.orig/vl.c 2006-08-06 02:22:53.925474246 +0100
++++ ioemu/vl.c 2006-08-06 02:22:56.618174081 +0100
+@@ -824,6 +824,16 @@
}
}
@@ -19,16 +19,16 @@ Index: ioemu/vl.c
static void timer_save(QEMUFile *f, void *opaque)
{
if (cpu_ticks_enabled) {
-@@ -977,6 +987,8 @@
+@@ -940,6 +950,8 @@
#endif /* !defined(_WIN32) */
+#endif /* !CONFIG_DM */
+
- static void init_timers(void)
+ static void init_timer_alarm(void)
{
- rt_clock = qemu_new_clock(QEMU_TIMER_REALTIME);
-@@ -1011,12 +1023,15 @@
+ #ifdef _WIN32
+@@ -971,12 +983,15 @@
pit_min_timer_count = ((uint64_t)10000 * PIT_FREQ) / 1000000;
#else
{
@@ -44,7 +44,7 @@ Index: ioemu/vl.c
/* timer signal */
sigfillset(&act.sa_mask);
act.sa_flags = 0;
-@@ -1062,6 +1077,7 @@
+@@ -1022,6 +1037,7 @@
pit_min_timer_count = ((uint64_t)itv.it_interval.tv_usec *
PIT_FREQ) / 1000000;
}
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/serial-non-block
--- a/tools/ioemu/patches/serial-non-block Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/serial-non-block Mon Aug 07 18:28:50 2006 +0100
@@ -1,8 +1,8 @@ Index: ioemu/vl.c
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-07-12 11:35:02.880555879 +0100
-+++ ioemu/vl.c 2006-07-12 11:35:03.004540346 +0100
-@@ -1215,19 +1215,34 @@
+--- ioemu.orig/vl.c 2006-08-06 02:23:29.827472129 +0100
++++ ioemu/vl.c 2006-08-06 02:23:36.856688561 +0100
+@@ -1175,19 +1175,34 @@
static int unix_write(int fd, const uint8_t *buf, int len1)
{
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/series
--- a/tools/ioemu/patches/series Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/series Mon Aug 07 18:28:50 2006 +0100
@@ -26,7 +26,6 @@ serial-non-block
serial-non-block
ide-hd-multithread
domain-timeoffset
-sdl-mouse-invisible-wall
acpi-support
acpi-timer-support
acpi-poweroff-support
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/shadow-vram
--- a/tools/ioemu/patches/shadow-vram Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/shadow-vram Mon Aug 07 18:28:50 2006 +0100
@@ -1,8 +1,8 @@ Index: ioemu/hw/vga.c
Index: ioemu/hw/vga.c
===================================================================
---- ioemu.orig/hw/vga.c 2006-07-26 15:17:39.821306797 +0100
-+++ ioemu/hw/vga.c 2006-07-26 15:17:40.017285449 +0100
-@@ -1287,6 +1287,105 @@
+--- ioemu.orig/hw/vga.c 2006-08-06 02:23:29.824472464 +0100
++++ ioemu/hw/vga.c 2006-08-06 02:23:33.873021159 +0100
+@@ -1359,6 +1359,105 @@
}
}
@@ -108,7 +108,7 @@ Index: ioemu/hw/vga.c
/*
* graphic modes
*/
-@@ -1382,6 +1481,11 @@
+@@ -1454,6 +1553,11 @@
printf("w=%d h=%d v=%d line_offset=%d cr[0x09]=0x%02x cr[0x17]=0x%02x
linecmp=%d sr[0x01]=0x%02x\n",
width, height, v, line_offset, s->cr[9], s->cr[0x17],
s->line_compare, s->sr[0x01]);
#endif
@@ -120,7 +120,7 @@ Index: ioemu/hw/vga.c
addr1 = (s->start_addr * 4);
bwidth = width * 4;
y_start = -1;
-@@ -1830,6 +1934,14 @@
+@@ -1889,6 +1993,14 @@
vga_reset(s);
@@ -137,9 +137,9 @@ Index: ioemu/hw/vga.c
s->vram_size = vga_ram_size;
Index: ioemu/hw/vga_int.h
===================================================================
---- ioemu.orig/hw/vga_int.h 2006-07-26 15:17:39.822306688 +0100
-+++ ioemu/hw/vga_int.h 2006-07-26 15:17:40.017285449 +0100
-@@ -76,6 +76,7 @@
+--- ioemu.orig/hw/vga_int.h 2006-08-06 02:23:29.824472464 +0100
++++ ioemu/hw/vga_int.h 2006-08-06 02:23:33.874021048 +0100
+@@ -79,6 +79,7 @@
#define VGA_STATE_COMMON \
uint8_t *vram_ptr; \
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/shared-vram
--- a/tools/ioemu/patches/shared-vram Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/shared-vram Mon Aug 07 18:28:50 2006 +0100
@@ -1,7 +1,7 @@ Index: ioemu/hw/cirrus_vga.c
Index: ioemu/hw/cirrus_vga.c
===================================================================
---- ioemu.orig/hw/cirrus_vga.c 2006-07-27 11:16:53.059986783 +0100
-+++ ioemu/hw/cirrus_vga.c 2006-07-27 11:16:59.923227020 +0100
+--- ioemu.orig/hw/cirrus_vga.c 2006-08-06 01:55:02.822674718 +0100
++++ ioemu/hw/cirrus_vga.c 2006-08-06 02:23:29.822472686 +0100
@@ -28,6 +28,9 @@
*/
#include "vl.h"
@@ -176,9 +176,9 @@ Index: ioemu/hw/cirrus_vga.c
}
Index: ioemu/hw/pc.c
===================================================================
---- ioemu.orig/hw/pc.c 2006-07-27 11:16:59.759245173 +0100
-+++ ioemu/hw/pc.c 2006-07-27 11:16:59.924226909 +0100
-@@ -783,14 +783,14 @@
+--- ioemu.orig/hw/pc.c 2006-08-06 02:23:07.875919141 +0100
++++ ioemu/hw/pc.c 2006-08-06 02:23:29.823472575 +0100
+@@ -790,14 +790,14 @@
if (cirrus_vga_enabled) {
if (pci_enabled) {
pci_cirrus_vga_init(pci_bus,
@@ -198,9 +198,9 @@ Index: ioemu/hw/pc.c
Index: ioemu/hw/vga.c
===================================================================
---- ioemu.orig/hw/vga.c 2006-07-27 11:16:59.103317784 +0100
-+++ ioemu/hw/vga.c 2006-07-27 11:16:59.925226798 +0100
-@@ -1799,6 +1799,7 @@
+--- ioemu.orig/hw/vga.c 2006-08-06 02:22:46.606290142 +0100
++++ ioemu/hw/vga.c 2006-08-06 02:23:29.824472464 +0100
+@@ -1858,6 +1858,7 @@
/* TODO: add vbe support if enabled */
}
@@ -208,7 +208,7 @@ Index: ioemu/hw/vga.c
void vga_common_init(VGAState *s, DisplayState *ds, uint8_t *vga_ram_base,
unsigned long vga_ram_offset, int vga_ram_size)
{
-@@ -1829,7 +1830,7 @@
+@@ -1888,7 +1889,7 @@
vga_reset(s);
@@ -217,7 +217,7 @@ Index: ioemu/hw/vga.c
s->vram_offset = vga_ram_offset;
s->vram_size = vga_ram_size;
s->ds = ds;
-@@ -1943,6 +1944,31 @@
+@@ -2002,6 +2003,31 @@
return 0;
}
@@ -251,9 +251,9 @@ Index: ioemu/hw/vga.c
Index: ioemu/hw/vga_int.h
===================================================================
---- ioemu.orig/hw/vga_int.h 2006-07-27 11:16:57.447501084 +0100
-+++ ioemu/hw/vga_int.h 2006-07-27 11:16:59.925226798 +0100
-@@ -166,5 +166,6 @@
+--- ioemu.orig/hw/vga_int.h 2006-08-06 02:14:09.797902638 +0100
++++ ioemu/hw/vga_int.h 2006-08-06 02:23:29.824472464 +0100
+@@ -169,5 +169,6 @@
unsigned int color0, unsigned int color1,
unsigned int color_xor);
@@ -262,9 +262,9 @@ Index: ioemu/hw/vga_int.h
extern const uint8_t gr_mask[16];
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-07-27 11:16:59.762244841 +0100
-+++ ioemu/vl.c 2006-07-27 11:16:59.928226466 +0100
-@@ -5149,6 +5149,78 @@
+--- ioemu.orig/vl.c 2006-08-06 02:23:07.878918807 +0100
++++ ioemu/vl.c 2006-08-06 02:23:29.827472129 +0100
+@@ -5693,6 +5693,78 @@
#define MAX_NET_CLIENTS 32
@@ -345,9 +345,9 @@ Index: ioemu/vl.c
#ifdef CONFIG_GDBSTUB
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2006-07-27 11:16:59.549268417 +0100
-+++ ioemu/vl.h 2006-07-27 11:16:59.929226356 +0100
-@@ -136,6 +136,13 @@
+--- ioemu.orig/vl.h 2006-08-06 02:23:02.271543880 +0100
++++ ioemu/vl.h 2006-08-06 02:23:29.828472018 +0100
+@@ -144,6 +144,13 @@
void main_loop_wait(int timeout);
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/support-xm-console
--- a/tools/ioemu/patches/support-xm-console Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/support-xm-console Mon Aug 07 18:28:50 2006 +0100
@@ -1,8 +1,8 @@ Index: ioemu/vl.c
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-07-27 11:16:59.384286681 +0100
-+++ ioemu/vl.c 2006-07-27 11:16:59.614261222 +0100
-@@ -1535,26 +1535,65 @@
+--- ioemu.orig/vl.c 2006-08-06 02:22:59.254880158 +0100
++++ ioemu/vl.c 2006-08-06 02:23:05.216215627 +0100
+@@ -1536,26 +1536,65 @@
return chr;
}
@@ -77,7 +77,7 @@ Index: ioemu/vl.c
return qemu_chr_open_fd(master_fd, master_fd);
}
-@@ -5298,7 +5337,9 @@
+@@ -5868,7 +5907,9 @@
break;
case QEMU_OPTION_nographic:
pstrcpy(monitor_device, sizeof(monitor_device), "stdio");
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/vnc-access-monitor-vt
--- a/tools/ioemu/patches/vnc-access-monitor-vt Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/vnc-access-monitor-vt Mon Aug 07 18:28:50 2006 +0100
@@ -1,7 +1,7 @@ Index: ioemu/vnc.c
Index: ioemu/vnc.c
===================================================================
---- ioemu.orig/vnc.c 2006-07-26 14:33:57.906165040 +0100
-+++ ioemu/vnc.c 2006-07-26 14:44:09.972552689 +0100
+--- ioemu.orig/vnc.c 2006-08-07 17:44:33.084748631 +0100
++++ ioemu/vnc.c 2006-08-07 17:44:33.224733389 +0100
@@ -32,6 +32,10 @@
#include "vnc_keysym.h"
#include "keymaps.c"
@@ -13,15 +13,16 @@ Index: ioemu/vnc.c
typedef struct Buffer
{
size_t capacity;
-@@ -64,6 +68,7 @@
- Buffer output;
- Buffer input;
- kbd_layout_t *kbd_layout;
+@@ -95,6 +99,8 @@
+ int visible_h;
+
+ int slow_client;
++
+ int ctl_keys; /* Ctrl+Alt starts calibration */
+ };
- VncReadEvent *read_handler;
- size_t read_handler_expect;
-@@ -679,16 +684,80 @@
+ #define DIRTY_PIXEL_BITS 64
+@@ -794,16 +800,80 @@
static void do_key_event(VncState *vs, int down, uint32_t sym)
{
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/vnc-cleanup
--- a/tools/ioemu/patches/vnc-cleanup Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/vnc-cleanup Mon Aug 07 18:28:50 2006 +0100
@@ -1,8 +1,8 @@ Index: ioemu/vnc.c
Index: ioemu/vnc.c
===================================================================
---- ioemu.orig/vnc.c 2006-08-04 10:42:19.575024607 +0100
-+++ ioemu/vnc.c 2006-08-04 10:42:26.918176009 +0100
-@@ -83,13 +83,16 @@
+--- ioemu.orig/vnc.c 2006-08-07 17:42:21.888055419 +0100
++++ ioemu/vnc.c 2006-08-07 17:42:28.001363557 +0100
+@@ -143,13 +143,16 @@
static void vnc_dpy_update(DisplayState *ds, int x, int y, int w, int h)
{
VncState *vs = ds->opaque;
@@ -17,12 +17,12 @@ Index: ioemu/vnc.c
for (; y < h; y++)
- for (i = 0; i < w; i += 16)
-- vs->dirty_row[y] |= (1ULL << ((x + i) / 16));
+- vnc_set_bit(vs->dirty_row[y], (x + i) / 16);
+ vs->dirty_row[y] |= mask;
}
static void vnc_framebuffer_update(VncState *vs, int x, int y, int w, int h,
-@@ -262,6 +265,7 @@
+@@ -373,6 +376,7 @@
static void vnc_update_client(void *opaque)
{
VncState *vs = opaque;
@@ -30,16 +30,16 @@ Index: ioemu/vnc.c
if (vs->need_update && vs->csock != -1) {
int y;
-@@ -282,7 +286,7 @@
+@@ -390,7 +394,7 @@
row = vs->ds->data;
old_row = vs->old_data;
- for (y = 0; y < vs->height; y++) {
+ for (y = 0; y < vs->ds->height; y++) {
- if (vs->dirty_row[y] & width_mask) {
+ if (vnc_and_bits(vs->dirty_row[y], width_mask, VNC_DIRTY_WORDS)) {
int x;
char *ptr, *old_ptr;
-@@ -307,10 +311,8 @@
+@@ -415,10 +419,8 @@
old_row += vs->ds->linesize;
}
@@ -52,7 +52,7 @@ Index: ioemu/vnc.c
/* Count rectangles */
n_rectangles = 0;
-@@ -348,7 +350,9 @@
+@@ -456,7 +458,9 @@
vnc_flush(vs);
}
@@ -65,9 +65,9 @@ Index: ioemu/vnc.c
static void vnc_timer_init(VncState *vs)
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-08-04 10:42:26.723198541 +0100
-+++ ioemu/vl.c 2006-08-04 10:42:26.921175663 +0100
-@@ -4589,10 +4589,10 @@
+--- ioemu.orig/vl.c 2006-08-07 17:42:27.807385506 +0100
++++ ioemu/vl.c 2006-08-07 17:42:28.004363230 +0100
+@@ -5120,10 +5120,10 @@
/* XXX: better handling of removal */
for(ioh = first_io_handler; ioh != NULL; ioh = ioh_next) {
ioh_next = ioh->next;
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/vnc-fixes
--- a/tools/ioemu/patches/vnc-fixes Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/vnc-fixes Mon Aug 07 18:28:50 2006 +0100
@@ -1,10 +1,10 @@ Index: ioemu/vl.c
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-08-04 10:57:29.116972627 +0100
-+++ ioemu/vl.c 2006-08-04 10:57:29.186964560 +0100
-@@ -6026,8 +6026,10 @@
- kernel_filename, kernel_cmdline, initrd_filename,
- timeoffset);
+--- ioemu.orig/vl.c 2006-08-07 17:42:28.004363230 +0100
++++ ioemu/vl.c 2006-08-07 17:43:16.361100898 +0100
+@@ -6516,8 +6516,10 @@
+ }
+ }
- gui_timer = qemu_new_timer(rt_clock, gui_update, NULL);
- qemu_mod_timer(gui_timer, qemu_get_clock(rt_clock));
@@ -17,8 +17,8 @@ Index: ioemu/vl.c
if (use_gdbstub) {
Index: ioemu/vnc.c
===================================================================
---- ioemu.orig/vnc.c 2006-08-04 10:57:29.114972858 +0100
-+++ ioemu/vnc.c 2006-08-04 10:57:29.187964445 +0100
+--- ioemu.orig/vnc.c 2006-08-07 17:42:28.001363557 +0100
++++ ioemu/vnc.c 2006-08-07 17:43:33.593225293 +0100
@@ -3,6 +3,7 @@
*
* Copyright (C) 2006 Anthony Liguori <anthony@xxxxxxxxxxxxx>
@@ -27,20 +27,32 @@ Index: ioemu/vnc.c
*
* Permission is hereby granted, free of charge, to any person obtaining a
copy
* of this software and associated documentation files (the "Software"), to
deal
-@@ -51,7 +52,11 @@
+@@ -50,9 +51,11 @@
+ uint32_t *last_fg,
+ int *has_bg, int *has_fg);
+
++#if 0
+ #define VNC_MAX_WIDTH 2048
+ #define VNC_MAX_HEIGHT 2048
+ #define VNC_DIRTY_WORDS (VNC_MAX_WIDTH / (16 * 32))
++#endif
+
+ struct VncState
+ {
+@@ -63,7 +66,11 @@
int need_update;
int width;
int height;
-- uint64_t dirty_row[768];
+- uint32_t dirty_row[VNC_MAX_HEIGHT][VNC_DIRTY_WORDS];
+ uint64_t *dirty_row; /* screen regions which are possibly dirty */
+ int dirty_pixel_shift;
+ uint64_t *update_row; /* outstanding updates */
+ int has_update; /* there's outstanding updates in the
+ * visible area */
char *old_data;
- int depth;
+ int depth; /* internal VNC frame buffer byte per pixel */
int has_resize;
-@@ -62,13 +67,25 @@
+@@ -81,13 +88,25 @@
VncReadEvent *read_handler;
size_t read_handler_expect;
@@ -67,7 +79,7 @@ Index: ioemu/vnc.c
*/
static void vnc_write(VncState *vs, const void *data, size_t len);
-@@ -77,22 +94,38 @@
+@@ -96,9 +115,12 @@
static void vnc_write_u16(VncState *vs, uint16_t value);
static void vnc_write_u8(VncState *vs, uint8_t value);
static void vnc_flush(VncState *vs);
@@ -76,6 +88,16 @@ Index: ioemu/vnc.c
static void vnc_client_read(void *opaque);
+static void framebuffer_set_updated(VncState *vs, int x, int y, int w, int h);
++#if 0
+ static inline void vnc_set_bit(uint32_t *d, int k)
+ {
+ d[k >> 5] |= 1 << (k & 0x1f);
+@@ -139,20 +161,35 @@
+ }
+ return 0;
+ }
++#endif
+
-static void vnc_dpy_update(DisplayState *ds, int x, int y, int w, int h)
+static void set_bits_in_row(VncState *vs, uint64_t *row,
+ int x, int y, int w, int h)
@@ -112,7 +134,7 @@ Index: ioemu/vnc.c
}
static void vnc_framebuffer_update(VncState *vs, int x, int y, int w, int h,
-@@ -109,16 +142,23 @@
+@@ -169,16 +206,23 @@
static void vnc_dpy_resize(DisplayState *ds, int w, int h)
{
VncState *vs = ds->opaque;
@@ -138,7 +160,7 @@ Index: ioemu/vnc.c
ds->width = w;
ds->height = h;
ds->linesize = w * vs->depth;
-@@ -131,6 +171,10 @@
+@@ -191,6 +235,10 @@
vs->width = ds->width;
vs->height = ds->height;
}
@@ -148,8 +170,8 @@ Index: ioemu/vnc.c
+ framebuffer_set_updated(vs, 0, 0, ds->width, ds->height);
}
- static void send_framebuffer_update_raw(VncState *vs, int x, int y, int w,
int h)
-@@ -215,8 +259,20 @@
+ /* fastest code */
+@@ -326,8 +374,20 @@
int y = 0;
int pitch = ds->linesize;
VncState *vs = ds->opaque;
@@ -171,7 +193,7 @@ Index: ioemu/vnc.c
if (dst_y > src_y) {
y = h - 1;
-@@ -238,31 +294,34 @@
+@@ -349,31 +409,34 @@
old_row += pitch;
}
@@ -202,11 +224,11 @@ Index: ioemu/vnc.c
- for (h = 1; h < (vs->height - y); h++) {
+ for (h = 1; y + h < maxy; h++) {
int tmp_x;
-- if (!(vs->dirty_row[y + h] & (1ULL << last_x)))
+- if (!vnc_get_bit(vs->dirty_row[y + h], last_x))
+ if (!(vs->update_row[y + h] & (1ULL << last_x)))
break;
for (tmp_x = last_x; tmp_x < x; tmp_x++)
-- vs->dirty_row[y + h] &= ~(1ULL << tmp_x);
+- vnc_clear_bit(vs->dirty_row[y + h], tmp_x);
+ vs->update_row[y + h] &= ~(1ULL << tmp_x);
}
@@ -218,30 +240,41 @@ Index: ioemu/vnc.c
{
VncState *vs = opaque;
int64_t now = qemu_get_clock(rt_clock);
-@@ -274,11 +333,12 @@
- uint64_t width_mask;
+@@ -382,12 +445,16 @@
+ int y;
+ char *row;
+ char *old_row;
+- uint32_t width_mask[VNC_DIRTY_WORDS];
++ uint64_t width_mask;
int n_rectangles;
int saved_offset;
- int has_dirty = 0;
--
-- width_mask = (1ULL << (vs->width / 16)) - 1;
+ int maxx, maxy;
+ int tile_bytes = vs->depth * DP2X(vs, 1);
-- if (vs->width == 1024)
+- vnc_set_bits(width_mask, (vs->width / 16), VNC_DIRTY_WORDS);
+ if (vs->width != DP2X(vs, DIRTY_PIXEL_BITS))
+ width_mask = (1ULL << X2DP_UP(vs, vs->ds->width)) - 1;
+ else
- width_mask = ~(0ULL);
++ width_mask = ~(0ULL);
/* Walk through the dirty map and eliminate tiles that
-@@ -294,16 +354,18 @@
+ really aren't dirty */
+@@ -395,23 +462,25 @@
+ old_row = vs->old_data;
+
+ for (y = 0; y < vs->ds->height; y++) {
+- if (vnc_and_bits(vs->dirty_row[y], width_mask, VNC_DIRTY_WORDS)) {
++ if (vs->dirty_row[y] & width_mask) {
+ int x;
+ char *ptr, *old_ptr;
+
ptr = row;
old_ptr = old_row;
- for (x = 0; x < vs->ds->width; x += 16) {
- if (memcmp(old_ptr, ptr, 16 * vs->depth) == 0) {
-- vs->dirty_row[y] &= ~(1ULL << (x / 16));
+- vnc_clear_bit(vs->dirty_row[y], (x / 16));
- } else {
- has_dirty = 1;
- memcpy(old_ptr, ptr, 16 * vs->depth);
@@ -262,7 +295,7 @@ Index: ioemu/vnc.c
}
}
-@@ -311,7 +373,8 @@
+@@ -419,7 +488,8 @@
old_row += vs->ds->linesize;
}
@@ -272,7 +305,7 @@ Index: ioemu/vnc.c
goto out;
/* Count rectangles */
-@@ -321,40 +384,61 @@
+@@ -429,40 +499,61 @@
saved_offset = vs->output.offset;
vnc_write_u16(vs, 0);
@@ -288,7 +321,7 @@ Index: ioemu/vnc.c
int x;
int last_x = -1;
- for (x = 0; x < vs->width / 16; x++) {
-- if (vs->dirty_row[y] & (1ULL << x)) {
+- if (vnc_get_bit(vs->dirty_row[y], x)) {
- if (last_x == -1) {
+ for (x = X2DP_DOWN(vs, vs->visible_x);
+ x < X2DP_UP(vs, maxx); x++) {
@@ -296,7 +329,7 @@ Index: ioemu/vnc.c
+ if (last_x == -1)
last_x = x;
- }
-- vs->dirty_row[y] &= ~(1ULL << x);
+- vnc_clear_bit(vs->dirty_row[y], x);
+ vs->update_row[y] &= ~(1ULL << x);
} else {
if (last_x != -1) {
@@ -346,7 +379,7 @@ Index: ioemu/vnc.c
static void vnc_timer_init(VncState *vs)
{
if (vs->timer == NULL) {
-@@ -365,8 +449,6 @@
+@@ -473,8 +564,6 @@
static void vnc_dpy_refresh(DisplayState *ds)
{
@@ -355,7 +388,7 @@ Index: ioemu/vnc.c
vga_hw_update();
}
-@@ -402,7 +484,7 @@
+@@ -510,7 +599,7 @@
static void buffer_reset(Buffer *buffer)
{
@@ -364,7 +397,7 @@ Index: ioemu/vnc.c
}
static void buffer_append(Buffer *buffer, const void *data, size_t len)
-@@ -443,12 +525,12 @@
+@@ -551,12 +640,12 @@
if (!ret)
return;
@@ -380,7 +413,7 @@ Index: ioemu/vnc.c
}
static void vnc_read_when(VncState *vs, VncReadEvent *func, size_t expecting)
-@@ -480,11 +562,11 @@
+@@ -588,11 +677,11 @@
return;
if (!ret) {
@@ -395,7 +428,7 @@ Index: ioemu/vnc.c
}
}
-@@ -492,9 +574,9 @@
+@@ -600,9 +689,9 @@
{
buffer_reserve(&vs->output, len);
@@ -408,7 +441,7 @@ Index: ioemu/vnc.c
buffer_append(&vs->output, data, len);
}
-@@ -616,24 +698,25 @@
+@@ -724,22 +813,25 @@
do_key_event(vs, down, sym);
}
@@ -430,10 +463,8 @@ Index: ioemu/vnc.c
- char *old_row = vs->old_data + y_position * vs->ds->linesize;
-
- for (i = 0; i < h; i++) {
-- vs->dirty_row[y_position + i] = (1ULL << (vs->ds->width / 16)) - 1;
-- if (vs->ds->width == 1024) {
-- vs->dirty_row[y_position + i] = ~(0ULL);
-- }
+- vnc_set_bits(vs->dirty_row[y_position + i],
+- (vs->ds->width / 16), VNC_DIRTY_WORDS);
- memset(old_row, 42, vs->ds->width * vs->depth);
- old_row += vs->ds->linesize;
- }
@@ -447,8 +478,8 @@ Index: ioemu/vnc.c
}
static void set_encodings(VncState *vs, int32_t *encodings, size_t
n_encodings)
-@@ -690,8 +773,6 @@
- vnc_client_error(vs);
+@@ -845,8 +937,6 @@
+ }
vnc_dpy_resize(vs->ds, vs->ds->width, vs->ds->height);
- memset(vs->dirty_row, 0xFF, sizeof(vs->dirty_row));
@@ -456,7 +487,7 @@ Index: ioemu/vnc.c
vga_hw_invalidate();
vga_hw_update();
-@@ -848,11 +929,11 @@
+@@ -1012,11 +1102,11 @@
vnc_write(vs, "RFB 003.003\n", 12);
vnc_flush(vs);
vnc_read_when(vs, protocol_version, 12);
@@ -470,7 +501,7 @@ Index: ioemu/vnc.c
}
}
-@@ -909,17 +990,15 @@
+@@ -1073,17 +1163,15 @@
exit(1);
}
@@ -493,9 +524,9 @@ Index: ioemu/vnc.c
}
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2006-08-04 10:57:28.925994639 +0100
-+++ ioemu/vl.h 2006-08-04 10:57:29.187964445 +0100
-@@ -302,6 +302,7 @@
+--- ioemu.orig/vl.h 2006-08-07 17:42:27.807385506 +0100
++++ ioemu/vl.h 2006-08-07 17:43:16.361100898 +0100
+@@ -318,6 +318,7 @@
int is_graphic_console(void);
CharDriverState *text_console_init(DisplayState *ds);
void console_select(unsigned int index);
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/vnc-start-vncviewer
--- a/tools/ioemu/patches/vnc-start-vncviewer Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/vnc-start-vncviewer Mon Aug 07 18:28:50 2006 +0100
@@ -1,8 +1,8 @@ Index: ioemu/vnc.c
Index: ioemu/vnc.c
===================================================================
---- ioemu.orig/vnc.c 2006-08-04 10:57:29.187964445 +0100
-+++ ioemu/vnc.c 2006-08-04 10:57:29.351945544 +0100
-@@ -1002,3 +1002,25 @@
+--- ioemu.orig/vnc.c 2006-08-07 17:44:32.852773890 +0100
++++ ioemu/vnc.c 2006-08-07 17:44:32.915767031 +0100
+@@ -1175,3 +1175,25 @@
vnc_dpy_resize(vs->ds, 640, 400);
}
@@ -30,9 +30,9 @@ Index: ioemu/vnc.c
+}
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-08-04 10:57:29.186964560 +0100
-+++ ioemu/vl.c 2006-08-04 10:57:29.354945198 +0100
-@@ -121,6 +121,7 @@
+--- ioemu.orig/vl.c 2006-08-07 17:44:32.851773999 +0100
++++ ioemu/vl.c 2006-08-07 17:44:32.918766704 +0100
+@@ -120,6 +120,7 @@
int bios_size;
static DisplayState display_state;
int nographic;
@@ -40,7 +40,7 @@ Index: ioemu/vl.c
const char* keyboard_layout = NULL;
int64_t ticks_per_sec;
int boot_device = 'c';
-@@ -4804,6 +4805,7 @@
+@@ -5340,6 +5341,7 @@
#endif
"-loadvm file start right away with a saved state (loadvm in
monitor)\n"
"-vnc display start a VNC server on display\n"
@@ -48,15 +48,15 @@ Index: ioemu/vl.c
"-timeoffset time offset (in seconds) from local time\n"
"-acpi disable or enable ACPI of HVM domain \n"
"\n"
-@@ -4893,6 +4895,7 @@
- QEMU_OPTION_usbdevice,
- QEMU_OPTION_smp,
- QEMU_OPTION_vnc,
+@@ -5428,6 +5430,7 @@
+ QEMU_OPTION_vcpus,
+ QEMU_OPTION_timeoffset,
+ QEMU_OPTION_acpi,
+ QEMU_OPTION_vncviewer,
+ };
- QEMU_OPTION_d,
- QEMU_OPTION_vcpus,
-@@ -4969,6 +4972,7 @@
+ typedef struct QEMUOption {
+@@ -5502,6 +5505,7 @@
{ "usbdevice", HAS_ARG, QEMU_OPTION_usbdevice },
{ "smp", HAS_ARG, QEMU_OPTION_smp },
{ "vnc", HAS_ARG, QEMU_OPTION_vnc },
@@ -64,7 +64,7 @@ Index: ioemu/vl.c
/* temporary options */
{ "usb", 0, QEMU_OPTION_usb },
-@@ -5300,6 +5304,7 @@
+@@ -5868,6 +5872,7 @@
#endif
snapshot = 0;
nographic = 0;
@@ -72,17 +72,17 @@ Index: ioemu/vl.c
kernel_filename = NULL;
kernel_cmdline = "";
#ifdef TARGET_PPC
-@@ -5669,6 +5674,9 @@
- exit(1);
- }
- break;
+@@ -6262,6 +6267,9 @@
+ case QEMU_OPTION_acpi:
+ acpi_enabled = 1;
+ break;
+ case QEMU_OPTION_vncviewer:
+ vncviewer++;
+ break;
- case QEMU_OPTION_domainname:
- strncat(domain_name, optarg, sizeof(domain_name) - 20);
- break;
-@@ -5933,6 +5941,8 @@
+ }
+ }
+ }
+@@ -6458,6 +6466,8 @@
dumb_display_init(ds);
} else if (vnc_display != -1) {
vnc_display_init(ds, vnc_display);
@@ -93,9 +93,9 @@ Index: ioemu/vl.c
sdl_display_init(ds, full_screen);
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2006-08-04 10:57:29.187964445 +0100
-+++ ioemu/vl.h 2006-08-04 10:57:29.355945083 +0100
-@@ -734,6 +734,7 @@
+--- ioemu.orig/vl.h 2006-08-07 17:44:32.853773781 +0100
++++ ioemu/vl.h 2006-08-07 17:44:32.919766595 +0100
+@@ -785,6 +785,7 @@
/* vnc.c */
void vnc_display_init(DisplayState *ds, int display);
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/vnc-title-domain-name
--- a/tools/ioemu/patches/vnc-title-domain-name Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/vnc-title-domain-name Mon Aug 07 18:28:50 2006 +0100
@@ -1,8 +1,8 @@ Index: ioemu/vnc.c
Index: ioemu/vnc.c
===================================================================
---- ioemu.orig/vnc.c 2006-07-26 14:23:52.426074956 +0100
-+++ ioemu/vnc.c 2006-07-26 14:24:15.210558295 +0100
-@@ -850,6 +850,7 @@
+--- ioemu.orig/vnc.c 2006-08-07 17:44:32.915767031 +0100
++++ ioemu/vnc.c 2006-08-07 17:44:33.084748631 +0100
+@@ -1014,6 +1014,7 @@
static int protocol_client_init(VncState *vs, char *data, size_t len)
{
@@ -10,7 +10,7 @@ Index: ioemu/vnc.c
char pad[3] = { 0, 0, 0 };
vs->width = vs->ds->width;
-@@ -886,8 +887,10 @@
+@@ -1059,8 +1060,10 @@
vnc_write(vs, pad, 3); /* padding */
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/xen-build
--- a/tools/ioemu/patches/xen-build Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/xen-build Mon Aug 07 18:28:50 2006 +0100
@@ -1,29 +1,38 @@ Index: ioemu/Makefile
Index: ioemu/Makefile
===================================================================
---- ioemu.orig/Makefile 2006-07-25 14:18:33.163941149 +0100
-+++ ioemu/Makefile 2006-07-25 14:24:31.695096861 +0100
-@@ -1,6 +1,9 @@
+--- ioemu.orig/Makefile 2006-08-06 02:03:44.915543858 +0100
++++ ioemu/Makefile 2006-08-06 02:11:33.461331417 +0100
+@@ -1,11 +1,14 @@
+ # Makefile for QEMU.
+
-include config-host.mak
+XEN_ROOT=../..
+include $(XEN_ROOT)/tools/Rules.mk
++
++-include config-host.mak
+
+ .PHONY: all clean distclean dvi info install install-doc tar tarbin \
+ speed test test2 html dvi info
-CFLAGS=-Wall -O2 -g -fno-strict-aliasing -I.
-+-include config-host.mak
-+
+CFLAGS+=-Wall -O2 -g -fno-strict-aliasing -I.
ifdef CONFIG_DARWIN
CFLAGS+= -mdynamic-no-pic
endif
-@@ -17,7 +20,7 @@
+@@ -25,9 +28,11 @@
DOCS=
endif
--all: dyngen$(EXESUF) $(TOOLS) $(DOCS)
-+all: $(DOCS)
- for d in $(TARGET_DIRS); do \
- $(MAKE) -C $$d $@ || exit 1 ; \
- done
-@@ -34,7 +37,7 @@
++TOOLS=
++
+ all: $(TOOLS) $(DOCS) recurse-all
+
+-subdir-%: dyngen$(EXESUF)
++subdir-%:
+ $(MAKE) -C $(subst subdir-,,$@) all
+
+ recurse-all: $(patsubst %,subdir-%, $(TARGET_DIRS))
+@@ -44,7 +49,7 @@
rm -f *.o *.a $(TOOLS) dyngen$(EXESUF) TAGS *.pod *~ */*~
$(MAKE) -C tests clean
for d in $(TARGET_DIRS); do \
@@ -32,26 +41,26 @@ Index: ioemu/Makefile
done
distclean: clean
-@@ -57,12 +60,12 @@
+@@ -68,12 +73,12 @@
install: all $(if $(BUILD_DOCS),install-doc)
mkdir -p "$(DESTDIR)$(bindir)"
- $(INSTALL) -m 755 -s $(TOOLS) "$(DESTDIR)$(bindir)"
- mkdir -p "$(DESTDIR)$(datadir)"
- for x in bios.bin vgabios.bin vgabios-cirrus.bin ppc_rom.bin \
-- video.x proll.elf linux_boot.bin; do \
+- video.x openbios-sparc32 linux_boot.bin; do \
- $(INSTALL) -m 644 $(SRC_PATH)/pc-bios/$$x
"$(DESTDIR)$(datadir)"; \
- done
+# $(INSTALL) -m 755 -s $(TOOLS) "$(DESTDIR)$(bindir)"
+# mkdir -p "$(DESTDIR)$(datadir)"
+# for x in bios.bin vgabios.bin vgabios-cirrus.bin ppc_rom.bin \
-+# video.x proll.elf linux_boot.bin; do \
++# video.x openbios-sparc32 linux_boot.bin; do \
+# $(INSTALL) -m 644 $(SRC_PATH)/pc-bios/$$x
"$(DESTDIR)$(datadir)"; \
+# done
ifndef CONFIG_WIN32
mkdir -p "$(DESTDIR)$(datadir)/keymaps"
for x in $(KEYMAPS); do \
-@@ -96,11 +99,11 @@
+@@ -107,11 +112,11 @@
texi2dvi $<
qemu.1: qemu-doc.texi
@@ -64,11 +73,11 @@ Index: ioemu/Makefile
+ perl -w $(SRC_PATH)/texi2pod.pl $< qemu-img.pod
pod2man --section=1 --center=" " --release=" " qemu-img.pod > $@
- FILE=qemu-$(shell cat VERSION)
+ info: qemu-doc.info qemu-tech.info
Index: ioemu/Makefile.target
===================================================================
---- ioemu.orig/Makefile.target 2006-07-25 14:18:33.163941149 +0100
-+++ ioemu/Makefile.target 2006-07-25 14:24:17.501562050 +0100
+--- ioemu.orig/Makefile.target 2006-08-06 02:03:44.922543079 +0100
++++ ioemu/Makefile.target 2006-08-06 02:09:22.320951557 +0100
@@ -1,5 +1,8 @@
include config.mak
@@ -102,7 +111,7 @@ Index: ioemu/Makefile.target
#CFLAGS+=-Werror
LDFLAGS=-g
LIBS=
-@@ -155,6 +165,9 @@
+@@ -167,6 +177,9 @@
DEFINES+=-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
LIBS+=-lm
@@ -112,7 +121,7 @@ Index: ioemu/Makefile.target
ifndef CONFIG_USER_ONLY
LIBS+=-lz
endif
-@@ -264,7 +277,7 @@
+@@ -281,7 +294,7 @@
all: $(PROGS)
$(QEMU_USER): $(OBJS)
@@ -121,7 +130,7 @@ Index: ioemu/Makefile.target
ifeq ($(ARCH),alpha)
# Mark as 32 bit binary, i. e. it will be mapped into the low 31 bit of
# the address space (31 bit so sign extending doesn't matter)
-@@ -490,10 +503,16 @@
+@@ -528,10 +541,16 @@
clean:
rm -f *.o *.a *~ $(PROGS) gen-op.h opc.h op.h nwfpe/*.o slirp/*.o
fpu/*.o
@@ -140,8 +149,8 @@ Index: ioemu/Makefile.target
include .depend
Index: ioemu/configure
===================================================================
---- ioemu.orig/configure 2006-07-25 14:18:33.163941149 +0100
-+++ ioemu/configure 2006-07-25 14:24:17.501562050 +0100
+--- ioemu.orig/configure 2006-08-06 02:03:45.783447220 +0100
++++ ioemu/configure 2006-08-06 02:09:41.076860544 +0100
@@ -18,8 +18,8 @@
# default parameters
@@ -169,7 +178,7 @@ Index: ioemu/configure
softmmu="yes"
user="no"
build_docs="no"
-@@ -366,6 +367,8 @@
+@@ -380,6 +381,8 @@
exit 1
fi
@@ -178,7 +187,7 @@ Index: ioemu/configure
if test -z "$cross_prefix" ; then
# ---
-@@ -491,14 +494,16 @@
+@@ -505,14 +508,16 @@
datadir="$prefix"
docdir="$prefix"
bindir="$prefix"
@@ -197,7 +206,7 @@ Index: ioemu/configure
fi
echo "Install prefix $prefix"
-@@ -567,6 +572,8 @@
+@@ -583,6 +588,8 @@
echo "mandir=$mandir" >> $config_mak
echo "datadir=$datadir" >> $config_mak
echo "docdir=$docdir" >> $config_mak
@@ -206,7 +215,7 @@ Index: ioemu/configure
echo "#define CONFIG_QEMU_SHAREDIR \"$datadir\"" >> $config_h
echo "MAKE=$make" >> $config_mak
echo "INSTALL=$install" >> $config_mak
-@@ -748,7 +755,7 @@
+@@ -770,7 +777,7 @@
# don't use ln -sf as not all "ln -sf" over write the file/link
#
rm -f $target_dir/Makefile
@@ -215,7 +224,7 @@ Index: ioemu/configure
echo "# Automatically generated by configure - do not modify" > $config_mak
-@@ -761,6 +768,12 @@
+@@ -784,6 +791,12 @@
interp_prefix1=`echo "$interp_prefix" | sed "s/%M/$target_cpu/g"`
echo "#define CONFIG_QEMU_PREFIX \"$interp_prefix1\"" >> $config_h
@@ -228,7 +237,7 @@ Index: ioemu/configure
if test "$target_cpu" = "i386" ; then
echo "TARGET_ARCH=i386" >> $config_mak
echo "#define TARGET_ARCH \"i386\"" >> $config_h
-@@ -823,6 +836,10 @@
+@@ -850,6 +863,10 @@
echo "#define CONFIG_USER_ONLY 1" >> $config_h
fi
@@ -236,6 +245,6 @@ Index: ioemu/configure
+ echo "#define CONFIG_DM 1" >> $config_h
+fi
+
- if test "$target_cpu" = "arm" -o "$target_cpu" = "armeb" ; then
+ if test "$target_cpu" = "arm" -o "$target_cpu" = "armeb" -o "$target_cpu" =
"sparc" -o "$target_cpu" = "sparc64"; then
echo "CONFIG_SOFTFLOAT=yes" >> $config_mak
echo "#define CONFIG_SOFTFLOAT 1" >> $config_h
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/xen-domain-name
--- a/tools/ioemu/patches/xen-domain-name Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/xen-domain-name Mon Aug 07 18:28:50 2006 +0100
@@ -1,8 +1,8 @@ Index: ioemu/sdl.c
Index: ioemu/sdl.c
===================================================================
---- ioemu.orig/sdl.c 2006-07-27 11:16:53.590928008 +0100
-+++ ioemu/sdl.c 2006-07-27 11:16:58.124426148 +0100
-@@ -268,14 +268,14 @@
+--- ioemu.orig/sdl.c 2006-08-06 02:03:48.563137711 +0100
++++ ioemu/sdl.c 2006-08-06 02:17:16.063137816 +0100
+@@ -273,14 +273,14 @@
static void sdl_update_caption(void)
{
char buf[1024];
@@ -21,18 +21,18 @@ Index: ioemu/sdl.c
static void sdl_hide_cursor(void)
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-07-27 11:16:57.828458912 +0100
-+++ ioemu/vl.c 2006-07-27 11:16:58.126425927 +0100
-@@ -159,6 +159,8 @@
- #define MAX_CPUS 1
- #endif
+--- ioemu.orig/vl.c 2006-08-06 02:16:31.246133963 +0100
++++ ioemu/vl.c 2006-08-06 02:17:31.428424918 +0100
+@@ -158,6 +158,8 @@
+ int acpi_enabled = 1;
+ int fd_bootchk = 1;
+char domain_name[1024] = { 'H','V', 'M', 'X', 'E', 'N', '-'};
+
/***********************************************************/
/* x86 ISA bus support */
-@@ -4699,6 +4701,7 @@
+@@ -5235,6 +5237,7 @@
"-s wait gdb connection to port %d\n"
"-p port change gdb connection port\n"
"-l item1,... output log to %s (use -d ? for a list of log
items)\n"
@@ -40,7 +40,7 @@ Index: ioemu/vl.c
"-hdachs c,h,s[,t] force hard disk 0 physical geometry and the
optional BIOS\n"
" translation (t=none or lba) (usually qemu can
guess them)\n"
"-L path set the directory for the BIOS and VGA BIOS\n"
-@@ -4788,6 +4791,7 @@
+@@ -5319,6 +5322,7 @@
QEMU_OPTION_g,
QEMU_OPTION_std_vga,
QEMU_OPTION_monitor,
@@ -48,7 +48,7 @@ Index: ioemu/vl.c
QEMU_OPTION_serial,
QEMU_OPTION_parallel,
QEMU_OPTION_loadvm,
-@@ -4861,6 +4865,7 @@
+@@ -5396,6 +5400,7 @@
{ "localtime", 0, QEMU_OPTION_localtime },
{ "std-vga", 0, QEMU_OPTION_std_vga },
{ "monitor", 1, QEMU_OPTION_monitor },
@@ -56,10 +56,10 @@ Index: ioemu/vl.c
{ "serial", 1, QEMU_OPTION_serial },
{ "parallel", 1, QEMU_OPTION_parallel },
{ "loadvm", HAS_ARG, QEMU_OPTION_loadvm },
-@@ -5484,6 +5489,9 @@
- exit(1);
- }
- break;
+@@ -6062,6 +6067,9 @@
+ case QEMU_OPTION_no_acpi:
+ acpi_enabled = 0;
+ break;
+ case QEMU_OPTION_domainname:
+ strncat(domain_name, optarg, sizeof(domain_name) - 20);
+ break;
@@ -68,9 +68,9 @@ Index: ioemu/vl.c
}
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2006-07-27 11:16:57.682475072 +0100
-+++ ioemu/vl.h 2006-07-27 11:16:58.127425816 +0100
-@@ -1094,4 +1094,5 @@
+--- ioemu.orig/vl.h 2006-08-06 02:15:39.711878977 +0100
++++ ioemu/vl.h 2006-08-06 02:17:16.068137258 +0100
+@@ -1185,4 +1185,5 @@
void kqemu_record_dump(void);
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/xen-domid
--- a/tools/ioemu/patches/xen-domid Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/xen-domid Mon Aug 07 18:28:50 2006 +0100
@@ -1,16 +1,16 @@ Index: ioemu/vl.c
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-07-27 11:16:58.126425927 +0100
-+++ ioemu/vl.c 2006-07-27 11:16:58.296407110 +0100
-@@ -160,6 +160,7 @@
- #endif
+--- ioemu.orig/vl.c 2006-08-06 02:17:31.428424918 +0100
++++ ioemu/vl.c 2006-08-06 02:18:12.550840673 +0100
+@@ -159,6 +159,7 @@
+ int fd_bootchk = 1;
char domain_name[1024] = { 'H','V', 'M', 'X', 'E', 'N', '-'};
+extern int domid;
/***********************************************************/
/* x86 ISA bus support */
-@@ -4701,6 +4702,7 @@
+@@ -5237,6 +5238,7 @@
"-s wait gdb connection to port %d\n"
"-p port change gdb connection port\n"
"-l item1,... output log to %s (use -d ? for a list of log
items)\n"
@@ -18,25 +18,25 @@ Index: ioemu/vl.c
"-domain-name domain name that we're serving\n"
"-hdachs c,h,s[,t] force hard disk 0 physical geometry and the
optional BIOS\n"
" translation (t=none or lba) (usually qemu can
guess them)\n"
-@@ -4804,6 +4806,8 @@
- QEMU_OPTION_usbdevice,
+@@ -5336,6 +5338,8 @@
QEMU_OPTION_smp,
QEMU_OPTION_vnc,
+ QEMU_OPTION_no_acpi,
+
+ QEMU_OPTION_d,
};
typedef struct QEMUOption {
-@@ -4879,6 +4883,8 @@
- /* temporary options */
+@@ -5415,6 +5419,8 @@
{ "usb", 0, QEMU_OPTION_usb },
{ "cirrusvga", 0, QEMU_OPTION_cirrusvga },
+ { "no-acpi", 0, QEMU_OPTION_no_acpi },
+
+ { "d", HAS_ARG, QEMU_OPTION_d },
{ NULL },
};
-@@ -5492,6 +5498,10 @@
+@@ -6070,6 +6076,10 @@
case QEMU_OPTION_domainname:
strncat(domain_name, optarg, sizeof(domain_name) - 20);
break;
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/xen-mm
--- a/tools/ioemu/patches/xen-mm Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/xen-mm Mon Aug 07 18:28:50 2006 +0100
@@ -1,8 +1,8 @@ Index: ioemu/hw/pc.c
Index: ioemu/hw/pc.c
===================================================================
---- ioemu.orig/hw/pc.c 2006-08-04 10:53:02.019794255 +0100
-+++ ioemu/hw/pc.c 2006-08-04 10:54:56.876531492 +0100
-@@ -639,7 +639,9 @@
+--- ioemu.orig/hw/pc.c 2006-08-06 02:15:39.708879311 +0100
++++ ioemu/hw/pc.c 2006-08-06 02:18:18.875135656 +0100
+@@ -646,7 +646,9 @@
}
/* allocate RAM */
@@ -12,7 +12,7 @@ Index: ioemu/hw/pc.c
/* BIOS load */
bios_offset = ram_size + vga_ram_size;
-@@ -671,8 +673,10 @@
+@@ -678,8 +680,10 @@
ret = load_image(buf, phys_ram_base + vga_bios_offset);
/* setup basic memory access */
@@ -25,20 +25,20 @@ Index: ioemu/hw/pc.c
isa_bios_size = bios_size;
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-08-04 10:53:02.472741926 +0100
-+++ ioemu/vl.c 2006-08-04 10:55:48.361590787 +0100
-@@ -159,6 +159,8 @@
- #define MAX_CPUS 1
- #endif
+--- ioemu.orig/vl.c 2006-08-06 02:18:12.550840673 +0100
++++ ioemu/vl.c 2006-08-06 02:18:45.608155528 +0100
+@@ -158,6 +158,8 @@
+ int acpi_enabled = 1;
+ int fd_bootchk = 1;
+int xc_handle;
+
char domain_name[1024] = { 'H','V', 'M', 'X', 'E', 'N', '-'};
extern int domid;
-@@ -5106,6 +5108,9 @@
+@@ -5650,6 +5652,9 @@
QEMUMachine *machine;
- char usb_devices[MAX_VM_USB_PORTS][128];
+ char usb_devices[MAX_USB_CMDLINE][128];
int usb_devices_index;
+ unsigned long nr_pages;
+ xen_pfn_t *page_array;
@@ -46,7 +46,7 @@ Index: ioemu/vl.c
char qemu_dm_logfilename[64];
-@@ -5342,11 +5347,13 @@
+@@ -5917,11 +5922,13 @@
ram_size = atol(optarg) * 1024 * 1024;
if (ram_size <= 0)
help();
@@ -60,7 +60,7 @@ Index: ioemu/vl.c
break;
case QEMU_OPTION_l:
{
-@@ -5560,6 +5567,41 @@
+@@ -6133,12 +6140,49 @@
/* init the memory */
phys_ram_size = ram_size + vga_ram_size + bios_size;
@@ -99,12 +99,11 @@ Index: ioemu/vl.c
+
+#else /* !CONFIG_DM */
+
- #ifdef CONFIG_SOFTMMU
phys_ram_base = qemu_vmalloc(phys_ram_size);
if (!phys_ram_base) {
-@@ -5600,6 +5642,8 @@
+ fprintf(stderr, "Could not allocate physical memory\n");
+ exit(1);
}
- #endif
+#endif /* !CONFIG_DM */
+
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/xen-network
--- a/tools/ioemu/patches/xen-network Mon Aug 07 18:27:27 2006 +0100
+++ b/tools/ioemu/patches/xen-network Mon Aug 07 18:28:50 2006 +0100
@@ -1,7 +1,7 @@ Index: ioemu/vl.c
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-07-27 11:16:58.823348777 +0100
-+++ ioemu/vl.c 2006-07-27 11:16:59.169310479 +0100
+--- ioemu.orig/vl.c 2006-08-06 02:22:01.556312045 +0100
++++ ioemu/vl.c 2006-08-06 02:22:53.925474246 +0100
@@ -89,6 +89,7 @@
#include "exec-all.h"
@@ -10,7 +10,7 @@ Index: ioemu/vl.c
//#define DEBUG_UNUSED_IOPORT
//#define DEBUG_IOPORT
-@@ -2621,11 +2622,11 @@
+@@ -3090,11 +3091,11 @@
#endif
static int net_tap_init(VLANState *vlan, const char *ifname1,
@@ -24,7 +24,7 @@ Index: ioemu/vl.c
char **parg;
char ifname[128];
-@@ -2647,6 +2648,7 @@
+@@ -3116,6 +3117,7 @@
parg = args;
*parg++ = (char *)setup_script;
*parg++ = ifname;
@@ -32,7 +32,7 @@ Index: ioemu/vl.c
*parg++ = NULL;
execv(setup_script, args);
_exit(1);
-@@ -3201,6 +3203,7 @@
+@@ -3671,6 +3673,7 @@
if (!strcmp(device, "tap")) {
char ifname[64];
char setup_script[1024];
@@ -40,7 +40,7 @@ Index: ioemu/vl.c
int fd;
if (get_param_value(buf, sizeof(buf), "fd", p) > 0) {
fd = strtol(buf, NULL, 0);
-@@ -3213,7 +3216,10 @@
+@@ -3683,7 +3686,10 @@
if (get_param_value(setup_script, sizeof(setup_script), "script",
p) == 0) {
pstrcpy(setup_script, sizeof(setup_script),
DEFAULT_NETWORK_SCRIPT);
}
@@ -52,7 +52,7 @@ Index: ioemu/vl.c
}
} else
#endif
-@@ -4672,7 +4678,7 @@
+@@ -5208,7 +5214,7 @@
"-net tap[,vlan=n],ifname=name\n"
" connect the host TAP network interface to VLAN
'n'\n"
#else
diff -r 06e2a95d3395 -r ec8dd0528fc6
tools/ioemu/patches/xenstore-block-device-config
--- a/tools/ioemu/patches/xenstore-block-device-config Mon Aug 07 18:27:27
2006 +0100
+++ b/tools/ioemu/patches/xenstore-block-device-config Mon Aug 07 18:28:50
2006 +0100
@@ -1,10 +1,10 @@ Index: ioemu/Makefile.target
Index: ioemu/Makefile.target
===================================================================
---- ioemu.orig/Makefile.target 2006-08-04 10:57:28.920995216 +0100
-+++ ioemu/Makefile.target 2006-08-04 10:57:29.641912123 +0100
-@@ -336,6 +336,7 @@
- VL_OBJS+= fdc.o mc146818rtc.o serial.o pc.o
- VL_OBJS+= cirrus_vga.o mixeng.o parallel.o
+--- ioemu.orig/Makefile.target 2006-08-07 17:42:27.802386071 +0100
++++ ioemu/Makefile.target 2006-08-07 17:42:28.683289358 +0100
+@@ -358,6 +358,7 @@
+ VL_OBJS+= cirrus_vga.o mixeng.o parallel.o acpi.o piix_pci.o
+ VL_OBJS+= usb-uhci.o
VL_OBJS+= piix4acpi.o
+VL_OBJS+= xenstore.o
DEFINES += -DHAS_AUDIO
@@ -13,7 +13,7 @@ Index: ioemu/xenstore.c
Index: ioemu/xenstore.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ ioemu/xenstore.c 2006-08-04 10:57:29.641912123 +0100
++++ ioemu/xenstore.c 2006-08-07 17:42:28.684289249 +0100
@@ -0,0 +1,187 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General
@@ -204,9 +204,9 @@ Index: ioemu/xenstore.c
+}
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-08-04 10:57:29.354945198 +0100
-+++ ioemu/vl.c 2006-08-04 10:57:29.644911777 +0100
-@@ -4711,9 +4711,11 @@
+--- ioemu.orig/vl.c 2006-08-07 17:42:28.393320909 +0100
++++ ioemu/vl.c 2006-08-07 17:42:28.687288922 +0100
+@@ -5242,9 +5242,11 @@
"Standard options:\n"
"-M machine select emulated machine (-M ? for list)\n"
"-fda/-fdb file use 'file' as floppy disk 0/1 image\n"
@@ -217,8 +217,8 @@ Index: ioemu/vl.c
+#endif /* !CONFIG_DM */
"-boot [a|c|d] boot on floppy (a), hard disk (c) or CD-ROM (d)\n"
"-snapshot write to temporary files instead of disk image
files\n"
- "-m megs set virtual RAM size to megs MB [default=%d]\n"
-@@ -4844,11 +4846,13 @@
+ #ifdef TARGET_I386
+@@ -5370,11 +5372,13 @@
QEMU_OPTION_M,
QEMU_OPTION_fda,
QEMU_OPTION_fdb,
@@ -231,8 +231,8 @@ Index: ioemu/vl.c
+#endif /* !CONFIG_DM */
QEMU_OPTION_boot,
QEMU_OPTION_snapshot,
- QEMU_OPTION_m,
-@@ -4915,11 +4919,13 @@
+ #ifdef TARGET_I386
+@@ -5445,11 +5449,13 @@
{ "M", HAS_ARG, QEMU_OPTION_M },
{ "fda", HAS_ARG, QEMU_OPTION_fda },
{ "fdb", HAS_ARG, QEMU_OPTION_fdb },
@@ -245,8 +245,8 @@ Index: ioemu/vl.c
+#endif /* !CONFIG_DM */
{ "boot", HAS_ARG, QEMU_OPTION_boot },
{ "snapshot", 0, QEMU_OPTION_snapshot },
- { "m", HAS_ARG, QEMU_OPTION_m },
-@@ -5255,10 +5261,16 @@
+ #ifdef TARGET_I386
+@@ -5797,10 +5803,16 @@
#ifdef CONFIG_GDBSTUB
int use_gdbstub, gdbstub_port;
#endif
@@ -265,7 +265,7 @@ Index: ioemu/vl.c
const char *kernel_filename, *kernel_cmdline;
DisplayState *ds = &display_state;
int cyls, heads, secs, translation;
-@@ -5293,8 +5305,10 @@
+@@ -5861,8 +5873,10 @@
initrd_filename = NULL;
for(i = 0; i < MAX_FD; i++)
fd_filename[i] = NULL;
@@ -276,7 +276,7 @@ Index: ioemu/vl.c
ram_size = DEFAULT_RAM_SIZE * 1024 * 1024;
vga_ram_size = VGA_RAM_SIZE;
bios_size = BIOS_SIZE;
-@@ -5307,11 +5321,13 @@
+@@ -5875,11 +5889,13 @@
vncviewer = 0;
kernel_filename = NULL;
kernel_cmdline = "";
@@ -290,7 +290,7 @@ Index: ioemu/vl.c
cyls = heads = secs = 0;
translation = BIOS_ATA_TRANSLATION_AUTO;
pstrcpy(monitor_device, sizeof(monitor_device), "vc");
-@@ -5344,7 +5360,11 @@
+@@ -5912,7 +5928,11 @@
break;
r = argv[optind];
if (r[0] != '-') {
@@ -302,7 +302,7 @@ Index: ioemu/vl.c
} else {
const QEMUOption *popt;
-@@ -5388,6 +5408,7 @@
+@@ -5956,6 +5976,7 @@
case QEMU_OPTION_initrd:
initrd_filename = optarg;
break;
@@ -310,7 +310,7 @@ Index: ioemu/vl.c
case QEMU_OPTION_hda:
case QEMU_OPTION_hdb:
case QEMU_OPTION_hdc:
-@@ -5400,6 +5421,7 @@
+@@ -5968,6 +5989,7 @@
cdrom_index = -1;
}
break;
@@ -318,7 +318,7 @@ Index: ioemu/vl.c
case QEMU_OPTION_snapshot:
snapshot = 1;
break;
-@@ -5452,11 +5474,13 @@
+@@ -6020,11 +6042,13 @@
case QEMU_OPTION_append:
kernel_cmdline = optarg;
break;
@@ -332,7 +332,7 @@ Index: ioemu/vl.c
case QEMU_OPTION_boot:
boot_device = optarg[0];
if (boot_device != 'a' &&
-@@ -5698,12 +5722,18 @@
+@@ -6274,12 +6298,18 @@
}
}
@@ -351,15 +351,15 @@ Index: ioemu/vl.c
if (!linux_boot &&
hd_filename[0] == '\0' &&
(cdrom_index >= 0 && hd_filename[cdrom_index] == '\0') &&
-@@ -5717,6 +5747,7 @@
+@@ -6293,6 +6323,7 @@
else
boot_device = 'd';
}
+#endif /* !CONFIG_DM */
- #if !defined(CONFIG_SOFTMMU)
- /* must avoid mmap() usage of glibc by setting a buffer "by hand" */
-@@ -5870,6 +5901,7 @@
+ setvbuf(stdout, NULL, _IOLBF, 0);
+
+@@ -6407,6 +6438,7 @@
#endif /* !CONFIG_DM */
@@ -367,7 +367,7 @@ Index: ioemu/vl.c
/* we always create the cdrom drive, even if no disk is there */
bdrv_init();
if (cdrom_index >= 0) {
-@@ -5896,6 +5928,7 @@
+@@ -6433,6 +6465,7 @@
}
}
}
@@ -375,9 +375,9 @@ Index: ioemu/vl.c
/* we always create at least one floppy disk */
fd_table[0] = bdrv_new("fda");
-@@ -6031,6 +6064,8 @@
- #endif
- init_timers();
+@@ -6511,6 +6544,8 @@
+ }
+ }
+ qemu_set_fd_handler(xenstore_fd(), xenstore_process_event, NULL, NULL);
+
@@ -386,8 +386,8 @@ Index: ioemu/vl.c
kernel_filename, kernel_cmdline, initrd_filename,
Index: ioemu/monitor.c
===================================================================
---- ioemu.orig/monitor.c 2006-08-04 10:57:28.195078886 +0100
-+++ ioemu/monitor.c 2006-08-04 10:57:29.645911662 +0100
+--- ioemu.orig/monitor.c 2006-08-07 17:42:27.132461888 +0100
++++ ioemu/monitor.c 2006-08-07 17:42:28.688288814 +0100
@@ -24,6 +24,7 @@
#include "vl.h"
#include "disas.h"
@@ -396,7 +396,7 @@ Index: ioemu/monitor.c
//#define DEBUG
//#define DEBUG_COMPLETION
-@@ -328,7 +329,7 @@
+@@ -330,7 +331,7 @@
return 0;
}
@@ -405,7 +405,7 @@ Index: ioemu/monitor.c
{
BlockDriverState *bs;
-@@ -340,7 +341,7 @@
+@@ -342,7 +343,7 @@
eject_device(bs, force);
}
@@ -416,9 +416,9 @@ Index: ioemu/monitor.c
int i;
Index: ioemu/block.c
===================================================================
---- ioemu.orig/block.c 2006-08-04 10:57:21.718825369 +0100
-+++ ioemu/block.c 2006-08-04 10:57:29.646911546 +0100
-@@ -750,6 +750,7 @@
+--- ioemu.orig/block.c 2006-08-07 17:42:21.704076241 +0100
++++ ioemu/block.c 2006-08-07 17:42:28.689288705 +0100
+@@ -758,6 +758,7 @@
static void raw_close(BlockDriverState *bs)
{
BDRVRawState *s = bs->opaque;
@@ -428,9 +428,9 @@ Index: ioemu/block.c
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2006-08-04 10:57:29.355945083 +0100
-+++ ioemu/vl.h 2006-08-04 10:57:29.647911431 +0100
-@@ -1093,6 +1093,8 @@
+--- ioemu.orig/vl.h 2006-08-07 17:42:28.394320800 +0100
++++ ioemu/vl.h 2006-08-07 17:42:28.689288705 +0100
+@@ -1184,6 +1184,8 @@
void term_print_help(void);
void monitor_readline(const char *prompt, int is_password,
char *buf, int buf_size);
@@ -439,7 +439,7 @@ Index: ioemu/vl.h
/* readline.c */
typedef void ReadLineFunc(void *opaque, const char *str);
-@@ -1105,6 +1107,13 @@
+@@ -1196,6 +1198,13 @@
void readline_start(const char *prompt, int is_password,
ReadLineFunc *readline_func, void *opaque);
@@ -455,9 +455,9 @@ Index: ioemu/vl.h
extern char domain_name[];
Index: ioemu/hw/ide.c
===================================================================
---- ioemu.orig/hw/ide.c 2006-08-04 10:57:28.612030827 +0100
-+++ ioemu/hw/ide.c 2006-08-04 10:57:29.648911316 +0100
-@@ -1279,6 +1279,7 @@
+--- ioemu.orig/hw/ide.c 2006-08-07 17:42:27.552414361 +0100
++++ ioemu/hw/ide.c 2006-08-07 17:42:28.691288487 +0100
+@@ -1158,6 +1158,7 @@
} else {
ide_atapi_cmd_error(s, SENSE_NOT_READY,
ASC_MEDIUM_NOT_PRESENT);
diff -r 06e2a95d3395 -r ec8dd0528fc6 tools/ioemu/patches/xenstore-write-vnc-port
--- a/tools/ioemu/patches/xenstore-write-vnc-port Mon Aug 07 18:27:27
2006 +0100
+++ b/tools/ioemu/patches/xenstore-write-vnc-port Mon Aug 07 18:28:50
2006 +0100
@@ -1,7 +1,7 @@ Index: ioemu/xenstore.c
Index: ioemu/xenstore.c
===================================================================
---- ioemu.orig/xenstore.c 2006-08-04 10:57:29.641912123 +0100
-+++ ioemu/xenstore.c 2006-08-04 10:57:30.244842629 +0100
+--- ioemu.orig/xenstore.c 2006-08-07 17:42:28.684289249 +0100
++++ ioemu/xenstore.c 2006-08-07 17:42:28.891266728 +0100
@@ -185,3 +185,31 @@
free(image);
free(vec);
@@ -36,9 +36,9 @@ Index: ioemu/xenstore.c
+}
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-08-04 10:57:29.644911777 +0100
-+++ ioemu/vl.c 2006-08-04 10:57:30.246842399 +0100
-@@ -5976,6 +5976,7 @@
+--- ioemu.orig/vl.c 2006-08-07 17:42:28.687288922 +0100
++++ ioemu/vl.c 2006-08-07 17:42:28.894266401 +0100
+@@ -6501,6 +6501,7 @@
vnc_display_init(ds, vnc_display);
if (vncviewer)
vnc_start_viewer(vnc_display);
@@ -48,9 +48,9 @@ Index: ioemu/vl.c
sdl_display_init(ds, full_screen);
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2006-08-04 10:57:29.647911431 +0100
-+++ ioemu/vl.h 2006-08-04 10:57:30.247842283 +0100
-@@ -1112,6 +1112,7 @@
+--- ioemu.orig/vl.h 2006-08-07 17:42:28.689288705 +0100
++++ ioemu/vl.h 2006-08-07 17:42:28.895266293 +0100
+@@ -1203,6 +1203,7 @@
int xenstore_fd(void);
void xenstore_process_event(void *opaque);
void xenstore_check_new_media_present(int timeout);
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|