Go to file
Jan Kiszka b248ede2ef slirp: Fix requeuing of batchq packets in if_start
In case we requeued a packet that was the head of a longer session
queue, we failed to restore this ordering. Also, we did not properly
deal with changes to Slirp::next_m.

Instead of a cumbersome roll back, this fix simply avoids any changes
until we know if the packet was actually sent. Both fixes crashes due
to inconsistent queues and simplifies the logic.

Thanks to Zhi Yong Wu who found the reason for these crashes.

CC: Zhi Yong Wu <wuzhy@linux.vnet.ibm.com>
CC: Fabien Chouteau <chouteau@adacore.com>
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
2012-02-27 14:54:49 +01:00
audio audio: Add some fall through comments 2012-02-25 18:16:11 +04:00
block block: bdrv_eject(): Make eject_flag a real bool 2012-02-22 17:23:05 -02:00
bsd-user elf: Improve symbol lookup (optimize, fix for bsd-user) 2012-01-10 18:40:09 +01:00
darwin-user fix spelling in darwin-user sub directory 2011-12-02 10:50:56 +00:00
default-configs Merge remote-tracking branch 'bonzini/virtio-scsi' into staging 2012-02-24 09:33:03 -06:00
docs docs: describe live block operations 2012-01-26 14:49:18 +01:00
fpu
fsdev fsdev: Fix parameter parsing for proxy helper 2012-01-30 10:54:16 +05:30
gdb-xml
hw nic: zap obsolote romloading bits from ne2k + pcnet 2012-02-24 13:36:05 -06:00
include/qemu qom: Document ways to retrieve child object added by object_property_add_child() 2012-02-22 09:02:18 -06:00
libcacard make: Remove duplicate use of GLIB_CFLAGS 2012-02-09 20:44:38 +04:00
linux-headers PPC: KVM: Update HIOR code to new interface 2012-02-02 02:47:45 +01:00
linux-user linux-user: brk() debugging 2012-02-10 10:48:09 +00:00
net net: remove extra spaces in help messages 2012-02-10 10:44:52 +00:00
pc-bios optionroms: Silence intermediate file removal 2012-02-01 14:45:02 -06:00
qapi qapi: add string-based visitors 2012-02-21 10:21:05 +01:00
qga qemu-ga: add win32 guest-shutdown command 2012-02-23 15:43:50 -06:00
QMP qmp: add DEVICE_TRAY_MOVED event 2012-02-22 17:23:50 -02:00
qom qom: In function object_set_link_property(), first call object_ref(), then object_unref(). 2012-02-22 13:24:30 -06:00
roms pseries: SLOF PCI flag day 2012-01-21 05:17:02 +01:00
scripts qerror: add check-qerror.sh to verify alphabetical order 2012-01-18 10:23:39 -02:00
slirp slirp: Fix requeuing of batchq packets in if_start 2012-02-27 14:54:49 +01:00
sysconfigs/target cpu defs: uncomment empty extfeatures_ecx definition for Opteron_G1 (v2) 2012-02-22 13:24:30 -06:00
target-alpha fix spelling in target sub directory 2011-12-02 10:50:57 +00:00
target-arm target-arm/helper.c: tb_flush() on CPU reset 2012-02-17 08:34:43 +01:00
target-cris cris: Handle conditional stores on CRISv10 2011-12-12 11:38:31 +01:00
target-i386 target-i386: Introduce x86_cpuid_set_model_id() 2012-02-24 09:06:58 -06:00
target-lm32
target-m68k
target-microblaze microblaze: Break the tb at memory barriers 2012-01-12 13:54:17 +01:00
target-mips Fix spelling in comments, documentation and messages 2011-12-14 11:09:44 +00:00
target-ppc ppc: remove unused variables 2012-02-11 11:03:50 +00:00
target-s390x s390: fix cpu hotplug / cpu activity on interrupts 2012-01-04 02:48:14 +01:00
target-sh4 target-sh4: ignore ocbp and ocbwb instructions 2012-01-10 18:20:10 +01:00
target-sparc target-sparc: Fix mixup of uint64 and uint64_t 2012-01-22 09:55:35 +00:00
target-unicore32
target-xtensa target-xtensa: fix MMUv3 initialization 2011-11-26 09:44:34 +00:00
tcg tcg: Remove unneeded include statements 2012-02-23 08:59:51 +00:00
tests Merge qemu-iotests into for-anthony 2012-02-23 10:35:24 +01:00
trace g_thread_init users: don't call it if glib >= 2.31 2011-12-20 15:44:31 -06:00
ui Revert "qemu-char: Print strerror message on failure" and deps 2012-02-24 09:06:56 -06:00
.gitignore qapi: add tests for string-based visitors 2012-02-21 10:21:05 +01:00
.gitmodules add sgabios blob and submodule 2011-11-07 10:57:36 -06:00
.mailmap Add a .mailmap to map pre-git-conversion authors to friendly names 2011-12-12 17:06:21 -06:00
a.out.h
acl.c acl: Fix use after free in qemu_acl_reset() 2011-11-01 06:23:48 +00:00
acl.h
aes.c
aes.h
aio.c prepare for future GPLv2+ relicensing 2012-01-13 10:55:56 -06:00
alpha-dis.c
alpha.ld
arch_init.c pcspk: Convert to qdev 2012-02-17 09:58:22 -06:00
arch_init.h audio: remove unused parameter isa_pic 2011-12-20 15:44:31 -06:00
arm-dis.c fix spelling in main directory 2011-12-02 10:50:57 +00:00
arm-semi.c
arm.ld
async.c
balloon.c qapi: Convert balloon 2011-12-06 11:40:01 -02:00
balloon.h qapi: Convert balloon 2011-12-06 11:40:01 -02:00
bitmap.c
bitmap.h
bitops.c
bitops.h
block_int.h block: bdrv_eject(): Make eject_flag a real bool 2012-02-22 17:23:05 -02:00
block-migration.c prepare for future GPLv2+ relicensing 2012-01-13 10:55:56 -06:00
block-migration.h
block.c qmp: add DEVICE_TRAY_MOVED event 2012-02-22 17:23:50 -02:00
block.h block: bdrv_eject(): Make eject_flag a real bool 2012-02-22 17:23:05 -02:00
blockdev.c blockdev: allow read-only pflash devices 2012-02-22 09:02:17 -06:00
blockdev.h qapi: Convert block_set_io_throttle 2012-01-18 10:23:39 -02:00
bswap.h
bt-host.c bt-host: add missing break statement 2012-01-13 10:37:00 +00:00
bt-host.h
bt-vhci.c
buffered_file.c prepare for future GPLv2+ relicensing 2012-01-13 10:55:56 -06:00
buffered_file.h
cache-utils.c
cache-utils.h
Changelog Fix spelling in comments, documentation and messages 2011-12-14 11:09:44 +00:00
check-qdict.c check-qdict: convert to gtest 2012-01-12 10:05:37 -06:00
check-qfloat.c check-qfloat: convert to gtest 2012-01-12 10:05:37 -06:00
check-qint.c check-qint: convert to gtest 2012-01-12 10:05:37 -06:00
check-qjson.c check-qjson: enable disabled tests 2012-01-12 10:05:38 -06:00
check-qlist.c check-qlist: convert to gtest 2012-01-12 10:05:38 -06:00
check-qstring.c check-qstring: remove check.h include 2012-01-12 11:33:22 -06:00
cmd.c cmd: Fix potential memory leak 2011-11-07 08:01:15 +00:00
cmd.h
CODING_STYLE CODING_STYLE: Clarify style for enum and function type names 2012-02-10 10:44:51 +00:00
compatfd.c prepare for future GPLv2+ relicensing 2012-01-13 10:55:56 -06:00
compatfd.h
compiler.h rewrite QEMU_BUILD_BUG_ON 2012-02-09 16:17:51 +01:00
config.h
configure configure: Check whether makecontext() is a glibc stub function 2012-02-24 13:36:06 -06:00
console.c optimize screendump for the common non-switch case 2012-02-24 13:36:05 -06:00
console.h optimize screendump for the common non-switch case 2012-02-24 13:36:05 -06:00
COPYING
COPYING.LIB
coroutine-gthread.c g_thread_init users: don't call it if glib >= 2.31 2011-12-20 15:44:31 -06:00
coroutine-ucontext.c coroutine: switch to QSLIST 2012-02-17 08:33:33 -06:00
coroutine-win32.c
cpu-all.h Remove IO_MEM_SHIFT 2012-01-04 13:34:50 +02:00
cpu-common.h Remove IO_MEM_SHIFT 2012-01-04 13:34:50 +02:00
cpu-defs.h fix win32 build 2011-12-15 09:20:50 -06:00
cpu-exec.c cpu-exec.c: Correct comment about this file and indentation cleanup 2012-02-10 10:44:52 +00:00
cpus.c apic: Inject external NMI events via LINT1 2012-01-19 12:14:40 +01:00
cpus.h Simplify cpu_exec_all to tcg_exec_all 2011-11-01 10:58:08 -05:00
cris-dis.c cris-dis: Clean memory allocation 2012-01-10 09:36:43 +01:00
cursor_hidden.xpm
cursor_left_ptr.xpm
cursor.c
cutils.c cutils: extract buffer_is_zero() from qemu-img.c 2012-02-09 16:17:50 +01:00
def-helper.h
device_tree.c
device_tree.h
dis-asm.h tcg: Add tci disassembler 2011-10-31 21:52:17 +01:00
disas.c tcg: Add tci disassembler 2011-10-31 21:52:17 +01:00
disas.h
dma-helpers.c dma-helpers: add accounting wrappers 2012-02-22 13:29:07 +01:00
dma.h dma-helpers: add accounting wrappers 2012-02-22 13:29:07 +01:00
dyngen-exec.h tcg/arm: Use r6 as TCG_AREG0 to avoid clash with Thumb framepointer 2012-01-10 17:52:49 +01:00
elf.h
envlist.c
envlist.h
error_int.h
error.c
error.h
event_notifier.c prepare for future GPLv2+ relicensing 2012-01-13 10:55:56 -06:00
event_notifier.h prepare for future GPLv2+ relicensing 2012-01-13 10:55:56 -06:00
exec-all.h Direct dispatch through MemoryRegion 2012-01-04 13:34:50 +02:00
exec-memory.h fix spelling in main directory 2011-12-02 10:50:57 +00:00
exec-obsolete.h memory: change dirty getting API to take a size 2012-02-04 12:45:10 +00:00
exec.c exec.c: Clarify comment about tlb_flush() flush_global parameter 2012-02-01 14:45:01 -06:00
gdbstub.c gdbstub: Fix fd leak in gdbserver_open() error path 2012-01-06 15:07:14 +00:00
gdbstub.h
gen-icount.h
HACKING HACKING: clarify allocation/free recommendations 2011-12-15 09:27:23 -06:00
hmp-commands.hx suspend: add system_wakeup monitor command 2012-02-24 13:36:03 -06:00
hmp.c suspend: add system_wakeup monitor command 2012-02-24 13:36:03 -06:00
hmp.h suspend: add system_wakeup monitor command 2012-02-24 13:36:03 -06:00
host-utils.c
host-utils.h
hppa-dis.c fix spelling in main directory 2011-12-02 10:50:57 +00:00
hppa.ld
i386-dis.c
i386.ld
ia64-dis.c ia64-dis.c: Undefine ABS to avoid clash with glib 2011-11-01 11:50:12 -05:00
ia64.ld
input.c input: send kbd+mouse events only to running guests. 2012-02-17 11:02:55 -06:00
int128.h
iohandler.c
ioport-user.c
ioport.c
ioport.h
iorange.h
iov.c prepare for future GPLv2+ relicensing 2012-01-13 10:55:56 -06:00
iov.h
json-lexer.c Add 'fall through' comments to case statements without break 2012-01-13 10:36:59 +00:00
json-lexer.h
json-parser.c
json-parser.h
json-streamer.c
json-streamer.h
kvm-all.c kvm: Implement kvm_irqchip_in_kernel like kvm_enabled 2012-02-08 15:57:50 -02:00
kvm-stub.c kvm: Implement kvm_irqchip_in_kernel like kvm_enabled 2012-02-08 15:57:50 -02:00
kvm.h kvm: Implement kvm_irqchip_in_kernel like kvm_enabled 2012-02-08 15:57:50 -02:00
libfdt_env.h
LICENSE LICENSE: There is no libqemu.a anymore 2011-12-09 11:25:22 +00:00
linux-aio.c block: qemu_aio_get does not return NULL 2011-12-15 12:40:08 +01:00
m68k-dis.c fix spelling in main directory 2011-12-02 10:50:57 +00:00
m68k-semi.c
m68k.ld
main-loop.c main-loop: For tools, initialize timers as part of qemu_init_main_loop() 2012-02-01 14:45:02 -06:00
main-loop.h main-loop: For tools, initialize timers as part of qemu_init_main_loop() 2012-02-01 14:45:02 -06:00
MAINTAINERS split SCSI and LSI, add myself as SCSI maintainer 2012-02-22 13:24:27 -06:00
Makefile qemu-ga: fixes for win32 build of qemu-ga 2012-02-23 15:40:16 -06:00
Makefile.dis
Makefile.hw make: Remove duplicate use of GLIB_CFLAGS 2012-02-09 20:44:38 +04:00
Makefile.objs qemu-ga: add Windows service integration 2012-02-23 15:43:50 -06:00
Makefile.target Merge remote-tracking branch 'bonzini/virtio-scsi' into staging 2012-02-24 09:33:03 -06:00
Makefile.user
memory.c memory-region: Report if region is read-only or write-only on info mtree 2012-02-11 10:49:07 +00:00
memory.h memory: change dirty getting API to take a size 2012-02-04 12:45:10 +00:00
microblaze-dis.c
migration-exec.c prepare for future GPLv2+ relicensing 2012-01-13 10:55:56 -06:00
migration-fd.c prepare for future GPLv2+ relicensing 2012-01-13 10:55:56 -06:00
migration-tcp.c prepare for future GPLv2+ relicensing 2012-01-13 10:55:56 -06:00
migration-unix.c prepare for future GPLv2+ relicensing 2012-01-13 10:55:56 -06:00
migration.c notifier: switch to QLIST 2012-02-17 08:33:32 -06:00
migration.h Merge remote-tracking branch 'stefanha/trivial-patches-next' into staging 2011-12-14 07:59:21 -06:00
mips-dis.c
mips.ld
module.c prepare for future GPLv2+ relicensing 2012-01-13 10:55:56 -06:00
module.h qom: Unify type registration 2012-02-15 09:39:21 -06:00
monitor.c suspend: add qmp events 2012-02-24 13:36:04 -06:00
monitor.h suspend: add qmp events 2012-02-24 13:36:04 -06:00
nbd.c qemu-nbd: throttle requests 2011-12-22 11:53:59 +01:00
nbd.h qemu-nbd: move client handling to nbd.c 2011-12-22 11:53:59 +01:00
net.c w32: Fix build with new net bridge code 2012-02-04 11:49:34 +00:00
net.h Add support for net bridge 2012-02-01 16:24:40 -06:00
notify.c notifier: switch to QLIST 2012-02-17 08:33:32 -06:00
notify.h notifier: switch to QLIST 2012-02-17 08:33:32 -06:00
os-posix.c keep the PID file locked for the lifetime of the process 2012-02-01 16:23:57 -06:00
os-win32.c link the main loop and its dependencies into the tools 2011-12-22 11:53:58 +01:00
osdep.c move corking functions to osdep.c 2011-12-22 11:53:58 +01:00
osdep.h
oslib-posix.c link the main loop and its dependencies into the tools 2011-12-22 11:53:58 +01:00
oslib-win32.c link the main loop and its dependencies into the tools 2011-12-22 11:53:58 +01:00
path.c
pci-ids.txt
pflib.c prepare for future GPLv2+ relicensing 2012-01-13 10:55:56 -06:00
pflib.h
poison.h
posix-aio-compat.c prepare for future GPLv2+ relicensing 2012-01-13 10:55:56 -06:00
ppc64.ld PPC: Fix linker scripts on ppc hosts 2012-01-10 18:23:58 +01:00
ppc-dis.c
ppc.ld PPC: Fix linker scripts on ppc hosts 2012-01-10 18:23:58 +01:00
qapi-schema-guest.json qemu-ga: Add schema documentation for types 2012-02-23 15:40:07 -06:00
qapi-schema-test.json Introduce test-qmp-output-visitor 2011-12-06 11:40:00 -02:00
qapi-schema.json suspend: add system_wakeup monitor command 2012-02-24 13:36:03 -06:00
qbool.c
qbool.h
qdict-test-data.txt
qdict.c
qdict.h
qemu_socket.h move corking functions to osdep.c 2011-12-22 11:53:58 +01:00
qemu-aio.h
qemu-barrier.h qemu-barrier: Fix build failure on PowerPC Mac OS X 2011-11-01 11:50:11 -05:00
qemu-bridge-helper.c Add cap reduction support to enable use as SUID 2012-02-01 16:24:39 -06:00
qemu-char.c qemu-char: qemu_chr_open_fd() can't fail, don't check 2012-02-24 09:06:57 -06:00
qemu-char.h qdev: nuke qdev_init_chardev() 2012-02-03 10:41:08 -06:00
qemu-common.h cutils: extract buffer_is_zero() from qemu-img.c 2012-02-09 16:17:50 +01:00
qemu-config.c Make kernel, initrd and append be machine_opts 2012-02-22 09:02:52 -06:00
qemu-config.h
qemu-coroutine-int.h coroutine: switch to QSLIST 2012-02-17 08:33:33 -06:00
qemu-coroutine-io.c sheepdog: move coroutine send/recv function to generic code 2011-12-22 11:53:53 +01:00
qemu-coroutine-lock.c coroutine: add qemu_co_queue_restart_all() 2011-12-05 14:51:38 +01:00
qemu-coroutine-sleep.c coroutine: add co_sleep_ns() coroutine sleep function 2012-01-26 11:45:26 +01:00
qemu-coroutine.c
qemu-coroutine.h coroutine: add co_sleep_ns() coroutine sleep function 2012-01-26 11:45:26 +01:00
qemu-doc.texi iSCSI: add configuration variables for iSCSI 2012-02-09 16:17:50 +01:00
qemu-error.c error: Add an accessor for progname 2011-12-15 09:27:22 -06:00
qemu-error.h error: Add an accessor for progname 2011-12-15 09:27:22 -06:00
qemu-file.h vmstate: extract declarations out of hw/hw.h 2012-01-13 10:20:51 -06:00
qemu-ga.c qemu-ga: add Windows service integration 2012-02-23 15:43:50 -06:00
qemu-img-cmds.hx Documentation: Add qemu-img -t parameter in man page 2011-12-15 12:40:08 +01:00
qemu-img.c cutils: extract buffer_is_zero() from qemu-img.c 2012-02-09 16:17:50 +01:00
qemu-img.texi Documentation: Add qemu-img -t parameter in man page 2011-12-15 12:40:08 +01:00
qemu-io.c qemu-io: add write -z option for bdrv_co_write_zeroes 2012-02-09 16:17:50 +01:00
qemu-lock.h
qemu-log.h
qemu-nbd.c open /dev/nbd in nbd_client_thread 2012-02-17 12:41:59 +01:00
qemu-nbd.texi
qemu-objects.h
qemu-option.c qemu-option: Add support for merged QemuOptsLists 2012-02-17 09:08:22 +01:00
qemu-option.h qemu-option: Add support for merged QemuOptsLists 2012-02-17 09:08:22 +01:00
qemu-options-wrapper.h vl.c: In qemu -h output, only print options for the arch we are running as 2011-12-19 10:27:33 -06:00
qemu-options.h vl.c: Move option generation logic into a wrapper file 2011-12-19 10:27:33 -06:00
qemu-options.hx Merge remote-tracking branch 'qemu-kvm/uq/master' into staging 2012-02-15 18:41:28 -06:00
qemu-os-posix.h 9pfs: improve portability to older systems 2011-11-28 11:36:27 -06:00
qemu-os-win32.h
qemu-progress.c
qemu-queue.h qemu-queue: drop QCIRCLEQ 2012-02-17 08:33:33 -06:00
qemu-sockets.c sockets: Clean up inet_listen_opts()'s convoluted bind() loop 2012-02-24 09:06:58 -06:00
qemu-tech.texi qemu-tech.texi: Remove libqemu related stuff from the document 2011-12-09 10:10:12 +00:00
qemu-thread-posix.c qemu-thread: implement joinable threads for POSIX 2011-12-12 17:06:22 -06:00
qemu-thread-posix.h
qemu-thread-win32.c w32: Initialise critical section before starting thread (fix #922131) 2012-02-07 18:11:41 +01:00
qemu-thread-win32.h fix win32 build 2011-12-15 09:20:50 -06:00
qemu-thread.h qemu-thread: add API for joinable threads 2011-12-12 17:06:22 -06:00
qemu-timer-common.c
qemu-timer.c notifier: switch to QLIST 2012-02-17 08:33:32 -06:00
qemu-timer.h ptimer: move declarations to ptimer.h 2012-01-13 10:20:50 -06:00
qemu-tls.h Rename get_tls to tls_var 2011-12-06 10:07:04 +00:00
qemu-tool.c main-loop: For tools, initialize timers as part of qemu_init_main_loop() 2012-02-01 14:45:02 -06:00
qemu-x509.h
qemu-xattr.h configure: fix detection for xattr.h on modern distributions 2011-11-09 12:06:20 -06:00
qemu.sasl
qerror.c qdev: print error message before aborting 2012-02-14 18:57:33 +00:00
qerror.h qdev: print error message before aborting 2012-02-14 18:57:33 +00:00
qfloat.c
qfloat.h
qint.c
qint.h
qjson.c
qjson.h
qlist.c
qlist.h
qmp-commands.hx suspend: add system_wakeup monitor command 2012-02-24 13:36:03 -06:00
qmp.c suspend: add system_wakeup monitor command 2012-02-24 13:36:03 -06:00
qobject.h
qstring.c
qstring.h
range.h
readline.c readline: Fix buffer overrun on re-add to history 2011-11-07 08:03:49 +00:00
readline.h
README Update README 2011-12-11 17:50:43 -06:00
rules.mak
s390-dis.c
s390.ld
savevm.c Fix vmstate_register_ram() for rom/device regions 2012-01-08 18:16:31 +02:00
sh4-dis.c
softmmu_defs.h
softmmu_exec.h
softmmu_header.h
softmmu_template.h Remove IO_MEM_SHIFT 2012-01-04 13:34:50 +02:00
softmmu-semi.h
sparc64.ld
sparc-dis.c
sparc.ld
spice-qemu-char.c Revert "qemu-char: Print strerror message on failure" and deps 2012-02-24 09:06:56 -06:00
sysemu.h suspend: make acpi timer wakeup the guest. 2012-02-24 13:36:04 -06:00
targphys.h
tcg-runtime.c
tci-dis.c tcg: Add tci disassembler 2011-10-31 21:52:17 +01:00
tci.c tcg: Standardize on TCGReg as the enum for hard registers 2011-11-14 17:47:26 +01:00
test-coroutine.c
test-qmp-commands.c
test-qmp-input-visitor.c qmp: Add missing gcc format attribute and fix format string 2012-01-18 10:23:39 -02:00
test-qmp-output-visitor.c Introduce test-qmp-output-visitor 2011-12-06 11:40:00 -02:00
test-string-input-visitor.c qapi: add tests for string-based visitors 2012-02-21 10:21:05 +01:00
test-string-output-visitor.c qapi: add tests for string-based visitors 2012-02-21 10:21:05 +01:00
thunk.c
thunk.h
TODO
trace-events jazz-led: use trace framework 2012-02-22 09:02:19 -06:00
translate-all.c
uboot_image.h
usb-bsd.c Merge remote-tracking branch 'kraxel/usb.38' into staging 2012-02-15 17:25:25 -06:00
usb-linux.c Merge remote-tracking branch 'kraxel/usb.38' into staging 2012-02-15 17:25:25 -06:00
usb-redir.c Merge remote-tracking branch 'kraxel/usb.38' into staging 2012-02-15 17:25:25 -06:00
usb-stub.c
user-exec.c
VERSION Update version for 1.1 development branch 2011-12-05 08:39:02 -06:00
version.rc
vgafont.h
vl.c vl.c: Avoid segfault when started with no arguments 2012-02-24 13:36:06 -06:00
vmstate.h vmstate: extract declarations out of hw/hw.h 2012-01-13 10:20:51 -06:00
x86_64.ld
xen-all.c suspend: switch acpi s3 to new infrastructure. 2012-02-24 13:36:03 -06:00
xen-mapcache.c prepare for future GPLv2+ relicensing 2012-01-13 10:55:56 -06:00
xen-mapcache.h
xen-stub.c prepare for future GPLv2+ relicensing 2012-01-13 10:55:56 -06:00
xtensa-semi.c

Read the documentation in qemu-doc.html or on http://wiki.qemu.org

- QEMU team