[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] [qemu patches] Update patches upto changeset 15032:8f510bf078c7.
# 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
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |