Statistics
| Branch: | Revision:

root @ c57c4658

Name Size
  QMP
  audio
  block
  bsd-user
  darwin-user
  default-configs
  docs
  fpu
  fsdev
  gdb-xml
  hw
  libcacard
  linux-headers
  linux-user
  net
  pc-bios
  qapi
  qga
  roms
  scripts
  slirp
  sysconfigs
  target-alpha
  target-arm
  target-cris
  target-i386
  target-lm32
  target-m68k
  target-microblaze
  target-mips
  target-ppc
  target-s390x
  target-sh4
  target-sparc
  target-unicore32
  target-xtensa
  tcg
  tests
  trace
  ui
.gitignore 897 Bytes
.gitmodules 602 Bytes
CODING_STYLE 3 kB
COPYING 17.6 kB
COPYING.LIB 25.8 kB
Changelog 22.6 kB
HACKING 4.7 kB
LICENSE 637 Bytes
MAINTAINERS 10.5 kB
Makefile 14.7 kB
Makefile.dis 402 Bytes
Makefile.hw 522 Bytes
Makefile.objs 15.3 kB
Makefile.target 13 kB
Makefile.user 475 Bytes
README 59 Bytes
TODO 1.1 kB
VERSION 4 Bytes
a.out.h 13.6 kB
acl.c 4.4 kB
acl.h 2.1 kB
aes.c 59.7 kB
aes.h 717 Bytes
aio.c 5.8 kB
alpha-dis.c 79.8 kB
alpha.ld 3.9 kB
arch_init.c 17.7 kB
arch_init.h 814 Bytes
arm-dis.c 157.1 kB
arm-semi.c 15.7 kB
arm.ld 4.6 kB
async.c 3.4 kB
balloon.c 3.6 kB
balloon.h 737 Bytes
bitmap.c 6.3 kB
bitmap.h 7.3 kB
bitops.c 3.4 kB
bitops.h 6.3 kB
block-migration.c 19.8 kB
block-migration.h 504 Bytes
block.c 105.7 kB
block.h 16.3 kB
block_int.h 10.5 kB
blockdev.c 24 kB
blockdev.h 2.2 kB
bswap.h 13.9 kB
bt-host.c 5.2 kB
bt-host.h 123 Bytes
bt-vhci.c 4.5 kB
buffered_file.c 6.8 kB
buffered_file.h 916 Bytes
cache-utils.c 2.1 kB
cache-utils.h 1.1 kB
check-qdict.c 8.9 kB
check-qfloat.c 1.5 kB
check-qint.c 2.1 kB
check-qjson.c 19.9 kB
check-qlist.c 2.8 kB
check-qstring.c 2.8 kB
cmd.c 12.2 kB
cmd.h 2 kB
compatfd.c 2.6 kB
compatfd.h 1.5 kB
compiler.h 1.6 kB
config.h 52 Bytes
configure 95.7 kB
console.c 46.8 kB
console.h 12.2 kB
coroutine-gthread.c 3.6 kB
coroutine-ucontext.c 5.7 kB
coroutine-win32.c 2.6 kB
cpu-all.h 16.9 kB
cpu-common.h 7.1 kB
cpu-defs.h 9.8 kB
cpu-exec.c 25.2 kB
cpus.c 28.4 kB
cpus.h 549 Bytes
cris-dis.c 80.3 kB
cursor.c 5.3 kB
cursor_hidden.xpm 1.3 kB
cursor_left_ptr.xpm 1.4 kB
cutils.c 9.4 kB
def-helper.h 7.2 kB
device_tree.c 4.1 kB
device_tree.h 1 kB
dis-asm.h 18.3 kB
disas.c 11.7 kB
disas.h 1.1 kB
dma-helpers.c 5.3 kB
dma.h 1.8 kB
dyngen-exec.h 2 kB
elf.h 45.5 kB
envlist.c 5.3 kB
envlist.h 484 Bytes
error.c 2.7 kB
error.h 1.7 kB
error_int.h 631 Bytes
event_notifier.c 1.3 kB
event_notifier.h 369 Bytes
exec-all.h 12.9 kB
exec-memory.h 1 kB
exec.c 139.8 kB
gdbstub.c 73.4 kB
gdbstub.h 1.3 kB
gen-icount.h 1.2 kB
hmp-commands.hx 36.6 kB
hmp.c 15.9 kB
hmp.h 1.1 kB
host-utils.c 2.8 kB
host-utils.h 5.5 kB
hppa-dis.c 100.2 kB
hppa.ld 7.8 kB
i386-dis.c 159.1 kB
i386.ld 4.6 kB
ia64-dis.c 396.7 kB
ia64.ld 8.2 kB
input.c 7.2 kB
int128.h 1.9 kB
iohandler.c 5.5 kB
ioport-user.c 1.6 kB
ioport.c 12.3 kB
ioport.h 2.6 kB
iorange.h 663 Bytes
iov.c 3.2 kB
iov.h 907 Bytes
json-lexer.c 9.2 kB
json-lexer.h 993 Bytes
json-parser.c 14.6 kB
json-parser.h 514 Bytes
json-streamer.c 3.2 kB
json-streamer.h 984 Bytes
kvm-all.c 35.7 kB
kvm-stub.c 2 kB
kvm.h 5.4 kB
libfdt_env.h 1.1 kB
linux-aio.c 5.6 kB
m68k-dis.c 211.6 kB
m68k-semi.c 12.2 kB
m68k.ld 5.9 kB
main-loop.c 12.1 kB
main-loop.h 13 kB
memory.c 43.2 kB
memory.h 18.2 kB
microblaze-dis.c 62.1 kB
migration-exec.c 2.5 kB
migration-fd.c 2.8 kB
migration-tcp.c 4 kB
migration-unix.c 4.2 kB
migration.c 12.1 kB
migration.h 2.8 kB
mips-dis.c 206.6 kB
mips.ld 8.2 kB
module.c 1.3 kB
module.h 1.1 kB
monitor.c 136.4 kB
monitor.h 1.8 kB
nbd.c 17.9 kB
nbd.h 2.7 kB
net.c 38.8 kB
net.h 5.9 kB
notify.c 832 Bytes
notify.h 881 Bytes
os-posix.c 8.8 kB
os-win32.c 3.9 kB
osdep.c 4 kB
osdep.h 3.6 kB
oslib-posix.c 5.6 kB
oslib-win32.c 3.2 kB
path.c 4.7 kB
pci-ids.txt 883 Bytes
pflib.c 6.6 kB
pflib.h 496 Bytes
poison.h 1.8 kB
posix-aio-compat.c 16.9 kB
ppc-dis.c 237 kB
ppc.ld 8.3 kB
ppc64.ld 7.6 kB
qapi-schema-guest.json 5.1 kB
qapi-schema-test.json 828 Bytes
qapi-schema.json 24.2 kB
qbool.c 1.2 kB
qbool.h 535 Bytes
qdict-test-data.txt 88.4 kB
qdict.c 10.5 kB
qdict.h 2.1 kB
qemu-aio.h 2 kB
qemu-barrier.h 978 Bytes
qemu-char.c 74.3 kB
qemu-char.h 7.3 kB
qemu-common.h 9.6 kB
qemu-config.c 19.6 kB
qemu-config.h 542 Bytes
qemu-coroutine-int.h 1.7 kB
qemu-coroutine-lock.c 4.4 kB
qemu-coroutine.c 1.6 kB
qemu-coroutine.h 5.3 kB
qemu-doc.texi 80 kB
qemu-error.c 4.3 kB
qemu-error.h 1.1 kB
qemu-ga.c 17.5 kB
qemu-img-cmds.hx 1.8 kB
qemu-img.c 45.9 kB
qemu-img.texi 8.8 kB
qemu-io.c 43.9 kB
qemu-lock.h 1.6 kB
qemu-log.h 2.1 kB
qemu-nbd.c 16.2 kB
qemu-nbd.texi 1.5 kB
qemu-objects.h 506 Bytes
qemu-option.c 24.8 kB
qemu-option.h 5.3 kB
qemu-options.h 1.5 kB
qemu-options.hx 90.8 kB
qemu-os-posix.h 1.8 kB
qemu-os-win32.h 1.9 kB
qemu-progress.c 4 kB
qemu-queue.h 22.7 kB
qemu-sockets.c 19 kB
qemu-tech.texi 23.3 kB
qemu-thread-posix.c 2.9 kB
qemu-thread-posix.h 233 Bytes
qemu-thread-win32.c 7.6 kB
qemu-thread-win32.h 307 Bytes
qemu-thread.h 1.2 kB
qemu-timer-common.c 2 kB
qemu-timer.c 20.8 kB
qemu-timer.h 8.6 kB
qemu-tls.h 1.9 kB
qemu-tool.c 1.6 kB
qemu-x509.h 239 Bytes
qemu-xattr.h 606 Bytes
qemu.sasl 1.3 kB
qemu_socket.h 1.6 kB
qerror.c 14.2 kB
qerror.h 6.6 kB
qfloat.c 1.2 kB
qfloat.h 562 Bytes
qint.c 1.2 kB
qint.h 539 Bytes
qjson.c 7.3 kB
qjson.h 708 Bytes
qlist.c 3 kB
qlist.h 1.5 kB
qmp-commands.hx 51.6 kB
qmp.c 2.6 kB
qobject.h 2.7 kB
qstring.c 3.1 kB
qstring.h 884 Bytes
range.h 867 Bytes
readline.c 12.7 kB
readline.h 1.5 kB
rules.mak 2.3 kB
s390-dis.c 93.3 kB
s390.ld 6.9 kB
savevm.c 55.5 kB
sh4-dis.c 82.7 kB
softmmu-semi.h 2 kB
softmmu_defs.h 1.2 kB
softmmu_exec.h 3.2 kB
softmmu_header.h 5.1 kB
softmmu_template.h 12.1 kB
sparc-dis.c 171.7 kB
sparc.ld 4.6 kB
sparc64.ld 4.4 kB
spice-qemu-char.c 6.8 kB
sysemu.h 5.1 kB
targphys.h 538 Bytes
tcg-runtime.c 2.2 kB
tci-dis.c 1.8 kB
tci.c 34.3 kB
test-coroutine.c 4.1 kB
test-qmp-commands.c 4 kB
test-visitor.c 9.1 kB
thunk.c 8.2 kB
thunk.h 4.1 kB
trace-events 39.7 kB
translate-all.c 4.2 kB
uboot_image.h 5.9 kB
usb-bsd.c 17.5 kB
usb-linux.c 59.1 kB
usb-redir.c 38.9 kB
usb-stub.c 1.8 kB
user-exec.c 19.3 kB
version.rc 749 Bytes
vgafont.h 93.3 kB
vl.c 98 kB
x86_64.ld 6.4 kB
xen-all.c 28.1 kB
xen-mapcache.c 11.4 kB
xen-mapcache.h 1 kB
xen-stub.c 760 Bytes
xtensa-semi.c 6.7 kB

Latest revisions

# Date Author Comment
e8ee5e4c 12/05/2011 03:51 pm Stefan Hajnoczi

coroutine: add qemu_co_queue_restart_all()

It's common to wake up all waiting coroutines. Introduce the
qemu_co_queue_restart_all() function to do this instead of looping over
qemu_co_queue_next() in every caller.

Signed-off-by: Stefan Hajnoczi <>...

dbffbdcf 12/05/2011 03:51 pm Stefan Hajnoczi

block: add request tracking

The block layer does not know about pending requests. This information
is necessary for copy-on-read since overlapping requests must be
serialized to prevent races that corrupt the image.

The BlockDriverState gets a new tracked_request list field which...

53fec9d3 12/05/2011 03:51 pm Stefan Hajnoczi

block: add interface to toggle copy-on-read

The bdrv_enable_copy_on_read()/bdrv_disable_copy_on_read() functions can
be used to programmatically enable or disable copy-on-read for a block
device. Later patches add the actual copy-on-read logic.

Signed-off-by: Stefan Hajnoczi <>...

f4658285 12/05/2011 03:51 pm Stefan Hajnoczi

block: wait for overlapping requests

When copy-on-read is enabled it is necessary to wait for overlapping
requests before issuing new requests. This prevents races between the
copy-on-read and a write request.

Signed-off-by: Stefan Hajnoczi <>...

d83947ac 12/05/2011 03:51 pm Stefan Hajnoczi

block: request overlap detection

Detect overlapping requests and remember to align to cluster boundaries
if the image format uses them. This assumes that allocating I/O is
performed in cluster granularity - which is true for qcow2, qed, etc.

Signed-off-by: Stefan Hajnoczi <>...

ab185921 12/05/2011 03:51 pm Stefan Hajnoczi

block: core copy-on-read logic

Signed-off-by: Stefan Hajnoczi <>
Signed-off-by: Kevin Wolf <>

fb0490f6 12/05/2011 03:51 pm Stefan Hajnoczi

block: add -drive copy-on-read=on|off

This patch adds the -drive copy-on-read=on|off command-line option:

copy-on-read=on|off
copy-on-read is "on" or "off" and enables whether to copy read backing
file sectors into the image file. Copy-on-read avoids accessing the...
e94d1387 12/05/2011 03:51 pm Stefan Hajnoczi

cow: use bdrv_co_is_allocated()

Now that bdrv_co_is_allocated() is available we can use it instead of
the synchronous bdrv_is_allocated() interface. This is a follow-up that
Kevin Wolf <> pointed out after applying the series that
introduces bdrv_co_is_allocated()....

c57c4658 12/05/2011 03:51 pm Kevin Wolf

dma-helpers: Add trace events

Signed-off-by: Kevin Wolf <>
Reviewed-by: Stefan Hajnoczi <>

3951690a 12/05/2011 03:51 pm Stefan Hajnoczi

qemu-common: add QEMU_ALIGN_DOWN() and QEMU_ALIGN_UP() macros

Add macros for aligning a number to a multiple, for example:

QEMU_ALIGN_DOWN(500, 2000) = 0
QEMU_ALIGN_UP(500, 2000) = 2000

Since ALIGN_UP() is a common macro name use the QEMU_* namespace prefix....

View all revisions | View revisions

Also available in: Atom