# HG changeset patch
# User Christian Limpach <Christian.Limpach@xxxxxxxxxxxxx>
# Date 1178809531 -3600
# Node ID 31a3f83d1610180191a440e3cc582d5b7159bbda
# Parent 8f510bf078c7745696547b5245ba95ac5a6192bc
[qemu patches] Update patches upto changeset 15032:8f510bf078c7.
Signed-off-by: Christian Limpach <Christian.Limpach@xxxxxxxxxxxxx>
---
tools/ioemu/patches/domain-timeoffset | 177 ----------
tools/ioemu/patches/ioemu-buffer-pio-ia64 | 8
tools/ioemu/patches/ioemu-ia64 | 338 ---------------------
tools/ioemu/patches/qemu-bootorder | 40 +-
tools/ioemu/patches/qemu-daemonize | 4
tools/ioemu/patches/qemu-dm | 36 +-
tools/ioemu/patches/qemu-pci | 10
tools/ioemu/patches/qemu-pci-vendor-ids | 8
tools/ioemu/patches/qemu-serial-fixes | 6
tools/ioemu/patches/qemu-tunable-ide-write-cache | 13
tools/ioemu/patches/scsi | 22 -
tools/ioemu/patches/series | 4
tools/ioemu/patches/tpm-tis-device | 9
tools/ioemu/patches/vnc-backoff-screen-scan | 30 -
tools/ioemu/patches/vnc-display-find-unused | 14
tools/ioemu/patches/vnc-fix-signedness | 34 +-
tools/ioemu/patches/vnc-fix-version-check | 4
tools/ioemu/patches/vnc-password | 32 -
tools/ioemu/patches/xen-mapcache | 24 -
tools/ioemu/patches/xen-platform-device | 9
tools/ioemu/patches/xen-support-buffered-ioreqs | 8
tools/ioemu/patches/xenstore | 13
tools/ioemu/patches/xenstore-block-device-config | 46 +-
tools/ioemu/patches/xenstore-device-info-functions | 6
tools/ioemu/patches/xenstore-write-vnc-port | 12
25 files changed, 211 insertions(+), 696 deletions(-)
diff -r 8f510bf078c7 -r 31a3f83d1610 tools/ioemu/patches/domain-timeoffset
--- a/tools/ioemu/patches/domain-timeoffset Thu May 10 15:58:35 2007 +0100
+++ b/tools/ioemu/patches/domain-timeoffset Thu May 10 16:05:31 2007 +0100
@@ -1,168 +1,8 @@ Index: ioemu/hw/mc146818rtc.c
-Index: ioemu/hw/mc146818rtc.c
-===================================================================
---- ioemu.orig/hw/mc146818rtc.c 2007-05-09 14:12:16.000000000 +0100
-+++ ioemu/hw/mc146818rtc.c 2007-05-09 14:12:43.000000000 +0100
-@@ -178,10 +178,27 @@
- }
- }
-
-+static void send_timeoffset_msg(time_t delta)
-+{
-+
-+/* This routine is used to inform another entity that the
-+ base time offset has changed. For instance, if you
-+ were using xenstore, you might want to write to the store
-+ at this point. Or, you might use some other method.
-+ Whatever you might choose, here's a hook point to implement it.
-+
-+ One item of note is that this delta is in addition to
-+ any existing offset you might be already using. */
-+
-+ return;
-+}
-+
- static void rtc_set_time(RTCState *s)
- {
- struct tm *tm = &s->current_tm;
--
-+ time_t before, after;
-+
-+ before = mktime(tm);
- tm->tm_sec = from_bcd(s, s->cmos_data[RTC_SECONDS]);
- tm->tm_min = from_bcd(s, s->cmos_data[RTC_MINUTES]);
- tm->tm_hour = from_bcd(s, s->cmos_data[RTC_HOURS] & 0x7f);
-@@ -193,6 +210,12 @@
- tm->tm_mday = from_bcd(s, s->cmos_data[RTC_DAY_OF_MONTH]);
- tm->tm_mon = from_bcd(s, s->cmos_data[RTC_MONTH]) - 1;
- tm->tm_year = from_bcd(s, s->cmos_data[RTC_YEAR]) + 100;
-+
-+ /* Compute, and send, the additional time delta
-+ We could compute the total time delta, but this is
-+ sufficient, and simple. */
-+ after = mktime(tm);
-+ send_timeoffset_msg(after-before);
- }
-
- static void rtc_copy_date(RTCState *s)
-@@ -392,6 +415,7 @@
-
- /* set the CMOS date */
- time(&ti);
-+ ti += timeoffset;
- if (rtc_utc)
- tm = gmtime(&ti);
- else
-Index: ioemu/hw/pc.c
-===================================================================
---- ioemu.orig/hw/pc.c 2007-05-09 14:12:16.000000000 +0100
-+++ ioemu/hw/pc.c 2007-05-09 14:12:43.000000000 +0100
-@@ -160,7 +160,7 @@
- }
-
- /* hd_table must contain 4 block drivers */
--static void cmos_init(uint64_t ram_size, int boot_device, BlockDriverState
**hd_table)
-+static void cmos_init(uint64_t ram_size, int boot_device, BlockDriverState
**hd_table, time_t timeoffset)
- {
- RTCState *s = rtc_state;
- int val;
-@@ -454,7 +454,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,
-- const char *initrd_filename,
-+ const char *initrd_filename, time_t timeoffset,
- int pci_enabled)
- {
- #ifndef NOBIOS
-@@ -725,7 +725,7 @@
-
- floppy_controller = fdctrl_init(6, 2, 0, 0x3f0, fd_table);
-
-- cmos_init(ram_size, boot_device, bs_table);
-+ cmos_init(ram_size, boot_device, bs_table, timeoffset);
-
- /* using PIIX4 acpi model */
- if (pci_enabled && acpi_enabled)
-@@ -774,12 +774,13 @@
- int snapshot,
- const char *kernel_filename,
- const char *kernel_cmdline,
-- const char *initrd_filename)
-+ const char *initrd_filename,
-+ time_t timeoffset)
- {
- pc_init1(ram_size, vga_ram_size, boot_device,
- ds, fd_filename, snapshot,
- kernel_filename, kernel_cmdline,
-- initrd_filename, 1);
-+ initrd_filename, timeoffset, 1);
- }
-
- static void pc_init_isa(uint64_t ram_size, int vga_ram_size, int boot_device,
-@@ -787,12 +788,13 @@
- int snapshot,
- const char *kernel_filename,
- const char *kernel_cmdline,
-- const char *initrd_filename)
-+ const char *initrd_filename,
-+ time_t timeoffset)
- {
- pc_init1(ram_size, vga_ram_size, boot_device,
- ds, fd_filename, snapshot,
- kernel_filename, kernel_cmdline,
-- initrd_filename, 0);
-+ initrd_filename, timeoffset, 0);
- }
-
- QEMUMachine pc_machine = {
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2007-05-09 14:12:43.000000000 +0100
-+++ ioemu/vl.c 2007-05-09 14:12:43.000000000 +0100
-@@ -184,6 +184,8 @@
-
- int xc_handle;
-
-+time_t timeoffset = 0;
-+
- char domain_name[1024] = { 'H','V', 'M', 'X', 'E', 'N', '-'};
- extern int domid;
-
-@@ -6329,6 +6331,7 @@
- "-vncviewer start a vncviewer process for this domain\n"
- "-vncunused bind the VNC server to an unused port\n"
- "-vnclisten bind the VNC server to this address\n"
-+ "-timeoffset time offset (in seconds) from local time\n"
- #ifndef _WIN32
- "-daemonize daemonize QEMU after initializing\n"
- #endif
-@@ -6425,6 +6428,7 @@
- ,
- QEMU_OPTION_d,
- QEMU_OPTION_vcpus,
-+ QEMU_OPTION_timeoffset,
- QEMU_OPTION_acpi,
- QEMU_OPTION_vncviewer,
- QEMU_OPTION_vncunused,
-@@ -6526,6 +6530,7 @@
-
- { "d", HAS_ARG, QEMU_OPTION_d },
- { "vcpus", 1, QEMU_OPTION_vcpus },
-+ { "timeoffset", HAS_ARG, QEMU_OPTION_timeoffset },
- { "acpi", 0, QEMU_OPTION_acpi },
- { NULL },
- };
-@@ -7313,6 +7318,9 @@
- vcpus = atoi(optarg);
- fprintf(logfile, "qemu: the number of cpus is %d\n", vcpus);
- break;
-+ case QEMU_OPTION_timeoffset:
-+ timeoffset = strtol(optarg, NULL, 0);
-+ break;
- case QEMU_OPTION_acpi:
- acpi_enabled = 1;
- break;
-@@ -7545,6 +7553,9 @@
+--- ioemu.orig/vl.c 2007-05-10 16:04:24.000000000 +0100
++++ ioemu/vl.c 2007-05-10 16:04:24.000000000 +0100
+@@ -7530,6 +7530,9 @@
}
free(page_array);
#endif
@@ -172,30 +12,11 @@ Index: ioemu/vl.c
#else /* !CONFIG_DM */
phys_ram_base = qemu_vmalloc(phys_ram_size);
-@@ -7681,7 +7692,8 @@
-
- machine->init(ram_size, vga_ram_size, boot_device,
- ds, fd_filename, snapshot,
-- kernel_filename, kernel_cmdline, initrd_filename);
-+ kernel_filename, kernel_cmdline, initrd_filename,
-+ timeoffset);
-
- /* init USB devices */
- if (usb_enabled) {
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2007-05-09 14:12:43.000000000 +0100
-+++ ioemu/vl.h 2007-05-09 14:12:43.000000000 +0100
-@@ -708,7 +708,7 @@
- int boot_device,
- DisplayState *ds, const char **fd_filename, int snapshot,
- const char *kernel_filename, const char *kernel_cmdline,
-- const char *initrd_filename);
-+ const char *initrd_filename, time_t timeoffset);
-
- typedef struct QEMUMachine {
- const char *name;
-@@ -1435,6 +1435,10 @@
+--- ioemu.orig/vl.h 2007-05-10 16:04:24.000000000 +0100
++++ ioemu/vl.h 2007-05-10 16:04:24.000000000 +0100
+@@ -1433,6 +1433,10 @@
int xenstore_vm_write(int domid, char *key, char *val);
char *xenstore_vm_read(int domid, char *key, int *len);
@@ -208,8 +29,8 @@ Index: ioemu/vl.h
extern char domain_name[];
Index: ioemu/target-i386-dm/helper2.c
===================================================================
---- ioemu.orig/target-i386-dm/helper2.c 2007-05-09 14:12:16.000000000
+0100
-+++ ioemu/target-i386-dm/helper2.c 2007-05-09 14:12:43.000000000 +0100
+--- ioemu.orig/target-i386-dm/helper2.c 2007-05-10 16:04:22.000000000
+0100
++++ ioemu/target-i386-dm/helper2.c 2007-05-10 16:04:24.000000000 +0100
@@ -74,6 +74,8 @@
int xc_handle;
diff -r 8f510bf078c7 -r 31a3f83d1610 tools/ioemu/patches/ioemu-buffer-pio-ia64
--- a/tools/ioemu/patches/ioemu-buffer-pio-ia64 Thu May 10 15:58:35 2007 +0100
+++ b/tools/ioemu/patches/ioemu-buffer-pio-ia64 Thu May 10 16:05:31 2007 +0100
@@ -1,8 +1,8 @@ Index: ioemu/vl.c
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2007-05-09 13:47:16.000000000 +0100
-+++ ioemu/vl.c 2007-05-09 13:47:16.000000000 +0100
-@@ -6839,6 +6839,7 @@
+--- ioemu.orig/vl.c 2007-05-10 15:34:24.000000000 +0100
++++ ioemu/vl.c 2007-05-10 15:34:24.000000000 +0100
+@@ -6824,6 +6824,7 @@
unsigned long ioreq_pfn;
extern void *shared_page;
extern void *buffered_io_page;
@@ -10,7 +10,7 @@ Index: ioemu/vl.c
unsigned long nr_pages;
char qemu_dm_logfilename[64];
-@@ -7544,6 +7545,10 @@
+@@ -7521,6 +7522,10 @@
PROT_READ|PROT_WRITE,
BUFFER_IO_PAGE_START >> PAGE_SHIFT);
@@ -23,8 +23,8 @@ Index: ioemu/vl.c
Index: ioemu/hw/ide.c
===================================================================
---- ioemu.orig/hw/ide.c 2007-05-09 13:47:15.000000000 +0100
-+++ ioemu/hw/ide.c 2007-05-09 13:47:16.000000000 +0100
+--- ioemu.orig/hw/ide.c 2007-05-10 15:32:53.000000000 +0100
++++ ioemu/hw/ide.c 2007-05-10 15:34:24.000000000 +0100
@@ -393,6 +393,121 @@
int type; /* see IDE_TYPE_xxx */
} PCIIDEState;
diff -r 8f510bf078c7 -r 31a3f83d1610 tools/ioemu/patches/ioemu-ia64
--- a/tools/ioemu/patches/ioemu-ia64 Thu May 10 15:58:35 2007 +0100
+++ b/tools/ioemu/patches/ioemu-ia64 Thu May 10 16:05:31 2007 +0100
@@ -1,7 +1,7 @@ Index: ioemu/hw/iommu.c
Index: ioemu/hw/iommu.c
===================================================================
---- ioemu.orig/hw/iommu.c 2007-05-03 18:18:01.000000000 +0100
-+++ ioemu/hw/iommu.c 2007-05-03 19:09:15.000000000 +0100
+--- ioemu.orig/hw/iommu.c 2007-05-10 15:49:26.000000000 +0100
++++ ioemu/hw/iommu.c 2007-05-10 15:49:53.000000000 +0100
@@ -82,7 +82,11 @@
#define IOPTE_VALID 0x00000002 /* IOPTE is valid */
#define IOPTE_WAZ 0x00000001 /* Write as zeros */
@@ -14,46 +14,10 @@ Index: ioemu/hw/iommu.c
#define PAGE_SIZE (1 << PAGE_SHIFT)
#define PAGE_MASK (PAGE_SIZE - 1)
-Index: ioemu/cpu-all.h
-===================================================================
---- ioemu.orig/cpu-all.h 2007-05-03 19:00:55.000000000 +0100
-+++ ioemu/cpu-all.h 2007-05-03 19:09:15.000000000 +0100
-@@ -843,6 +843,31 @@
- :"=m" (*(volatile long *)addr)
- :"dIr" (nr));
- }
-+#elif defined(__ia64__)
-+#include "ia64_intrinsic.h"
-+#define atomic_set_bit(nr, addr) ({ \
-+ typeof(*addr) bit, old, new; \
-+ volatile typeof(*addr) *m; \
-+ \
-+ m = (volatile typeof(*addr)*)(addr + nr / (8*sizeof(*addr))); \
-+ bit = 1 << (nr % (8*sizeof(*addr))); \
-+ do { \
-+ old = *m; \
-+ new = old | bit; \
-+ } while (cmpxchg_acq(m, old, new) != old); \
-+})
-+
-+#define atomic_clear_bit(nr, addr) ({ \
-+ typeof(*addr) bit, old, new; \
-+ volatile typeof(*addr) *m; \
-+ \
-+ m = (volatile typeof(*addr)*)(addr + nr / (8*sizeof(*addr))); \
-+ bit = ~(1 << (nr % (8*sizeof(*addr)))); \
-+ do { \
-+ old = *m; \
-+ new = old & bit; \
-+ } while (cmpxchg_acq(m, old, new) != old); \
-+})
- #endif
-
- /* memory API */
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2007-05-03 19:08:57.000000000 +0100
-+++ ioemu/vl.c 2007-05-03 19:09:15.000000000 +0100
+--- ioemu.orig/vl.c 2007-05-10 15:49:53.000000000 +0100
++++ ioemu/vl.c 2007-05-10 15:54:48.000000000 +0100
@@ -7149,6 +7149,11 @@
}
#endif
@@ -111,31 +75,10 @@ Index: ioemu/vl.c
#else /* !CONFIG_DM */
phys_ram_base = qemu_vmalloc(phys_ram_size);
-Index: ioemu/exec-all.h
-===================================================================
---- ioemu.orig/exec-all.h 2007-05-03 18:38:09.000000000 +0100
-+++ ioemu/exec-all.h 2007-05-03 19:09:15.000000000 +0100
-@@ -472,12 +472,13 @@
- }
- #endif
-
--#ifdef __ia64
--#include <ia64intrin.h>
-+#ifdef __ia64__
-+#include "ia64_intrinsic.h"
-
- static inline int testandset (int *p)
- {
-- return __sync_lock_test_and_set (p, 1);
-+ uint32_t o = 0, n = 1;
-+ return (int)cmpxchg_acq(p, o, n);
- }
- #endif
-
Index: ioemu/target-i386-dm/cpu.h
===================================================================
---- ioemu.orig/target-i386-dm/cpu.h 2007-05-03 18:49:10.000000000 +0100
-+++ ioemu/target-i386-dm/cpu.h 2007-05-03 19:09:15.000000000 +0100
+--- ioemu.orig/target-i386-dm/cpu.h 2007-05-10 15:49:26.000000000 +0100
++++ ioemu/target-i386-dm/cpu.h 2007-05-10 15:54:46.000000000 +0100
@@ -78,7 +78,11 @@
/* helper2.c */
int main_loop(void);
@@ -148,284 +91,3 @@ Index: ioemu/target-i386-dm/cpu.h
#include "cpu-all.h"
#endif /* CPU_I386_H */
-Index: ioemu/ia64_intrinsic.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ ioemu/ia64_intrinsic.h 2007-05-03 19:09:15.000000000 +0100
-@@ -0,0 +1,276 @@
-+#ifndef IA64_INTRINSIC_H
-+#define IA64_INTRINSIC_H
-+
-+/*
-+ * Compiler-dependent Intrinsics
-+ *
-+ * Copyright (C) 2002,2003 Jun Nakajima <jun.nakajima@xxxxxxxxx>
-+ * Copyright (C) 2002,2003 Suresh Siddha <suresh.b.siddha@xxxxxxxxx>
-+ *
-+ */
-+extern long ia64_cmpxchg_called_with_bad_pointer (void);
-+extern void ia64_bad_param_for_getreg (void);
-+#define ia64_cmpxchg(sem,ptr,o,n,s) ({
\
-+ uint64_t _o, _r; \
-+ switch(s) { \
-+ case 1: _o = (uint8_t)(long)(o); break; \
-+ case 2: _o = (uint16_t)(long)(o); break; \
-+ case 4: _o = (uint32_t)(long)(o); break; \
-+ case 8: _o = (uint64_t)(long)(o); break; \
-+ default: break; \
-+ } \
-+ switch(s) { \
-+ case 1: \
-+ _r = ia64_cmpxchg1_##sem((uint8_t*)ptr,n,_o); break; \
-+ case 2: \
-+ _r = ia64_cmpxchg2_##sem((uint16_t*)ptr,n,_o); break; \
-+ case 4: \
-+ _r = ia64_cmpxchg4_##sem((uint32_t*)ptr,n,_o); break; \
-+ case 8: \
-+ _r = ia64_cmpxchg8_##sem((uint64_t*)ptr,n,_o); break; \
-+ default: \
-+ _r = ia64_cmpxchg_called_with_bad_pointer(); break; \
-+ } \
-+ (__typeof__(o)) _r; \
-+})
-+
-+#define cmpxchg_acq(ptr,o,n) ia64_cmpxchg(acq,ptr,o,n,sizeof(*ptr))
-+#define cmpxchg_rel(ptr,o,n) ia64_cmpxchg(rel,ptr,o,n,sizeof(*ptr))
-+
-+/*
-+ * Register Names for getreg() and setreg().
-+ *
-+ * The "magic" numbers happen to match the values used by the Intel compiler's
-+ * getreg()/setreg() intrinsics.
-+ */
-+
-+/* Special Registers */
-+
-+#define _IA64_REG_IP 1016 /* getreg only */
-+#define _IA64_REG_PSR 1019
-+#define _IA64_REG_PSR_L 1019
-+
-+/* General Integer Registers */
-+
-+#define _IA64_REG_GP 1025 /* R1 */
-+#define _IA64_REG_R8 1032 /* R8 */
-+#define _IA64_REG_R9 1033 /* R9 */
-+#define _IA64_REG_SP 1036 /* R12 */
-+#define _IA64_REG_TP 1037 /* R13 */
-+
-+/* Application Registers */
-+
-+#define _IA64_REG_AR_KR0 3072
-+#define _IA64_REG_AR_KR1 3073
-+#define _IA64_REG_AR_KR2 3074
-+#define _IA64_REG_AR_KR3 3075
-+#define _IA64_REG_AR_KR4 3076
-+#define _IA64_REG_AR_KR5 3077
-+#define _IA64_REG_AR_KR6 3078
-+#define _IA64_REG_AR_KR7 3079
-+#define _IA64_REG_AR_RSC 3088
-+#define _IA64_REG_AR_BSP 3089
-+#define _IA64_REG_AR_BSPSTORE 3090
-+#define _IA64_REG_AR_RNAT 3091
-+#define _IA64_REG_AR_FCR 3093
-+#define _IA64_REG_AR_EFLAG 3096
-+#define _IA64_REG_AR_CSD 3097
-+#define _IA64_REG_AR_SSD 3098
-+#define _IA64_REG_AR_CFLAG 3099
-+#define _IA64_REG_AR_FSR 3100
-+#define _IA64_REG_AR_FIR 3101
-+#define _IA64_REG_AR_FDR 3102
-+#define _IA64_REG_AR_CCV 3104
-+#define _IA64_REG_AR_UNAT 3108
-+#define _IA64_REG_AR_FPSR 3112
-+#define _IA64_REG_AR_ITC 3116
-+#define _IA64_REG_AR_PFS 3136
-+#define _IA64_REG_AR_LC 3137
-+#define _IA64_REG_AR_EC 3138
-+
-+/* Control Registers */
-+
-+#define _IA64_REG_CR_DCR 4096
-+#define _IA64_REG_CR_ITM 4097
-+#define _IA64_REG_CR_IVA 4098
-+#define _IA64_REG_CR_PTA 4104
-+#define _IA64_REG_CR_IPSR 4112
-+#define _IA64_REG_CR_ISR 4113
-+#define _IA64_REG_CR_IIP 4115
-+#define _IA64_REG_CR_IFA 4116
-+#define _IA64_REG_CR_ITIR 4117
-+#define _IA64_REG_CR_IIPA 4118
-+#define _IA64_REG_CR_IFS 4119
-+#define _IA64_REG_CR_IIM 4120
-+#define _IA64_REG_CR_IHA 4121
-+#define _IA64_REG_CR_LID 4160
-+#define _IA64_REG_CR_IVR 4161 /* getreg only */
-+#define _IA64_REG_CR_TPR 4162
-+#define _IA64_REG_CR_EOI 4163
-+#define _IA64_REG_CR_IRR0 4164 /* getreg only */
-+#define _IA64_REG_CR_IRR1 4165 /* getreg only */
-+#define _IA64_REG_CR_IRR2 4166 /* getreg only */
-+#define _IA64_REG_CR_IRR3 4167 /* getreg only */
-+#define _IA64_REG_CR_ITV 4168
-+#define _IA64_REG_CR_PMV 4169
-+#define _IA64_REG_CR_CMCV 4170
-+#define _IA64_REG_CR_LRR0 4176
-+#define _IA64_REG_CR_LRR1 4177
-+
-+/* Indirect Registers for getindreg() and setindreg() */
-+
-+#define _IA64_REG_INDR_CPUID 9000 /* getindreg only */
-+#define _IA64_REG_INDR_DBR 9001
-+#define _IA64_REG_INDR_IBR 9002
-+#define _IA64_REG_INDR_PKR 9003
-+#define _IA64_REG_INDR_PMC 9004
-+#define _IA64_REG_INDR_PMD 9005
-+#define _IA64_REG_INDR_RR 9006
-+
-+#ifdef __INTEL_COMPILER
-+void __fc(uint64_t *addr);
-+void __synci(void);
-+void __isrlz(void);
-+void __dsrlz(void);
-+uint64_t __getReg(const int whichReg);
-+uint64_t _InterlockedCompareExchange8_rel(volatile uint8_t *dest, uint64_t
xchg, uint64_t comp);
-+uint64_t _InterlockedCompareExchange8_acq(volatile uint8_t *dest, uint64_t
xchg, uint64_t comp);
-+uint64_t _InterlockedCompareExchange16_rel(volatile uint16_t *dest, uint64_t
xchg, uint64_t comp);
-+uint64_t _InterlockedCompareExchange16_acq(volatile uint16_t *dest, uint64_t
xchg, uint64_t comp);
-+uint64_t _InterlockedCompareExchange_rel(volatile uint32_t *dest, uint64_t
xchg, uint64_t comp);
-+uint64_t _InterlockedCompareExchange_acq(volatile uint32_t *dest, uint64_t
xchg, uint64_t comp);
-+uint64_t _InterlockedCompareExchange64_rel(volatile uint64_t *dest, uint64_t
xchg, uint64_t comp);
-+u64_t _InterlockedCompareExchange64_acq(volatile uint64_t *dest, uint64_t
xchg, uint64_t comp);
-+
-+#define ia64_cmpxchg1_rel _InterlockedCompareExchange8_rel
-+#define ia64_cmpxchg1_acq _InterlockedCompareExchange8_acq
-+#define ia64_cmpxchg2_rel _InterlockedCompareExchange16_rel
-+#define ia64_cmpxchg2_acq _InterlockedCompareExchange16_acq
-+#define ia64_cmpxchg4_rel _InterlockedCompareExchange_rel
-+#define ia64_cmpxchg4_acq _InterlockedCompareExchange_acq
-+#define ia64_cmpxchg8_rel _InterlockedCompareExchange64_rel
-+#define ia64_cmpxchg8_acq _InterlockedCompareExchange64_acq
-+
-+#define ia64_srlz_d __dsrlz
-+#define ia64_srlz_i __isrlz
-+#define __ia64_fc __fc
-+#define ia64_sync_i __synci
-+#define __ia64_getreg __getReg
-+#else /* __INTEL_COMPILER */
-+#define ia64_cmpxchg1_acq(ptr, new, old)
\
-+({
\
-+ uint64_t ia64_intri_res;
\
-+ asm volatile ("mov ar.ccv=%0;;" :: "rO"(old));
\
-+ asm volatile ("cmpxchg1.acq %0=[%1],%2,ar.ccv":
\
-+ "=r"(ia64_intri_res) : "r"(ptr), "r"(new) :
"memory"); \
-+ ia64_intri_res;
\
-+})
-+
-+#define ia64_cmpxchg1_rel(ptr, new, old)
\
-+({
\
-+ uint64_t ia64_intri_res;
\
-+ asm volatile ("mov ar.ccv=%0;;" :: "rO"(old));
\
-+ asm volatile ("cmpxchg1.rel %0=[%1],%2,ar.ccv":
\
-+ "=r"(ia64_intri_res) : "r"(ptr), "r"(new) :
"memory"); \
-+ ia64_intri_res;
\
-+})
-+
-+#define ia64_cmpxchg2_acq(ptr, new, old)
\
-+({
\
-+ uint64_t ia64_intri_res;
\
-+ asm volatile ("mov ar.ccv=%0;;" :: "rO"(old));
\
-+ asm volatile ("cmpxchg2.acq %0=[%1],%2,ar.ccv":
\
-+ "=r"(ia64_intri_res) : "r"(ptr), "r"(new) :
"memory"); \
-+ ia64_intri_res;
\
-+})
-+
-+#define ia64_cmpxchg2_rel(ptr, new, old)
\
-+({
\
-+ uint64_t ia64_intri_res;
\
-+ asm volatile ("mov ar.ccv=%0;;" :: "rO"(old));
\
-+
\
-+ asm volatile ("cmpxchg2.rel %0=[%1],%2,ar.ccv":
\
-+ "=r"(ia64_intri_res) : "r"(ptr), "r"(new) :
"memory"); \
-+ ia64_intri_res;
\
-+})
-+
-+#define ia64_cmpxchg4_acq(ptr, new, old)
\
-+({
\
-+ uint64_t ia64_intri_res;
\
-+ asm volatile ("mov ar.ccv=%0;;" :: "rO"(old));
\
-+ asm volatile ("cmpxchg4.acq %0=[%1],%2,ar.ccv":
\
-+ "=r"(ia64_intri_res) : "r"(ptr), "r"(new) :
"memory"); \
-+ ia64_intri_res;
\
-+})
-+
-+#define ia64_cmpxchg4_rel(ptr, new, old)
\
-+({
\
-+ uint64_t ia64_intri_res;
\
-+ asm volatile ("mov ar.ccv=%0;;" :: "rO"(old));
\
-+ asm volatile ("cmpxchg4.rel %0=[%1],%2,ar.ccv":
\
-+ "=r"(ia64_intri_res) : "r"(ptr), "r"(new) :
"memory"); \
-+ ia64_intri_res;
\
-+})
-+
-+#define ia64_cmpxchg8_acq(ptr, new, old)
\
-+({
\
-+ uint64_t ia64_intri_res;
\
-+ asm volatile ("mov ar.ccv=%0;;" :: "rO"(old));
\
-+ asm volatile ("cmpxchg8.acq %0=[%1],%2,ar.ccv":
\
-+ "=r"(ia64_intri_res) : "r"(ptr), "r"(new) :
"memory"); \
-+ ia64_intri_res;
\
-+})
-+
-+#define ia64_cmpxchg8_rel(ptr, new, old)
\
-+({
\
-+ uint64_t ia64_intri_res;
\
-+ asm volatile ("mov ar.ccv=%0;;" :: "rO"(old));
\
-+
\
-+ asm volatile ("cmpxchg8.rel %0=[%1],%2,ar.ccv":
\
-+ "=r"(ia64_intri_res) : "r"(ptr), "r"(new) :
"memory"); \
-+ ia64_intri_res;
\
-+})
-+
-+#define ia64_srlz_i() asm volatile (";; srlz.i ;;" ::: "memory")
-+#define ia64_srlz_d() asm volatile (";; srlz.d" ::: "memory");
-+#define __ia64_fc(addr) asm volatile ("fc %0" :: "r"(addr) : "memory")
-+#define ia64_sync_i() asm volatile (";; sync.i" ::: "memory")
-+
-+register unsigned long ia64_r13 asm ("r13") __attribute_used__;
-+#define __ia64_getreg(regnum)
\
-+({
\
-+ uint64_t ia64_intri_res;
\
-+
\
-+ switch (regnum) {
\
-+ case _IA64_REG_GP:
\
-+ asm volatile ("mov %0=gp" : "=r"(ia64_intri_res));
\
-+ break;
\
-+ case _IA64_REG_IP:
\
-+ asm volatile ("mov %0=ip" : "=r"(ia64_intri_res));
\
-+ break;
\
-+ case _IA64_REG_PSR:
\
-+ asm volatile ("mov %0=psr" : "=r"(ia64_intri_res));
\
-+ break;
\
-+ case _IA64_REG_TP: /* for current() */
\
-+ ia64_intri_res = ia64_r13;
\
-+ break;
\
-+ case _IA64_REG_AR_KR0 ... _IA64_REG_AR_EC:
\
-+ asm volatile ("mov %0=ar%1" : "=r" (ia64_intri_res)
\
-+ : "i"(regnum - _IA64_REG_AR_KR0));
\
-+ break;
\
-+ case _IA64_REG_CR_DCR ... _IA64_REG_CR_LRR1:
\
-+ asm volatile ("mov %0=cr%1" : "=r" (ia64_intri_res)
\
-+ : "i" (regnum - _IA64_REG_CR_DCR));
\
-+ break;
\
-+ case _IA64_REG_SP:
\
-+ asm volatile ("mov %0=sp" : "=r" (ia64_intri_res));
\
-+ break;
\
-+ default:
\
-+ ia64_bad_param_for_getreg();
\
-+ break;
\
-+ }
\
-+ ia64_intri_res;
\
-+})
-+
-+#endif /* __INTEL_COMPILER */
-+#endif /* IA64_INTRINSIC_H */
diff -r 8f510bf078c7 -r 31a3f83d1610 tools/ioemu/patches/qemu-bootorder
--- a/tools/ioemu/patches/qemu-bootorder Thu May 10 15:58:35 2007 +0100
+++ b/tools/ioemu/patches/qemu-bootorder Thu May 10 16:05:31 2007 +0100
@@ -1,9 +1,9 @@ Index: ioemu/vl.c
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2007-05-09 13:48:26.000000000 +0100
-+++ ioemu/vl.c 2007-05-09 13:49:06.000000000 +0100
-@@ -136,7 +136,7 @@
- struct sockaddr_in vnclisten_addr;
+--- ioemu.orig/vl.c 2007-05-10 15:34:25.000000000 +0100
++++ ioemu/vl.c 2007-05-10 15:35:16.000000000 +0100
+@@ -135,7 +135,7 @@
+ int vncunused;
const char* keyboard_layout = NULL;
int64_t ticks_per_sec;
-int boot_device = 'c';
@@ -11,7 +11,7 @@ Index: ioemu/vl.c
uint64_t ram_size;
int pit_min_timer_count = 0;
int nb_nics;
-@@ -7068,14 +7068,14 @@
+@@ -7051,14 +7051,14 @@
break;
#endif /* !CONFIG_DM */
case QEMU_OPTION_boot:
@@ -31,7 +31,7 @@ Index: ioemu/vl.c
exit(1);
}
break;
-@@ -7442,6 +7442,7 @@
+@@ -7419,6 +7419,7 @@
exit(1);
}
@@ -39,7 +39,7 @@ Index: ioemu/vl.c
#ifdef TARGET_I386
if (boot_device == 'n') {
for (i = 0; i < nb_nics; i++) {
-@@ -7463,6 +7464,7 @@
+@@ -7440,6 +7441,7 @@
boot_device = 'c'; /* to prevent confusion by the BIOS */
}
#endif
@@ -47,7 +47,7 @@ Index: ioemu/vl.c
#if defined (__ia64__)
if (ram_size > MMIO_START)
-@@ -7472,6 +7474,7 @@
+@@ -7449,6 +7451,7 @@
/* init the memory */
phys_ram_size = ram_size + vga_ram_size + bios_size;
@@ -55,7 +55,7 @@ Index: ioemu/vl.c
for (i = 0; i < nb_option_roms; i++) {
int ret = get_image_size(option_rom[i]);
if (ret == -1) {
-@@ -7480,6 +7483,7 @@
+@@ -7457,6 +7460,7 @@
}
phys_ram_size += ret;
}
@@ -63,19 +63,19 @@ Index: ioemu/vl.c
#ifdef CONFIG_DM
-@@ -7711,6 +7715,7 @@
+@@ -7686,6 +7690,7 @@
+ machine->init(ram_size, vga_ram_size, boot_device,
ds, fd_filename, snapshot,
- kernel_filename, kernel_cmdline, initrd_filename,
- timeoffset);
+ kernel_filename, kernel_cmdline, initrd_filename);
+ free(boot_device);
/* init USB devices */
if (usb_enabled) {
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2007-05-09 13:48:26.000000000 +0100
-+++ ioemu/vl.h 2007-05-09 13:48:55.000000000 +0100
-@@ -705,7 +705,7 @@
+--- ioemu.orig/vl.h 2007-05-10 15:34:25.000000000 +0100
++++ ioemu/vl.h 2007-05-10 15:34:28.000000000 +0100
+@@ -703,7 +703,7 @@
#ifndef QEMU_TOOL
typedef void QEMUMachineInitFunc(uint64_t ram_size, int vga_ram_size,
@@ -83,8 +83,8 @@ Index: ioemu/vl.h
+ char *boot_device,
DisplayState *ds, const char **fd_filename, int snapshot,
const char *kernel_filename, const char *kernel_cmdline,
- const char *initrd_filename, time_t timeoffset);
-@@ -1219,7 +1219,7 @@
+ const char *initrd_filename);
+@@ -1217,7 +1217,7 @@
uint32_t start, uint32_t count);
int PPC_NVRAM_set_params (m48t59_t *nvram, uint16_t NVRAM_size,
const unsigned char *arch,
@@ -95,8 +95,8 @@ Index: ioemu/vl.h
uint32_t initrd_image, uint32_t initrd_size,
Index: ioemu/hw/pc.c
===================================================================
---- ioemu.orig/hw/pc.c 2007-05-09 13:48:26.000000000 +0100
-+++ ioemu/hw/pc.c 2007-05-09 13:48:55.000000000 +0100
+--- ioemu.orig/hw/pc.c 2007-05-10 15:34:25.000000000 +0100
++++ ioemu/hw/pc.c 2007-05-10 15:34:59.000000000 +0100
@@ -159,8 +159,25 @@
rtc_set_memory(s, info_ofs + 8, sectors);
}
@@ -119,8 +119,8 @@ Index: ioemu/hw/pc.c
+}
+
/* hd_table must contain 4 block drivers */
--static void cmos_init(uint64_t ram_size, int boot_device, BlockDriverState
**hd_table, time_t timeoffset)
-+static void cmos_init(uint64_t ram_size, char *boot_device, BlockDriverState
**hd_table, time_t timeoffset)
+-static void cmos_init(uint64_t ram_size, int boot_device, BlockDriverState
**hd_table)
++static void cmos_init(uint64_t ram_size, char *boot_device, BlockDriverState
**hd_table)
{
RTCState *s = rtc_state;
int val;
@@ -162,7 +162,7 @@ Index: ioemu/hw/pc.c
+static void pc_init1(uint64_t ram_size, int vga_ram_size, char *boot_device,
DisplayState *ds, const char **fd_filename, int snapshot,
const char *kernel_filename, const char *kernel_cmdline,
- const char *initrd_filename, time_t timeoffset,
+ const char *initrd_filename,
@@ -772,7 +782,7 @@
#endif
}
@@ -172,8 +172,8 @@ Index: ioemu/hw/pc.c
DisplayState *ds, const char **fd_filename,
int snapshot,
const char *kernel_filename,
-@@ -786,7 +796,7 @@
- initrd_filename, timeoffset, 1);
+@@ -785,7 +795,7 @@
+ initrd_filename, 1);
}
-static void pc_init_isa(uint64_t ram_size, int vga_ram_size, int boot_device,
diff -r 8f510bf078c7 -r 31a3f83d1610 tools/ioemu/patches/qemu-daemonize
--- a/tools/ioemu/patches/qemu-daemonize Thu May 10 15:58:35 2007 +0100
+++ b/tools/ioemu/patches/qemu-daemonize Thu May 10 16:05:31 2007 +0100
@@ -2,9 +2,9 @@ Changes required because qemu-dm runs da
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2007-05-03 20:30:30.000000000 +0100
-+++ ioemu/vl.c 2007-05-03 20:32:07.000000000 +0100
-@@ -7047,10 +7047,11 @@
+--- ioemu.orig/vl.c 2007-05-10 15:34:24.000000000 +0100
++++ ioemu/vl.c 2007-05-10 15:34:25.000000000 +0100
+@@ -7030,10 +7030,11 @@
}
break;
case QEMU_OPTION_nographic:
diff -r 8f510bf078c7 -r 31a3f83d1610 tools/ioemu/patches/qemu-dm
--- a/tools/ioemu/patches/qemu-dm Thu May 10 15:58:35 2007 +0100
+++ b/tools/ioemu/patches/qemu-dm Thu May 10 16:05:31 2007 +0100
@@ -1,7 +1,7 @@ Index: ioemu/Makefile.target
Index: ioemu/Makefile.target
===================================================================
---- ioemu.orig/Makefile.target 2007-05-09 13:47:24.000000000 +0100
-+++ ioemu/Makefile.target 2007-05-09 14:08:42.000000000 +0100
+--- ioemu.orig/Makefile.target 2007-05-10 15:36:06.000000000 +0100
++++ ioemu/Makefile.target 2007-05-10 15:56:20.000000000 +0100
@@ -332,7 +332,7 @@
endif
@@ -13,8 +13,8 @@ Index: ioemu/Makefile.target
VL_OBJS+=block-cow.o block-qcow.o aes.o block-vmdk.o block-cloop.o
block-dmg.o block-bochs.o block-vpc.o block-vvfat.o block-qcow2.o
Index: ioemu/configure
===================================================================
---- ioemu.orig/configure 2007-05-09 13:47:24.000000000 +0100
-+++ ioemu/configure 2007-05-09 14:08:42.000000000 +0100
+--- ioemu.orig/configure 2007-05-10 15:36:06.000000000 +0100
++++ ioemu/configure 2007-05-10 15:56:20.000000000 +0100
@@ -77,8 +77,8 @@
bigendian="no"
mingw32="no"
@@ -37,8 +37,8 @@ Index: ioemu/configure
target_user_only="yes"
Index: ioemu/cpu-all.h
===================================================================
---- ioemu.orig/cpu-all.h 2007-05-09 13:47:22.000000000 +0100
-+++ ioemu/cpu-all.h 2007-05-09 14:08:42.000000000 +0100
+--- ioemu.orig/cpu-all.h 2007-05-10 15:36:04.000000000 +0100
++++ ioemu/cpu-all.h 2007-05-10 15:56:20.000000000 +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 2007-05-09 13:47:22.000000000 +0100
-+++ ioemu/disas.h 2007-05-09 13:47:24.000000000 +0100
+--- ioemu.orig/disas.h 2007-05-10 15:36:04.000000000 +0100
++++ ioemu/disas.h 2007-05-10 15:36:06.000000000 +0100
@@ -1,6 +1,7 @@
#ifndef _QEMU_DISAS_H
#define _QEMU_DISAS_H
@@ -83,9 +83,25 @@ Index: ioemu/disas.h
#endif /* _QEMU_DISAS_H */
Index: ioemu/exec-all.h
===================================================================
---- ioemu.orig/exec-all.h 2007-05-09 13:47:22.000000000 +0100
-+++ ioemu/exec-all.h 2007-05-09 14:08:42.000000000 +0100
-@@ -519,7 +519,7 @@
+--- ioemu.orig/exec-all.h 2007-05-10 15:36:04.000000000 +0100
++++ ioemu/exec-all.h 2007-05-10 15:56:40.000000000 +0100
+@@ -357,6 +357,7 @@
+ extern CPUReadMemoryFunc *io_mem_read[IO_MEM_NB_ENTRIES][4];
+ extern void *io_mem_opaque[IO_MEM_NB_ENTRIES];
+
++#ifndef CONFIG_DM
+ #ifdef __powerpc__
+ static inline int testandset (int *p)
+ {
+@@ -480,6 +481,7 @@
+ return __sync_lock_test_and_set (p, 1);
+ }
+ #endif
++#endif /* !CONFIG_DM */
+
+ typedef int spinlock_t;
+
+@@ -519,7 +521,7 @@
extern int tb_invalidated_flag;
@@ -94,7 +110,7 @@ Index: ioemu/exec-all.h
void tlb_fill(target_ulong addr, int is_write, int is_user,
void *retaddr);
-@@ -546,7 +546,7 @@
+@@ -546,7 +548,7 @@
#endif
@@ -105,8 +121,8 @@ Index: ioemu/exec-all.h
return addr;
Index: ioemu/hw/pc.c
===================================================================
---- ioemu.orig/hw/pc.c 2007-05-09 13:47:22.000000000 +0100
-+++ ioemu/hw/pc.c 2007-05-09 14:08:42.000000000 +0100
+--- ioemu.orig/hw/pc.c 2007-05-10 15:36:04.000000000 +0100
++++ ioemu/hw/pc.c 2007-05-10 15:56:20.000000000 +0100
@@ -74,6 +74,7 @@
}
}
@@ -168,8 +184,8 @@ Index: ioemu/hw/pc.c
if (serial_hds[i]) {
Index: ioemu/hw/vga_int.h
===================================================================
---- ioemu.orig/hw/vga_int.h 2007-05-09 13:47:22.000000000 +0100
-+++ ioemu/hw/vga_int.h 2007-05-09 14:08:41.000000000 +0100
+--- ioemu.orig/hw/vga_int.h 2007-05-10 15:36:04.000000000 +0100
++++ ioemu/hw/vga_int.h 2007-05-10 15:56:19.000000000 +0100
@@ -28,7 +28,7 @@
#define ST01_DISP_ENABLE 0x01
@@ -181,8 +197,8 @@ Index: ioemu/hw/vga_int.h
#define VBE_DISPI_MAX_YRES 1200
Index: ioemu/monitor.c
===================================================================
---- ioemu.orig/monitor.c 2007-05-09 13:47:22.000000000 +0100
-+++ ioemu/monitor.c 2007-05-09 14:08:59.000000000 +0100
+--- ioemu.orig/monitor.c 2007-05-10 15:36:04.000000000 +0100
++++ ioemu/monitor.c 2007-05-10 15:56:20.000000000 +0100
@@ -69,6 +69,12 @@
void term_flush(void)
@@ -424,8 +440,8 @@ Index: ioemu/monitor.c
{
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2007-05-09 13:47:22.000000000 +0100
-+++ ioemu/vl.c 2007-05-09 14:08:42.000000000 +0100
+--- ioemu.orig/vl.c 2007-05-10 15:36:04.000000000 +0100
++++ ioemu/vl.c 2007-05-10 15:56:20.000000000 +0100
@@ -396,12 +396,15 @@
void hw_error(const char *fmt, ...)
{
diff -r 8f510bf078c7 -r 31a3f83d1610 tools/ioemu/patches/qemu-pci
--- a/tools/ioemu/patches/qemu-pci Thu May 10 15:58:35 2007 +0100
+++ b/tools/ioemu/patches/qemu-pci Thu May 10 16:05:31 2007 +0100
@@ -1,7 +1,7 @@ Index: ioemu/hw/pci.c
Index: ioemu/hw/pci.c
===================================================================
---- ioemu.orig/hw/pci.c 2007-05-09 14:10:16.000000000 +0100
-+++ ioemu/hw/pci.c 2007-05-09 14:10:38.000000000 +0100
+--- ioemu.orig/hw/pci.c 2007-05-10 15:17:54.000000000 +0100
++++ ioemu/hw/pci.c 2007-05-10 15:19:29.000000000 +0100
@@ -314,6 +314,7 @@
case 0x0b:
case 0x0e:
@@ -31,8 +31,8 @@ Index: ioemu/hw/pci.c
if (++addr > 0xff)
Index: ioemu/hw/rtl8139.c
===================================================================
---- ioemu.orig/hw/rtl8139.c 2007-05-09 14:10:36.000000000 +0100
-+++ ioemu/hw/rtl8139.c 2007-05-09 14:10:38.000000000 +0100
+--- ioemu.orig/hw/rtl8139.c 2007-05-10 15:17:54.000000000 +0100
++++ ioemu/hw/rtl8139.c 2007-05-10 15:19:29.000000000 +0100
@@ -3432,6 +3432,8 @@
pci_conf[0x0e] = 0x00; /* header_type */
pci_conf[0x3d] = 1; /* interrupt pin 0 */
@@ -44,8 +44,8 @@ Index: ioemu/hw/rtl8139.c
Index: ioemu/hw/usb-uhci.c
===================================================================
---- ioemu.orig/hw/usb-uhci.c 2007-05-09 14:10:34.000000000 +0100
-+++ ioemu/hw/usb-uhci.c 2007-05-09 14:10:38.000000000 +0100
+--- ioemu.orig/hw/usb-uhci.c 2007-05-10 15:17:54.000000000 +0100
++++ ioemu/hw/usb-uhci.c 2007-05-10 15:19:29.000000000 +0100
@@ -832,6 +832,8 @@
pci_conf[0x0e] = 0x00; // header_type
pci_conf[0x3d] = 4; // interrupt pin 3
@@ -57,9 +57,9 @@ Index: ioemu/hw/usb-uhci.c
qemu_register_usb_port(&s->ports[i].port, s, i, uhci_attach);
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2007-05-09 14:10:38.000000000 +0100
-+++ ioemu/vl.h 2007-05-09 14:10:38.000000000 +0100
-@@ -779,8 +779,11 @@
+--- ioemu.orig/vl.h 2007-05-10 15:19:28.000000000 +0100
++++ ioemu/vl.h 2007-05-10 15:19:29.000000000 +0100
+@@ -777,8 +777,11 @@
#define PCI_MAX_LAT 0x3f /* 8 bits */
struct PCIDevice {
diff -r 8f510bf078c7 -r 31a3f83d1610 tools/ioemu/patches/qemu-pci-vendor-ids
--- a/tools/ioemu/patches/qemu-pci-vendor-ids Thu May 10 15:58:35 2007 +0100
+++ b/tools/ioemu/patches/qemu-pci-vendor-ids Thu May 10 16:05:31 2007 +0100
@@ -1,7 +1,7 @@ Index: ioemu/hw/cirrus_vga.c
Index: ioemu/hw/cirrus_vga.c
===================================================================
---- ioemu.orig/hw/cirrus_vga.c 2007-05-03 19:16:30.000000000 +0100
-+++ ioemu/hw/cirrus_vga.c 2007-05-03 20:36:50.000000000 +0100
+--- ioemu.orig/hw/cirrus_vga.c 2007-05-10 15:04:56.000000000 +0100
++++ ioemu/hw/cirrus_vga.c 2007-05-10 15:05:07.000000000 +0100
@@ -3354,6 +3354,10 @@
pci_conf[0x0a] = PCI_CLASS_SUB_VGA;
pci_conf[0x0b] = PCI_CLASS_BASE_DISPLAY;
@@ -15,8 +15,8 @@ Index: ioemu/hw/cirrus_vga.c
s = &d->cirrus_vga;
Index: ioemu/hw/rtl8139.c
===================================================================
---- ioemu.orig/hw/rtl8139.c 2007-05-03 20:36:46.000000000 +0100
-+++ ioemu/hw/rtl8139.c 2007-05-03 20:36:50.000000000 +0100
+--- ioemu.orig/hw/rtl8139.c 2007-05-10 15:05:06.000000000 +0100
++++ ioemu/hw/rtl8139.c 2007-05-10 15:05:07.000000000 +0100
@@ -3432,8 +3432,10 @@
pci_conf[0x0e] = 0x00; /* header_type */
pci_conf[0x3d] = 1; /* interrupt pin 0 */
@@ -32,9 +32,9 @@ Index: ioemu/hw/rtl8139.c
Index: ioemu/hw/ide.c
===================================================================
---- ioemu.orig/hw/ide.c 2007-05-03 20:35:19.000000000 +0100
-+++ ioemu/hw/ide.c 2007-05-03 20:36:50.000000000 +0100
-@@ -2747,6 +2747,10 @@
+--- ioemu.orig/hw/ide.c 2007-05-10 15:05:02.000000000 +0100
++++ ioemu/hw/ide.c 2007-05-10 15:05:07.000000000 +0100
+@@ -2750,6 +2750,10 @@
pci_conf[0x0a] = 0x01; // class_sub = PCI_IDE
pci_conf[0x0b] = 0x01; // class_base = PCI_mass_storage
pci_conf[0x0e] = 0x00; // header_type
diff -r 8f510bf078c7 -r 31a3f83d1610 tools/ioemu/patches/qemu-serial-fixes
--- a/tools/ioemu/patches/qemu-serial-fixes Thu May 10 15:58:35 2007 +0100
+++ b/tools/ioemu/patches/qemu-serial-fixes Thu May 10 16:05:31 2007 +0100
@@ -13,9 +13,9 @@ Signed-off-by: Keir Fraser <keir@xensour
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2007-05-03 20:38:49.000000000 +0100
-+++ ioemu/vl.c 2007-05-03 20:39:06.000000000 +0100
-@@ -1874,7 +1874,7 @@
+--- ioemu.orig/vl.c 2007-05-10 15:35:24.000000000 +0100
++++ ioemu/vl.c 2007-05-10 15:35:25.000000000 +0100
+@@ -1871,7 +1871,7 @@
tty.c_iflag &= ~(IGNBRK|BRKINT|PARMRK|ISTRIP
|INLCR|IGNCR|ICRNL|IXON);
@@ -26,8 +26,8 @@ Index: ioemu/vl.c
switch(data_bits) {
Index: ioemu/hw/serial.c
===================================================================
---- ioemu.orig/hw/serial.c 2007-05-03 20:36:58.000000000 +0100
-+++ ioemu/hw/serial.c 2007-05-03 20:39:06.000000000 +0100
+--- ioemu.orig/hw/serial.c 2007-05-10 15:35:24.000000000 +0100
++++ ioemu/hw/serial.c 2007-05-10 15:35:25.000000000 +0100
@@ -73,6 +73,11 @@
#define UART_LSR_OE 0x02 /* Overrun error indicator */
#define UART_LSR_DR 0x01 /* Receiver data ready */
diff -r 8f510bf078c7 -r 31a3f83d1610
tools/ioemu/patches/qemu-tunable-ide-write-cache
--- a/tools/ioemu/patches/qemu-tunable-ide-write-cache Thu May 10 15:58:35
2007 +0100
+++ b/tools/ioemu/patches/qemu-tunable-ide-write-cache Thu May 10 16:05:31
2007 +0100
@@ -1,7 +1,7 @@ Index: ioemu/hw/ide.c
Index: ioemu/hw/ide.c
===================================================================
---- ioemu.orig/hw/ide.c 2007-05-03 20:31:55.000000000 +0100
-+++ ioemu/hw/ide.c 2007-05-03 20:35:19.000000000 +0100
+--- ioemu.orig/hw/ide.c 2007-05-10 15:04:31.000000000 +0100
++++ ioemu/hw/ide.c 2007-05-10 15:05:02.000000000 +0100
@@ -306,6 +306,7 @@
PCIDevice *pci_dev;
struct BMDMAState *bmdma;
@@ -20,7 +20,17 @@ Index: ioemu/hw/ide.c
#ifdef TARGET_I386
if (win2k_install_hack && ((++s->irq_count % 16) == 0)) {
/* It seems there is a bug in the Windows 2000 installer HDD
-@@ -1849,7 +1853,15 @@
+@@ -956,6 +960,9 @@
+
+ /* end of transfer ? */
+ if (s->nsector == 0) {
++ /* Ensure the data hit disk before telling the guest OS so. */
++ if (!s->write_cache)
++ bdrv_flush(s->bs);
+ s->status = READY_STAT | SEEK_STAT;
+ ide_set_irq(s);
+ eot:
+@@ -1849,7 +1856,15 @@
/* XXX: valid for CDROM ? */
switch(s->feature) {
case 0x02: /* write cache enable */
@@ -36,7 +46,7 @@ Index: ioemu/hw/ide.c
case 0xaa: /* read look-ahead enable */
case 0x55: /* read look-ahead disable */
s->status = READY_STAT | SEEK_STAT;
-@@ -2282,6 +2294,7 @@
+@@ -2282,6 +2297,7 @@
s->irq = irq;
s->sector_write_timer = qemu_new_timer(vm_clock,
ide_sector_write_timer_cb, s);
diff -r 8f510bf078c7 -r 31a3f83d1610 tools/ioemu/patches/scsi
--- a/tools/ioemu/patches/scsi Thu May 10 15:58:35 2007 +0100
+++ b/tools/ioemu/patches/scsi Thu May 10 16:05:31 2007 +0100
@@ -1,7 +1,7 @@ Index: ioemu/vl.c
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2007-05-09 13:49:10.000000000 +0100
-+++ ioemu/vl.c 2007-05-09 13:49:10.000000000 +0100
+--- ioemu.orig/vl.c 2007-05-10 15:35:25.000000000 +0100
++++ ioemu/vl.c 2007-05-10 15:35:25.000000000 +0100
@@ -124,7 +124,7 @@
IOPortWriteFunc *ioport_write_table[3][MAX_IOPORTS];
/* Note: bs_table[MAX_DISKS] is a dummy block driver if none available
@@ -11,7 +11,7 @@ Index: ioemu/vl.c
/* point to the block driver where the snapshots are managed */
BlockDriverState *bs_snapshots;
int vga_ram_size;
-@@ -1529,7 +1529,7 @@
+@@ -1526,7 +1526,7 @@
case 's':
{
int i;
@@ -20,7 +20,7 @@ Index: ioemu/vl.c
if (bs_table[i])
bdrv_commit(bs_table[i]);
}
-@@ -6969,7 +6969,7 @@
+@@ -6954,7 +6954,7 @@
int snapshot, linux_boot;
const char *initrd_filename;
#ifndef CONFIG_DM
@@ -29,7 +29,7 @@ Index: ioemu/vl.c
#endif /* !CONFIG_DM */
const char *fd_filename[MAX_FD];
const char *kernel_filename, *kernel_cmdline;
-@@ -7038,7 +7038,7 @@
+@@ -7023,7 +7023,7 @@
for(i = 0; i < MAX_FD; i++)
fd_filename[i] = NULL;
#ifndef CONFIG_DM
@@ -38,7 +38,7 @@ Index: ioemu/vl.c
hd_filename[i] = NULL;
#endif /* !CONFIG_DM */
ram_size = DEFAULT_RAM_SIZE * 1024 * 1024;
-@@ -7737,7 +7737,7 @@
+@@ -7714,7 +7714,7 @@
}
/* open the virtual block devices */
@@ -49,9 +49,9 @@ Index: ioemu/vl.c
char buf[64];
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2007-05-09 13:49:10.000000000 +0100
-+++ ioemu/vl.h 2007-05-09 13:51:28.000000000 +0100
-@@ -965,8 +965,9 @@
+--- ioemu.orig/vl.h 2007-05-10 15:35:25.000000000 +0100
++++ ioemu/vl.h 2007-05-10 15:35:25.000000000 +0100
+@@ -963,8 +963,9 @@
/* ide.c */
#define MAX_DISKS 4
@@ -64,8 +64,8 @@ Index: ioemu/vl.h
BlockDriverState *hd0, BlockDriverState *hd1);
Index: ioemu/hw/pc.c
===================================================================
---- ioemu.orig/hw/pc.c 2007-05-09 13:49:09.000000000 +0100
-+++ ioemu/hw/pc.c 2007-05-09 13:49:10.000000000 +0100
+--- ioemu.orig/hw/pc.c 2007-05-10 15:35:25.000000000 +0100
++++ ioemu/hw/pc.c 2007-05-10 15:35:25.000000000 +0100
@@ -761,7 +761,6 @@
piix4_smbus_register_device(eeprom, 0x50 + i);
}
@@ -95,8 +95,8 @@ Index: ioemu/hw/pc.c
static void pc_init_pci(uint64_t ram_size, int vga_ram_size, char
*boot_device,
Index: ioemu/xenstore.c
===================================================================
---- ioemu.orig/xenstore.c 2007-05-09 13:49:10.000000000 +0100
-+++ ioemu/xenstore.c 2007-05-09 13:49:10.000000000 +0100
+--- ioemu.orig/xenstore.c 2007-05-10 15:35:25.000000000 +0100
++++ ioemu/xenstore.c 2007-05-10 15:35:25.000000000 +0100
@@ -18,7 +18,7 @@
#include <fcntl.h>
@@ -163,8 +163,8 @@ Index: ioemu/xenstore.c
}
Index: ioemu/monitor.c
===================================================================
---- ioemu.orig/monitor.c 2007-05-09 13:48:54.000000000 +0100
-+++ ioemu/monitor.c 2007-05-09 13:49:19.000000000 +0100
+--- ioemu.orig/monitor.c 2007-05-10 15:32:53.000000000 +0100
++++ ioemu/monitor.c 2007-05-10 15:35:25.000000000 +0100
@@ -209,7 +209,7 @@
int i, all_devices;
@@ -176,8 +176,8 @@ Index: ioemu/monitor.c
!strcmp(bdrv_get_device_name(bs_table[i]), device))
Index: ioemu/hw/lsi53c895a.c
===================================================================
---- ioemu.orig/hw/lsi53c895a.c 2007-05-09 13:48:54.000000000 +0100
-+++ ioemu/hw/lsi53c895a.c 2007-05-09 13:49:10.000000000 +0100
+--- ioemu.orig/hw/lsi53c895a.c 2007-05-10 15:32:53.000000000 +0100
++++ ioemu/hw/lsi53c895a.c 2007-05-10 15:35:25.000000000 +0100
@@ -1351,8 +1351,13 @@
shift = (offset & 3) * 8;
return (s->scratch[n] >> shift) & 0xff;
diff -r 8f510bf078c7 -r 31a3f83d1610 tools/ioemu/patches/series
--- a/tools/ioemu/patches/series Thu May 10 15:58:35 2007 +0100
+++ b/tools/ioemu/patches/series Thu May 10 16:05:31 2007 +0100
@@ -5,7 +5,6 @@ qemu-64bit
qemu-64bit
qemu-bugfixes
qemu-logging
-qemu-infrastructure
qemu-hvm-banner
xen-domain-name
xen-domid
@@ -41,9 +40,7 @@ vnc-protocol-fixes
vnc-protocol-fixes
vnc-start-vncviewer
vnc-title-domain-name
-vnc-access-monitor-vt
vnc-display-find-unused
-vnc-listen-specific-interface
vnc-backoff-screen-scan
xenstore
xenstore-block-device-config
@@ -79,3 +76,4 @@ qemu-cirrus-bounds-checks
qemu-cirrus-bounds-checks
qemu-block-device-bounds-checks
qemu-dma-null-pointer-check
+vnc-fix-text-display-shift-key
diff -r 8f510bf078c7 -r 31a3f83d1610 tools/ioemu/patches/tpm-tis-device
--- a/tools/ioemu/patches/tpm-tis-device Thu May 10 15:58:35 2007 +0100
+++ b/tools/ioemu/patches/tpm-tis-device Thu May 10 16:05:31 2007 +0100
@@ -22,8 +22,8 @@ Signed-off-by: Stefan Berger <stefanb@us
Index: ioemu/Makefile.target
===================================================================
---- ioemu.orig/Makefile.target 2007-05-03 20:38:49.000000000 +0100
-+++ ioemu/Makefile.target 2007-05-03 20:39:04.000000000 +0100
+--- ioemu.orig/Makefile.target 2007-05-10 15:19:29.000000000 +0100
++++ ioemu/Makefile.target 2007-05-10 15:19:29.000000000 +0100
@@ -400,6 +400,7 @@
VL_OBJS+= piix4acpi.o
VL_OBJS+= xenstore.o
@@ -34,8 +34,8 @@ Index: ioemu/Makefile.target
ifeq ($(TARGET_BASE_ARCH), ppc)
Index: ioemu/hw/pc.c
===================================================================
---- ioemu.orig/hw/pc.c 2007-05-03 20:32:20.000000000 +0100
-+++ ioemu/hw/pc.c 2007-05-03 20:38:55.000000000 +0100
+--- ioemu.orig/hw/pc.c 2007-05-10 15:19:28.000000000 +0100
++++ ioemu/hw/pc.c 2007-05-10 15:19:29.000000000 +0100
@@ -730,6 +730,9 @@
}
}
@@ -49,7 +49,7 @@ Index: ioemu/hw/tpm_tis.c
Index: ioemu/hw/tpm_tis.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ ioemu/hw/tpm_tis.c 2007-05-03 20:38:55.000000000 +0100
++++ ioemu/hw/tpm_tis.c 2007-05-10 15:19:29.000000000 +0100
@@ -0,0 +1,1128 @@
+/*
+ * tpm_tis.c - QEMU emulator for a 1.2 TPM with TIS interface
@@ -1181,9 +1181,9 @@ Index: ioemu/hw/tpm_tis.c
+}
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2007-05-03 20:38:53.000000000 +0100
-+++ ioemu/vl.h 2007-05-03 20:38:55.000000000 +0100
-@@ -1088,6 +1088,10 @@
+--- ioemu.orig/vl.h 2007-05-10 15:19:29.000000000 +0100
++++ ioemu/vl.h 2007-05-10 15:19:29.000000000 +0100
+@@ -1086,6 +1086,10 @@
/* smbus_eeprom.c */
SMBusDevice *smbus_eeprom_device_init(uint8_t addr, uint8_t *buf);
diff -r 8f510bf078c7 -r 31a3f83d1610 tools/ioemu/patches/vnc-backoff-screen-scan
--- a/tools/ioemu/patches/vnc-backoff-screen-scan Thu May 10 15:58:35
2007 +0100
+++ b/tools/ioemu/patches/vnc-backoff-screen-scan Thu May 10 16:05:31
2007 +0100
@@ -1,7 +1,7 @@ Index: ioemu/vnc.c
Index: ioemu/vnc.c
===================================================================
---- ioemu.orig/vnc.c 2007-05-03 20:22:19.000000000 +0100
-+++ ioemu/vnc.c 2007-05-03 20:23:38.000000000 +0100
+--- ioemu.orig/vnc.c 2007-05-10 15:18:01.000000000 +0100
++++ ioemu/vnc.c 2007-05-10 15:18:58.000000000 +0100
@@ -28,7 +28,19 @@
#include "qemu_socket.h"
#include <assert.h>
@@ -23,7 +23,7 @@ Index: ioemu/vnc.c
#include "vnc_keysym.h"
#include "keymaps.c"
-@@ -65,10 +77,11 @@
+@@ -61,10 +73,11 @@
struct VncState
{
QEMUTimer *timer;
@@ -36,7 +36,7 @@ Index: ioemu/vnc.c
int width;
int height;
uint64_t *dirty_row; /* screen regions which are possibly dirty */
-@@ -106,8 +119,6 @@
+@@ -102,8 +115,6 @@
int visible_w;
int visible_h;
@@ -45,7 +45,7 @@ Index: ioemu/vnc.c
/* input */
uint8_t modifiers_state[256];
};
-@@ -412,7 +423,7 @@
+@@ -408,7 +419,7 @@
int y = 0;
int pitch = ds->linesize;
VncState *vs = ds->opaque;
@@ -54,7 +54,7 @@ Index: ioemu/vnc.c
if (src_x < vs->visible_x || src_y < vs->visible_y ||
dst_x < vs->visible_x || dst_y < vs->visible_y ||
-@@ -422,10 +433,8 @@
+@@ -418,10 +429,8 @@
(dst_y + h) > (vs->visible_y + vs->visible_h))
updating_client = 0;
@@ -66,7 +66,7 @@ Index: ioemu/vnc.c
if (dst_y > src_y) {
y = h - 1;
-@@ -477,110 +486,149 @@
+@@ -473,110 +482,149 @@
static void _vnc_update_client(void *opaque)
{
VncState *vs = opaque;
@@ -299,7 +299,7 @@ Index: ioemu/vnc.c
}
static void vnc_update_client(void *opaque)
-@@ -593,8 +641,10 @@
+@@ -589,8 +637,10 @@
static void vnc_timer_init(VncState *vs)
{
@@ -311,7 +311,7 @@ Index: ioemu/vnc.c
}
static void vnc_dpy_refresh(DisplayState *ds)
-@@ -654,7 +704,6 @@
+@@ -650,7 +700,6 @@
vs->csock = -1;
buffer_reset(&vs->input);
buffer_reset(&vs->output);
@@ -319,7 +319,7 @@ Index: ioemu/vnc.c
return 0;
}
return ret;
-@@ -961,7 +1010,6 @@
+@@ -957,7 +1006,6 @@
int x_position, int y_position,
int w, int h)
{
@@ -327,7 +327,7 @@ Index: ioemu/vnc.c
if (!incremental)
framebuffer_set_updated(vs, x_position, y_position, w, h);
vs->visible_x = x_position;
-@@ -1091,6 +1139,7 @@
+@@ -1087,6 +1135,7 @@
{
int i;
uint16_t limit;
@@ -335,7 +335,7 @@ Index: ioemu/vnc.c
switch (data[0]) {
case 0:
-@@ -1134,12 +1183,18 @@
+@@ -1130,12 +1179,18 @@
if (len == 1)
return 8;
@@ -356,9 +356,9 @@ Index: ioemu/vnc.c
case 6:
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2007-05-03 20:23:03.000000000 +0100
-+++ ioemu/vl.c 2007-05-03 20:23:30.000000000 +0100
-@@ -812,6 +812,12 @@
+--- ioemu.orig/vl.c 2007-05-10 15:18:01.000000000 +0100
++++ ioemu/vl.c 2007-05-10 15:18:58.000000000 +0100
+@@ -811,6 +811,12 @@
}
}
@@ -373,9 +373,9 @@ Index: ioemu/vl.c
void qemu_mod_timer(QEMUTimer *ts, int64_t expire_time)
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2007-05-03 20:23:25.000000000 +0100
-+++ ioemu/vl.h 2007-05-03 20:23:30.000000000 +0100
-@@ -443,6 +443,7 @@
+--- ioemu.orig/vl.h 2007-05-10 15:18:01.000000000 +0100
++++ ioemu/vl.h 2007-05-10 15:18:58.000000000 +0100
+@@ -441,6 +441,7 @@
void qemu_free_timer(QEMUTimer *ts);
void qemu_del_timer(QEMUTimer *ts);
void qemu_mod_timer(QEMUTimer *ts, int64_t expire_time);
diff -r 8f510bf078c7 -r 31a3f83d1610 tools/ioemu/patches/vnc-display-find-unused
--- a/tools/ioemu/patches/vnc-display-find-unused Thu May 10 15:58:35
2007 +0100
+++ b/tools/ioemu/patches/vnc-display-find-unused Thu May 10 16:05:31
2007 +0100
@@ -1,8 +1,8 @@ Index: ioemu/vnc.c
Index: ioemu/vnc.c
===================================================================
---- ioemu.orig/vnc.c 2007-05-09 14:12:04.000000000 +0100
-+++ ioemu/vnc.c 2007-05-09 14:12:21.000000000 +0100
-@@ -1270,7 +1270,7 @@
+--- ioemu.orig/vnc.c 2007-05-10 15:11:41.000000000 +0100
++++ ioemu/vnc.c 2007-05-10 15:11:41.000000000 +0100
+@@ -1266,7 +1266,7 @@
extern int parse_host_port(struct sockaddr_in *saddr, const char *str);
@@ -11,7 +11,7 @@ Index: ioemu/vnc.c
{
struct sockaddr *addr;
struct sockaddr_in iaddr;
-@@ -1312,6 +1312,9 @@
+@@ -1308,6 +1308,9 @@
vnc_dpy_resize(vs->ds, 640, 400);
@@ -21,7 +21,7 @@ Index: ioemu/vnc.c
#ifndef _WIN32
if (strstart(arg, "unix:", &p)) {
addr = (struct sockaddr *)&uaddr;
-@@ -1356,7 +1359,11 @@
+@@ -1352,7 +1355,11 @@
}
}
@@ -34,7 +34,7 @@ Index: ioemu/vnc.c
fprintf(stderr, "bind() failed\n");
exit(1);
}
-@@ -1370,6 +1377,8 @@
+@@ -1366,6 +1373,8 @@
if (ret == -1) {
exit(1);
}
@@ -45,8 +45,8 @@ Index: ioemu/vnc.c
int vnc_start_viewer(int port)
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2007-05-09 14:12:03.000000000 +0100
-+++ ioemu/vl.c 2007-05-09 14:12:16.000000000 +0100
+--- ioemu.orig/vl.c 2007-05-10 15:11:41.000000000 +0100
++++ ioemu/vl.c 2007-05-10 15:11:41.000000000 +0100
@@ -132,6 +132,7 @@
static DisplayState display_state;
int nographic;
@@ -130,8 +130,8 @@ Index: ioemu/vl.c
}
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2007-05-09 14:12:03.000000000 +0100
-+++ ioemu/vl.h 2007-05-09 14:12:16.000000000 +0100
+--- ioemu.orig/vl.h 2007-05-10 15:11:41.000000000 +0100
++++ ioemu/vl.h 2007-05-10 15:11:41.000000000 +0100
@@ -928,7 +928,7 @@
void cocoa_display_init(DisplayState *ds, int full_screen);
diff -r 8f510bf078c7 -r 31a3f83d1610 tools/ioemu/patches/vnc-fix-signedness
--- a/tools/ioemu/patches/vnc-fix-signedness Thu May 10 15:58:35 2007 +0100
+++ b/tools/ioemu/patches/vnc-fix-signedness Thu May 10 16:05:31 2007 +0100
@@ -8,9 +8,9 @@ Signed-off-by: Anthony Liguori <aliguor
Index: ioemu/vnc.c
===================================================================
---- ioemu.orig/vnc.c 2007-05-09 14:12:44.000000000 +0100
-+++ ioemu/vnc.c 2007-05-09 14:12:45.000000000 +0100
-@@ -54,12 +54,12 @@
+--- ioemu.orig/vnc.c 2007-05-10 15:19:29.000000000 +0100
++++ ioemu/vnc.c 2007-05-10 15:19:30.000000000 +0100
+@@ -50,12 +50,12 @@
{
size_t capacity;
size_t offset;
@@ -25,7 +25,7 @@ Index: ioemu/vnc.c
typedef void VncWritePixels(VncState *vs, void *data, int size);
-@@ -90,7 +90,7 @@
+@@ -86,7 +86,7 @@
uint64_t *update_row; /* outstanding updates */
int has_update; /* there's outstanding updates in the
* visible area */
@@ -34,7 +34,7 @@ Index: ioemu/vnc.c
int depth; /* internal VNC frame buffer byte per pixel */
int has_resize;
int has_hextile;
-@@ -165,7 +165,7 @@
+@@ -161,7 +161,7 @@
static void vnc_update_client(void *opaque);
static void vnc_client_read(void *opaque);
static void framebuffer_set_updated(VncState *vs, int x, int y, int w, int h);
@@ -43,7 +43,7 @@ Index: ioemu/vnc.c
static void set_seed(unsigned int *seedp);
static void get_random(int len, unsigned char *buf);
-@@ -357,7 +357,7 @@
+@@ -353,7 +353,7 @@
static void send_framebuffer_update_raw(VncState *vs, int x, int y, int w,
int h)
{
int i;
@@ -52,7 +52,7 @@ Index: ioemu/vnc.c
vnc_framebuffer_update(vs, x, y, w, h, 0);
-@@ -421,9 +421,9 @@
+@@ -417,9 +417,9 @@
static void vnc_copy(DisplayState *ds, int src_x, int src_y, int dst_x, int
dst_y, int w, int h)
{
int src, dst;
@@ -65,7 +65,7 @@ Index: ioemu/vnc.c
int y = 0;
int pitch = ds->linesize;
VncState *vs = ds->opaque;
-@@ -492,8 +492,8 @@
+@@ -488,8 +488,8 @@
VncState *vs = opaque;
int64_t now;
int y;
@@ -76,7 +76,7 @@ Index: ioemu/vnc.c
uint64_t width_mask;
int n_rectangles;
int saved_offset;
-@@ -518,7 +518,7 @@
+@@ -514,7 +514,7 @@
for (y = 0; y < vs->ds->height; y++) {
if (vs->dirty_row[y] & width_mask) {
int x;
@@ -85,7 +85,7 @@ Index: ioemu/vnc.c
ptr = row;
old_ptr = old_row;
-@@ -681,7 +681,7 @@
+@@ -677,7 +677,7 @@
return buffer->offset == 0;
}
@@ -94,7 +94,7 @@ Index: ioemu/vnc.c
{
return buffer->buffer + buffer->offset;
}
-@@ -815,7 +815,7 @@
+@@ -811,7 +811,7 @@
static void vnc_write_u8(VncState *vs, uint8_t value)
{
@@ -103,7 +103,7 @@ Index: ioemu/vnc.c
}
static void vnc_flush(VncState *vs)
-@@ -1139,11 +1139,10 @@
+@@ -1135,11 +1135,10 @@
vga_hw_update();
}
@@ -116,7 +116,7 @@ Index: ioemu/vnc.c
switch (data[0]) {
case 0:
-@@ -1212,7 +1211,7 @@
+@@ -1208,7 +1207,7 @@
return 8 + v;
}
@@ -125,7 +125,7 @@ Index: ioemu/vnc.c
break;
default:
printf("Msg: %d\n", data[0]);
-@@ -1224,7 +1223,7 @@
+@@ -1220,7 +1219,7 @@
return 0;
}
@@ -134,7 +134,7 @@ Index: ioemu/vnc.c
{
size_t l;
char pad[3] = { 0, 0, 0 };
-@@ -1285,7 +1284,7 @@
+@@ -1281,7 +1280,7 @@
return 0;
}
@@ -143,7 +143,7 @@ Index: ioemu/vnc.c
{
extern char vncpasswd[64];
extern unsigned char challenge[AUTHCHALLENGESIZE];
-@@ -1323,7 +1322,7 @@
+@@ -1319,7 +1318,7 @@
return 0;
}
@@ -152,7 +152,7 @@ Index: ioemu/vnc.c
{
extern char vncpasswd[64];
extern unsigned char challenge[AUTHCHALLENGESIZE];
-@@ -1538,7 +1537,7 @@
+@@ -1535,7 +1534,7 @@
unsigned int seed;
@@ -163,8 +163,8 @@ Index: ioemu/vnc.c
set_seed(&seed);
Index: ioemu/vnchextile.h
===================================================================
---- ioemu.orig/vnchextile.h 2007-05-09 14:12:15.000000000 +0100
-+++ ioemu/vnchextile.h 2007-05-09 14:12:45.000000000 +0100
+--- ioemu.orig/vnchextile.h 2007-05-10 15:17:54.000000000 +0100
++++ ioemu/vnchextile.h 2007-05-10 15:19:30.000000000 +0100
@@ -13,7 +13,7 @@
uint32_t *last_fg32,
int *has_bg, int *has_fg)
diff -r 8f510bf078c7 -r 31a3f83d1610 tools/ioemu/patches/vnc-fix-version-check
--- a/tools/ioemu/patches/vnc-fix-version-check Thu May 10 15:58:35 2007 +0100
+++ b/tools/ioemu/patches/vnc-fix-version-check Thu May 10 16:05:31 2007 +0100
@@ -1,8 +1,8 @@ Index: ioemu/vnc.c
Index: ioemu/vnc.c
===================================================================
---- ioemu.orig/vnc.c 2007-05-03 20:53:32.000000000 +0100
-+++ ioemu/vnc.c 2007-05-03 20:53:59.000000000 +0100
-@@ -1341,7 +1341,7 @@
+--- ioemu.orig/vnc.c 2007-05-10 15:11:44.000000000 +0100
++++ ioemu/vnc.c 2007-05-10 15:11:44.000000000 +0100
+@@ -1337,7 +1337,7 @@
support = 0;
diff -r 8f510bf078c7 -r 31a3f83d1610 tools/ioemu/patches/vnc-password
--- a/tools/ioemu/patches/vnc-password Thu May 10 15:58:35 2007 +0100
+++ b/tools/ioemu/patches/vnc-password Thu May 10 16:05:31 2007 +0100
@@ -17,8 +17,8 @@ Signed-off-by: Masami Watanabe <masami.w
Index: ioemu/Makefile.target
===================================================================
---- ioemu.orig/Makefile.target 2007-05-09 14:12:44.000000000 +0100
-+++ ioemu/Makefile.target 2007-05-09 14:12:44.000000000 +0100
+--- ioemu.orig/Makefile.target 2007-05-10 15:35:24.000000000 +0100
++++ ioemu/Makefile.target 2007-05-10 15:35:24.000000000 +0100
@@ -443,6 +443,7 @@
VL_OBJS+=sdl.o x_keymap.o
endif
@@ -39,9 +39,9 @@ Index: ioemu/Makefile.target
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2007-05-09 14:12:44.000000000 +0100
-+++ ioemu/vl.c 2007-05-09 14:12:44.000000000 +0100
-@@ -189,6 +189,9 @@
+--- ioemu.orig/vl.c 2007-05-10 15:35:16.000000000 +0100
++++ ioemu/vl.c 2007-05-10 15:35:24.000000000 +0100
+@@ -186,6 +186,9 @@
char domain_name[1024] = { 'H','V', 'M', 'X', 'E', 'N', '-'};
extern int domid;
@@ -51,7 +51,7 @@ Index: ioemu/vl.c
/***********************************************************/
/* x86 ISA bus support */
-@@ -6897,6 +6900,7 @@
+@@ -6882,6 +6885,7 @@
vncunused = 0;
kernel_filename = NULL;
kernel_cmdline = "";
@@ -59,7 +59,7 @@ Index: ioemu/vl.c
#ifndef CONFIG_DM
#ifdef TARGET_PPC
cdrom_index = 1;
-@@ -7644,6 +7648,10 @@
+@@ -7621,6 +7625,10 @@
init_ioports();
@@ -72,9 +72,9 @@ Index: ioemu/vl.c
dumb_display_init(ds);
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2007-05-09 14:12:44.000000000 +0100
-+++ ioemu/vl.h 2007-05-09 14:12:44.000000000 +0100
-@@ -1434,6 +1434,7 @@
+--- ioemu.orig/vl.h 2007-05-10 15:35:24.000000000 +0100
++++ ioemu/vl.h 2007-05-10 15:35:24.000000000 +0100
+@@ -1432,6 +1432,7 @@
void xenstore_process_event(void *opaque);
void xenstore_check_new_media_present(int timeout);
void xenstore_write_vncport(int vnc_display);
@@ -82,7 +82,7 @@ Index: ioemu/vl.h
int xenstore_vm_write(int domid, char *key, char *val);
char *xenstore_vm_read(int domid, char *key, int *len);
-@@ -1452,4 +1453,7 @@
+@@ -1450,4 +1451,7 @@
void destroy_hvm_domain(void);
@@ -92,17 +92,17 @@ Index: ioemu/vl.h
#endif /* VL_H */
Index: ioemu/vnc.c
===================================================================
---- ioemu.orig/vnc.c 2007-05-09 14:12:43.000000000 +0100
-+++ ioemu/vnc.c 2007-05-09 14:12:44.000000000 +0100
+--- ioemu.orig/vnc.c 2007-05-10 15:32:53.000000000 +0100
++++ ioemu/vnc.c 2007-05-10 15:35:24.000000000 +0100
@@ -44,6 +44,7 @@
#include "vnc_keysym.h"
#include "keymaps.c"
+#include "d3des.h"
- #define XK_MISCELLANY
- #define XK_LATIN1
-@@ -164,6 +165,9 @@
+ typedef struct Buffer
+ {
+@@ -160,6 +161,9 @@
static void vnc_update_client(void *opaque);
static void vnc_client_read(void *opaque);
static void framebuffer_set_updated(VncState *vs, int x, int y, int w, int h);
@@ -112,7 +112,7 @@ Index: ioemu/vnc.c
#if 0
static inline void vnc_set_bit(uint32_t *d, int k)
-@@ -1281,23 +1285,92 @@
+@@ -1277,23 +1281,92 @@
return 0;
}
@@ -209,7 +209,7 @@ Index: ioemu/vnc.c
return 0;
}
-@@ -1462,3 +1535,32 @@
+@@ -1459,3 +1532,32 @@
return pid;
}
}
@@ -244,8 +244,8 @@ Index: ioemu/vnc.c
+}
Index: ioemu/xenstore.c
===================================================================
---- ioemu.orig/xenstore.c 2007-05-09 14:12:43.000000000 +0100
-+++ ioemu/xenstore.c 2007-05-09 14:12:44.000000000 +0100
+--- ioemu.orig/xenstore.c 2007-05-10 15:32:53.000000000 +0100
++++ ioemu/xenstore.c 2007-05-10 15:35:24.000000000 +0100
@@ -253,6 +253,57 @@
free(buf);
}
@@ -307,7 +307,7 @@ Index: ioemu/d3des.c
Index: ioemu/d3des.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ ioemu/d3des.c 2007-05-09 14:12:44.000000000 +0100
++++ ioemu/d3des.c 2007-05-10 15:35:24.000000000 +0100
@@ -0,0 +1,434 @@
+/*
+ * This is D3DES (V5.09) by Richard Outerbridge with the double and
@@ -746,7 +746,7 @@ Index: ioemu/d3des.h
Index: ioemu/d3des.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ ioemu/d3des.h 2007-05-09 14:12:44.000000000 +0100
++++ ioemu/d3des.h 2007-05-10 15:35:24.000000000 +0100
@@ -0,0 +1,51 @@
+/*
+ * This is D3DES (V5.09) by Richard Outerbridge with the double and
diff -r 8f510bf078c7 -r 31a3f83d1610 tools/ioemu/patches/xen-mapcache
--- a/tools/ioemu/patches/xen-mapcache Thu May 10 15:58:35 2007 +0100
+++ b/tools/ioemu/patches/xen-mapcache Thu May 10 16:05:31 2007 +0100
@@ -17,9 +17,9 @@ Signed-off-by: Keir Fraser <keir@xensour
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2007-05-09 13:49:09.000000000 +0100
-+++ ioemu/vl.c 2007-05-09 13:49:10.000000000 +0100
-@@ -278,7 +278,7 @@
+--- ioemu.orig/vl.c 2007-05-10 15:35:25.000000000 +0100
++++ ioemu/vl.c 2007-05-10 15:35:25.000000000 +0100
+@@ -275,7 +275,7 @@
for(i = start; i < start + length; i += size) {
ioport_read_table[bsize][i] = func;
if (ioport_opaque[i] != NULL && ioport_opaque[i] != opaque)
@@ -28,7 +28,7 @@ Index: ioemu/vl.c
ioport_opaque[i] = opaque;
}
return 0;
-@@ -6806,6 +6806,157 @@
+@@ -6791,6 +6791,157 @@
suspend_requested = 1;
}
@@ -186,7 +186,7 @@ Index: ioemu/vl.c
int main(int argc, char **argv)
{
#ifdef CONFIG_GDBSTUB
-@@ -6842,8 +6993,11 @@
+@@ -6827,8 +6978,11 @@
unsigned long ioreq_pfn;
extern void *shared_page;
extern void *buffered_io_page;
@@ -199,7 +199,7 @@ Index: ioemu/vl.c
char qemu_dm_logfilename[64];
-@@ -7136,6 +7290,7 @@
+@@ -7119,6 +7273,7 @@
break;
case QEMU_OPTION_m:
ram_size = atol(optarg) * 1024 * 1024;
@@ -207,7 +207,7 @@ Index: ioemu/vl.c
if (ram_size <= 0)
help();
#ifndef CONFIG_DM
-@@ -7495,30 +7650,15 @@
+@@ -7472,30 +7627,15 @@
#if defined(__i386__) || defined(__x86_64__)
@@ -241,7 +241,7 @@ Index: ioemu/vl.c
if (shared_page == NULL) {
fprintf(logfile, "map shared IO page returned error %d\n", errno);
exit(-1);
-@@ -7527,15 +7667,12 @@
+@@ -7504,15 +7644,12 @@
xc_get_hvm_param(xc_handle, domid, HVM_PARAM_BUFIOREQ_PFN, &ioreq_pfn);
fprintf(logfile, "buffered io page at pfn %lx\n", ioreq_pfn);
buffered_io_page = xc_map_foreign_range(xc_handle, domid, PAGE_SIZE,
@@ -260,8 +260,8 @@ Index: ioemu/vl.c
nr_pages = ram_size/PAGE_SIZE;
Index: ioemu/target-i386-dm/exec-dm.c
===================================================================
---- ioemu.orig/target-i386-dm/exec-dm.c 2007-05-09 13:48:54.000000000
+0100
-+++ ioemu/target-i386-dm/exec-dm.c 2007-05-09 13:49:10.000000000 +0100
+--- ioemu.orig/target-i386-dm/exec-dm.c 2007-05-10 15:32:53.000000000
+0100
++++ ioemu/target-i386-dm/exec-dm.c 2007-05-10 15:35:25.000000000 +0100
@@ -36,6 +36,7 @@
#include "cpu.h"
@@ -380,9 +380,9 @@ Index: ioemu/target-i386-dm/exec-dm.c
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2007-05-09 13:49:09.000000000 +0100
-+++ ioemu/vl.h 2007-05-09 13:49:10.000000000 +0100
-@@ -161,6 +161,28 @@
+--- ioemu.orig/vl.h 2007-05-10 15:35:25.000000000 +0100
++++ ioemu/vl.h 2007-05-10 15:35:25.000000000 +0100
+@@ -159,6 +159,28 @@
extern FILE *logfile;
@@ -413,8 +413,8 @@ Index: ioemu/vl.h
Index: ioemu/target-i386-dm/cpu.h
===================================================================
---- ioemu.orig/target-i386-dm/cpu.h 2007-05-09 13:48:54.000000000 +0100
-+++ ioemu/target-i386-dm/cpu.h 2007-05-09 13:49:10.000000000 +0100
+--- ioemu.orig/target-i386-dm/cpu.h 2007-05-10 15:32:53.000000000 +0100
++++ ioemu/target-i386-dm/cpu.h 2007-05-10 15:35:25.000000000 +0100
@@ -25,7 +25,8 @@
#ifdef TARGET_X86_64
#define TARGET_LONG_BITS 64
@@ -427,8 +427,8 @@ Index: ioemu/target-i386-dm/cpu.h
/* target supports implicit self modifying code */
Index: ioemu/target-i386-dm/helper2.c
===================================================================
---- ioemu.orig/target-i386-dm/helper2.c 2007-05-09 13:48:54.000000000
+0100
-+++ ioemu/target-i386-dm/helper2.c 2007-05-09 13:49:10.000000000 +0100
+--- ioemu.orig/target-i386-dm/helper2.c 2007-05-10 15:34:24.000000000
+0100
++++ ioemu/target-i386-dm/helper2.c 2007-05-10 15:35:25.000000000 +0100
@@ -526,6 +526,9 @@
case IOREQ_TYPE_TIMEOFFSET:
cpu_ioreq_timeoffset(env, req);
diff -r 8f510bf078c7 -r 31a3f83d1610 tools/ioemu/patches/xen-platform-device
--- a/tools/ioemu/patches/xen-platform-device Thu May 10 15:58:35 2007 +0100
+++ b/tools/ioemu/patches/xen-platform-device Thu May 10 16:05:31 2007 +0100
@@ -3,8 +3,8 @@ will come later.
Index: ioemu/Makefile.target
===================================================================
---- ioemu.orig/Makefile.target 2007-05-09 13:56:21.000000000 +0100
-+++ ioemu/Makefile.target 2007-05-09 13:56:35.000000000 +0100
+--- ioemu.orig/Makefile.target 2007-05-10 15:19:05.000000000 +0100
++++ ioemu/Makefile.target 2007-05-10 15:19:28.000000000 +0100
@@ -391,6 +391,7 @@
VL_OBJS+= usb-uhci.o smbus_eeprom.o
VL_OBJS+= piix4acpi.o
@@ -15,8 +15,8 @@ Index: ioemu/Makefile.target
ifeq ($(TARGET_BASE_ARCH), ppc)
Index: ioemu/hw/pc.c
===================================================================
---- ioemu.orig/hw/pc.c 2007-05-09 13:56:21.000000000 +0100
-+++ ioemu/hw/pc.c 2007-05-09 13:56:35.000000000 +0100
+--- ioemu.orig/hw/pc.c 2007-05-10 15:19:11.000000000 +0100
++++ ioemu/hw/pc.c 2007-05-10 15:19:28.000000000 +0100
@@ -676,6 +676,9 @@
}
#endif /* !CONFIG_DM */
@@ -30,7 +30,7 @@ Index: ioemu/hw/xen_platform.c
Index: ioemu/hw/xen_platform.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ ioemu/hw/xen_platform.c 2007-05-09 13:56:47.000000000 +0100
++++ ioemu/hw/xen_platform.c 2007-05-10 15:19:28.000000000 +0100
@@ -0,0 +1,150 @@
+/*
+ * XEN platform fake pci device, formerly known as the event channel device
@@ -184,9 +184,9 @@ Index: ioemu/hw/xen_platform.c
+}
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2007-05-09 13:56:21.000000000 +0100
-+++ ioemu/vl.h 2007-05-09 13:56:35.000000000 +0100
-@@ -1439,6 +1439,10 @@
+--- ioemu.orig/vl.h 2007-05-10 15:19:11.000000000 +0100
++++ ioemu/vl.h 2007-05-10 15:19:28.000000000 +0100
+@@ -1437,6 +1437,10 @@
extern long time_offset;
void timeoffset_get(void);
diff -r 8f510bf078c7 -r 31a3f83d1610
tools/ioemu/patches/xen-support-buffered-ioreqs
--- a/tools/ioemu/patches/xen-support-buffered-ioreqs Thu May 10 15:58:35
2007 +0100
+++ b/tools/ioemu/patches/xen-support-buffered-ioreqs Thu May 10 16:05:31
2007 +0100
@@ -1,8 +1,8 @@ Index: ioemu/vl.c
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2007-05-09 13:47:16.000000000 +0100
-+++ ioemu/vl.c 2007-05-09 13:47:16.000000000 +0100
-@@ -6838,6 +6838,7 @@
+--- ioemu.orig/vl.c 2007-05-10 15:34:19.000000000 +0100
++++ ioemu/vl.c 2007-05-10 15:34:24.000000000 +0100
+@@ -6823,6 +6823,7 @@
int fds[2];
unsigned long ioreq_pfn;
extern void *shared_page;
@@ -10,7 +10,7 @@ Index: ioemu/vl.c
unsigned long nr_pages;
char qemu_dm_logfilename[64];
-@@ -7513,6 +7514,16 @@
+@@ -7490,6 +7491,16 @@
exit(-1);
}
@@ -29,8 +29,8 @@ Index: ioemu/vl.c
#elif defined(__ia64__)
Index: ioemu/target-i386-dm/helper2.c
===================================================================
---- ioemu.orig/target-i386-dm/helper2.c 2007-05-09 13:47:16.000000000
+0100
-+++ ioemu/target-i386-dm/helper2.c 2007-05-09 13:47:16.000000000 +0100
+--- ioemu.orig/target-i386-dm/helper2.c 2007-05-10 15:34:19.000000000
+0100
++++ ioemu/target-i386-dm/helper2.c 2007-05-10 15:34:24.000000000 +0100
@@ -78,6 +78,10 @@
shared_iopage_t *shared_page = NULL;
diff -r 8f510bf078c7 -r 31a3f83d1610 tools/ioemu/patches/xenstore
--- a/tools/ioemu/patches/xenstore Thu May 10 15:58:35 2007 +0100
+++ b/tools/ioemu/patches/xenstore Thu May 10 16:05:31 2007 +0100
@@ -1,7 +1,7 @@ Index: ioemu/xenstore.c
Index: ioemu/xenstore.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ ioemu/xenstore.c 2007-05-09 13:47:15.000000000 +0100
++++ ioemu/xenstore.c 2007-05-10 15:19:05.000000000 +0100
@@ -0,0 +1,139 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General
@@ -144,9 +144,9 @@ Index: ioemu/xenstore.c
+}
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2007-05-09 13:47:15.000000000 +0100
-+++ ioemu/vl.h 2007-05-09 13:47:15.000000000 +0100
-@@ -1423,6 +1423,12 @@
+--- ioemu.orig/vl.h 2007-05-10 15:18:58.000000000 +0100
++++ ioemu/vl.h 2007-05-10 15:19:05.000000000 +0100
+@@ -1421,6 +1421,12 @@
void readline_start(const char *prompt, int is_password,
ReadLineFunc *readline_func, void *opaque);
@@ -161,8 +161,8 @@ Index: ioemu/vl.h
extern char domain_name[];
Index: ioemu/Makefile.target
===================================================================
---- ioemu.orig/Makefile.target 2007-05-09 13:44:51.000000000 +0100
-+++ ioemu/Makefile.target 2007-05-09 13:47:15.000000000 +0100
+--- ioemu.orig/Makefile.target 2007-05-10 15:17:54.000000000 +0100
++++ ioemu/Makefile.target 2007-05-10 15:19:05.000000000 +0100
@@ -390,6 +390,7 @@
VL_OBJS+= cirrus_vga.o mixeng.o parallel.o acpi.o piix_pci.o
VL_OBJS+= usb-uhci.o smbus_eeprom.o
@@ -173,9 +173,9 @@ Index: ioemu/Makefile.target
ifeq ($(TARGET_BASE_ARCH), ppc)
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2007-05-09 13:47:15.000000000 +0100
-+++ ioemu/vl.c 2007-05-09 13:47:15.000000000 +0100
-@@ -7353,6 +7353,10 @@
+--- ioemu.orig/vl.c 2007-05-10 15:18:58.000000000 +0100
++++ ioemu/vl.c 2007-05-10 15:19:05.000000000 +0100
+@@ -7338,6 +7338,10 @@
}
#endif
@@ -186,7 +186,7 @@ Index: ioemu/vl.c
#ifdef USE_KQEMU
if (smp_cpus > 1)
kqemu_allowed = 0;
-@@ -7643,6 +7647,8 @@
+@@ -7627,6 +7631,8 @@
}
}
diff -r 8f510bf078c7 -r 31a3f83d1610
tools/ioemu/patches/xenstore-block-device-config
--- a/tools/ioemu/patches/xenstore-block-device-config Thu May 10 15:58:35
2007 +0100
+++ b/tools/ioemu/patches/xenstore-block-device-config Thu May 10 16:05:31
2007 +0100
@@ -1,7 +1,7 @@ Index: ioemu/xenstore.c
Index: ioemu/xenstore.c
===================================================================
---- ioemu.orig/xenstore.c 2007-05-09 13:47:15.000000000 +0100
-+++ ioemu/xenstore.c 2007-05-09 13:47:15.000000000 +0100
+--- ioemu.orig/xenstore.c 2007-05-10 15:19:05.000000000 +0100
++++ ioemu/xenstore.c 2007-05-10 15:19:05.000000000 +0100
@@ -9,8 +9,15 @@
*/
@@ -206,9 +206,9 @@ Index: ioemu/xenstore.c
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2007-05-09 13:47:15.000000000 +0100
-+++ ioemu/vl.c 2007-05-09 13:47:15.000000000 +0100
-@@ -6220,9 +6220,11 @@
+--- ioemu.orig/vl.c 2007-05-10 15:19:05.000000000 +0100
++++ ioemu/vl.c 2007-05-10 15:19:05.000000000 +0100
+@@ -6213,9 +6213,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"
@@ -220,7 +220,7 @@ Index: ioemu/vl.c
"-boot [a|c|d|n] boot on floppy (a), hard disk (c), CD-ROM (d), or
network (n)\n"
"-snapshot write to temporary files instead of disk image
files\n"
#ifdef CONFIG_SDL
-@@ -6358,11 +6360,13 @@
+@@ -6350,11 +6352,13 @@
QEMU_OPTION_M,
QEMU_OPTION_fda,
QEMU_OPTION_fdb,
@@ -234,7 +234,7 @@ Index: ioemu/vl.c
QEMU_OPTION_boot,
QEMU_OPTION_snapshot,
#ifdef TARGET_I386
-@@ -6440,11 +6444,13 @@
+@@ -6431,11 +6435,13 @@
{ "M", HAS_ARG, QEMU_OPTION_M },
{ "fda", HAS_ARG, QEMU_OPTION_fda },
{ "fdb", HAS_ARG, QEMU_OPTION_fdb },
@@ -248,7 +248,7 @@ Index: ioemu/vl.c
{ "boot", HAS_ARG, QEMU_OPTION_boot },
{ "snapshot", 0, QEMU_OPTION_snapshot },
#ifdef TARGET_I386
-@@ -6797,10 +6803,16 @@
+@@ -6787,10 +6793,16 @@
#ifdef CONFIG_GDBSTUB
int use_gdbstub, gdbstub_port;
#endif
@@ -267,7 +267,7 @@ Index: ioemu/vl.c
const char *kernel_filename, *kernel_cmdline;
DisplayState *ds = &display_state;
int cyls, heads, secs, translation;
-@@ -6861,8 +6873,10 @@
+@@ -6851,8 +6863,10 @@
initrd_filename = NULL;
for(i = 0; i < MAX_FD; i++)
fd_filename[i] = NULL;
@@ -278,7 +278,7 @@ Index: ioemu/vl.c
ram_size = DEFAULT_RAM_SIZE * 1024 * 1024;
vga_ram_size = VGA_RAM_SIZE;
bios_size = BIOS_SIZE;
-@@ -6876,11 +6890,13 @@
+@@ -6866,11 +6880,13 @@
vncunused = 0;
kernel_filename = NULL;
kernel_cmdline = "";
@@ -292,7 +292,7 @@ Index: ioemu/vl.c
cyls = heads = secs = 0;
translation = BIOS_ATA_TRANSLATION_AUTO;
pstrcpy(monitor_device, sizeof(monitor_device), "null");
-@@ -6919,7 +6935,11 @@
+@@ -6907,7 +6923,11 @@
break;
r = argv[optind];
if (r[0] != '-') {
@@ -304,7 +304,7 @@ Index: ioemu/vl.c
} else {
const QEMUOption *popt;
-@@ -6966,6 +6986,7 @@
+@@ -6954,6 +6974,7 @@
case QEMU_OPTION_initrd:
initrd_filename = optarg;
break;
@@ -312,7 +312,7 @@ Index: ioemu/vl.c
case QEMU_OPTION_hda:
case QEMU_OPTION_hdb:
case QEMU_OPTION_hdc:
-@@ -6978,6 +6999,7 @@
+@@ -6966,6 +6987,7 @@
cdrom_index = -1;
}
break;
@@ -320,7 +320,7 @@ Index: ioemu/vl.c
case QEMU_OPTION_snapshot:
snapshot = 1;
break;
-@@ -7030,11 +7052,13 @@
+@@ -7018,11 +7040,13 @@
case QEMU_OPTION_append:
kernel_cmdline = optarg;
break;
@@ -334,7 +334,7 @@ Index: ioemu/vl.c
case QEMU_OPTION_boot:
boot_device = optarg[0];
if (boot_device != 'a' &&
-@@ -7354,6 +7378,7 @@
+@@ -7339,6 +7363,7 @@
#endif
#ifdef CONFIG_DM
@@ -342,7 +342,7 @@ Index: ioemu/vl.c
xenstore_parse_domain_config(domid);
#endif /* CONFIG_DM */
-@@ -7363,6 +7388,7 @@
+@@ -7348,6 +7373,7 @@
#endif
linux_boot = (kernel_filename != NULL);
@@ -350,7 +350,7 @@ Index: ioemu/vl.c
if (!linux_boot &&
hd_filename[0] == '\0' &&
(cdrom_index >= 0 && hd_filename[cdrom_index] == '\0') &&
-@@ -7376,6 +7402,7 @@
+@@ -7361,6 +7387,7 @@
else
boot_device = 'd';
}
@@ -358,7 +358,7 @@ Index: ioemu/vl.c
setvbuf(stdout, NULL, _IOLBF, 0);
-@@ -7528,6 +7555,7 @@
+@@ -7513,6 +7540,7 @@
#endif /* !CONFIG_DM */
@@ -366,7 +366,7 @@ Index: ioemu/vl.c
/* we always create the cdrom drive, even if no disk is there */
bdrv_init();
if (cdrom_index >= 0) {
-@@ -7554,6 +7582,7 @@
+@@ -7539,6 +7567,7 @@
}
}
}
@@ -376,8 +376,8 @@ Index: ioemu/vl.c
fd_table[0] = bdrv_new("fda");
Index: ioemu/monitor.c
===================================================================
---- ioemu.orig/monitor.c 2007-05-09 13:44:51.000000000 +0100
-+++ ioemu/monitor.c 2007-05-09 13:47:15.000000000 +0100
+--- ioemu.orig/monitor.c 2007-05-10 15:17:54.000000000 +0100
++++ ioemu/monitor.c 2007-05-10 15:19:05.000000000 +0100
@@ -24,6 +24,7 @@
#include "vl.h"
#include "disas.h"
@@ -406,9 +406,9 @@ Index: ioemu/monitor.c
int i;
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2007-05-09 13:47:15.000000000 +0100
-+++ ioemu/vl.h 2007-05-09 13:47:15.000000000 +0100
-@@ -1411,6 +1411,8 @@
+--- ioemu.orig/vl.h 2007-05-10 15:19:05.000000000 +0100
++++ ioemu/vl.h 2007-05-10 15:19:05.000000000 +0100
+@@ -1409,6 +1409,8 @@
void term_print_help(void);
void monitor_readline(const char *prompt, int is_password,
char *buf, int buf_size);
@@ -417,7 +417,7 @@ Index: ioemu/vl.h
/* readline.c */
typedef void ReadLineFunc(void *opaque, const char *str);
-@@ -1425,6 +1427,9 @@
+@@ -1423,6 +1425,9 @@
/* xenstore.c */
void xenstore_parse_domain_config(int domid);
@@ -429,8 +429,8 @@ Index: ioemu/vl.h
char *xenstore_vm_read(int domid, char *key, int *len);
Index: ioemu/hw/ide.c
===================================================================
---- ioemu.orig/hw/ide.c 2007-05-09 13:44:51.000000000 +0100
-+++ ioemu/hw/ide.c 2007-05-09 13:47:15.000000000 +0100
+--- ioemu.orig/hw/ide.c 2007-05-10 15:17:54.000000000 +0100
++++ ioemu/hw/ide.c 2007-05-10 15:19:05.000000000 +0100
@@ -1221,6 +1221,7 @@
} else {
ide_atapi_cmd_error(s, SENSE_NOT_READY,
@@ -441,8 +441,8 @@ Index: ioemu/hw/ide.c
case GPCMD_MODE_SENSE_10:
Index: ioemu/block-raw.c
===================================================================
---- ioemu.orig/block-raw.c 2007-05-09 13:44:51.000000000 +0100
-+++ ioemu/block-raw.c 2007-05-09 13:47:15.000000000 +0100
+--- ioemu.orig/block-raw.c 2007-05-10 15:17:54.000000000 +0100
++++ ioemu/block-raw.c 2007-05-10 15:19:05.000000000 +0100
@@ -383,6 +383,7 @@
static void raw_close(BlockDriverState *bs)
{
diff -r 8f510bf078c7 -r 31a3f83d1610
tools/ioemu/patches/xenstore-device-info-functions
--- a/tools/ioemu/patches/xenstore-device-info-functions Thu May 10
15:58:35 2007 +0100
+++ b/tools/ioemu/patches/xenstore-device-info-functions Thu May 10
16:05:31 2007 +0100
@@ -15,8 +15,8 @@ Signed-off-by: Stefan Berger <stefanb@us
Index: ioemu/xenstore.c
===================================================================
---- ioemu.orig/xenstore.c 2007-05-03 20:38:49.000000000 +0100
-+++ ioemu/xenstore.c 2007-05-03 20:38:53.000000000 +0100
+--- ioemu.orig/xenstore.c 2007-05-10 15:19:29.000000000 +0100
++++ ioemu/xenstore.c 2007-05-10 15:19:29.000000000 +0100
@@ -304,6 +304,143 @@
return rc;
}
@@ -163,9 +163,9 @@ Index: ioemu/xenstore.c
char *buf = NULL, *path = NULL, *value = NULL;
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2007-05-03 20:38:49.000000000 +0100
-+++ ioemu/vl.h 2007-05-03 20:38:53.000000000 +0100
-@@ -1436,6 +1436,24 @@
+--- ioemu.orig/vl.h 2007-05-10 15:19:29.000000000 +0100
++++ ioemu/vl.h 2007-05-10 15:19:29.000000000 +0100
+@@ -1434,6 +1434,24 @@
void xenstore_write_vncport(int vnc_display);
int xenstore_read_vncpasswd(int domid);
diff -r 8f510bf078c7 -r 31a3f83d1610 tools/ioemu/patches/xenstore-write-vnc-port
--- a/tools/ioemu/patches/xenstore-write-vnc-port Thu May 10 15:58:35
2007 +0100
+++ b/tools/ioemu/patches/xenstore-write-vnc-port Thu May 10 16:05:31
2007 +0100
@@ -1,7 +1,7 @@ Index: ioemu/xenstore.c
Index: ioemu/xenstore.c
===================================================================
---- ioemu.orig/xenstore.c 2007-05-09 13:47:15.000000000 +0100
-+++ ioemu/xenstore.c 2007-05-09 13:47:15.000000000 +0100
+--- ioemu.orig/xenstore.c 2007-05-10 15:19:05.000000000 +0100
++++ ioemu/xenstore.c 2007-05-10 15:19:05.000000000 +0100
@@ -225,6 +225,34 @@
free(vec);
}
@@ -39,10 +39,10 @@ Index: ioemu/xenstore.c
char *buf = NULL, *path = NULL, *value = NULL;
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2007-05-09 13:47:15.000000000 +0100
-+++ ioemu/vl.c 2007-05-09 13:47:15.000000000 +0100
-@@ -7621,6 +7621,7 @@
- &vnclisten_addr);
+--- ioemu.orig/vl.c 2007-05-10 15:19:05.000000000 +0100
++++ ioemu/vl.c 2007-05-10 15:19:05.000000000 +0100
+@@ -7605,6 +7605,7 @@
+ vnc_display_port = vnc_display_init(ds, vnc_display, vncunused);
if (vncviewer)
vnc_start_viewer(vnc_display_port);
+ xenstore_write_vncport(vnc_display_port);
@@ -51,9 +51,9 @@ Index: ioemu/vl.c
sdl_display_init(ds, full_screen);
Index: ioemu/vl.h
===================================================================
---- ioemu.orig/vl.h 2007-05-09 13:47:15.000000000 +0100
-+++ ioemu/vl.h 2007-05-09 13:47:15.000000000 +0100
-@@ -1430,6 +1430,7 @@
+--- ioemu.orig/vl.h 2007-05-10 15:19:05.000000000 +0100
++++ ioemu/vl.h 2007-05-10 15:19:05.000000000 +0100
+@@ -1428,6 +1428,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
|