Statistics
| Branch: | Revision:

root / block @ acdfb480

Name Size
Makefile.objs 795 Bytes
blkdebug.c 15.8 kB
blkverify.c 10.1 kB
bochs.c 7.1 kB
cloop.c 5.9 kB
commit.c 7.3 kB
cow.c 9.5 kB
curl.c 16.8 kB
dmg.c 10.3 kB
gluster.c 17 kB
iscsi.c 34.4 kB
linux-aio.c 5.5 kB
mirror.c 18.7 kB
nbd.c 16.3 kB
parallels.c 4.8 kB
qcow.c 27.2 kB
qcow2-cache.c 7.8 kB
qcow2-cluster.c 36.3 kB
qcow2-refcount.c 41.3 kB
qcow2-snapshot.c 18.6 kB
qcow2.c 51.9 kB
qcow2.h 11.5 kB
qed-check.c 6.5 kB
qed-cluster.c 5.1 kB
qed-gencb.c 688 Bytes
qed-l2-cache.c 5.9 kB
qed-table.c 8.4 kB
qed.c 46 kB
qed.h 10.8 kB
raw-aio.h 1.6 kB
raw-posix.c 48.9 kB
raw-win32.c 15.7 kB
raw.c 3.9 kB
rbd.c 24.6 kB
sheepdog.c 56.8 kB
stream.c 6.7 kB
vdi.c 24.7 kB
vmdk.c 49.4 kB
vpc.c 23.3 kB
vvfat.c 81.6 kB
win32-aio.c 5.9 kB

Latest revisions

# Date Author Comment
fca23f0a 03/19/2013 12:48 pm Liu Yuan

sheepdog: show error message for halt status

Sheepdog (neither quorum nor unsafe mode) will refuse to serve IO requests when
number of alive nodes is less than that of copies specified by users. This will
return 0x19 to QEMU client which currently doesn't recognize it....

acdfb480 03/19/2013 12:48 pm Kevin Wolf

qcow2: Fix segfault in qcow2_invalidate_cache

Need to pass an options QDict to qcow2_open() now. This fixes a segfault
on the migration target with qcow2.

Signed-off-by: Kevin Wolf <>

c4d9d196 03/15/2013 05:07 pm Stefan Hajnoczi

threadpool: drop global thread pool

Now that each AioContext has a ThreadPool and the main loop AioContext
can be fetched with bdrv_get_aio_context(), we can eliminate the concept
of a global thread pool from thread-pool.c.

The submit functions must take a ThreadPool* argument....

c1f5bafd 03/15/2013 05:07 pm Stefan Hajnoczi

qcow2: set L2 cache dependency in qcow2_alloc_bytes()

Compressed writes use qcow2_alloc_bytes() to allocate space with byte
granularity. The affected clusters' refcounts will be incremented but
we do not need to flush yet.

Set a L2 cache dependency on the refcount block cache, so that the...

2154f24e 03/15/2013 05:07 pm Stefan Hajnoczi

qcow2: flush in qcow2_update_snapshot_refcount()

Users of qcow2_update_snapshot_refcount() do not flush consistently.
qcow2_snapshot_create() flushes but qcow2_snapshot_goto() and
qcow2_snapshot_delete() do not.

Solve this by moving the bdrv_flush() into...

f9cb2860 03/15/2013 05:07 pm Stefan Hajnoczi

qcow2: drop flush in update_cluster_refcount()

The update_cluster_refcount() function increments/decrements a cluster's
refcount and then returns the new refcount value.

There is no need to flush since both update_cluster_refcount() callers
already take care of this:...

36479179 03/15/2013 05:07 pm Stefan Hajnoczi

qcow2: drop unnecessary flush in qcow2_update_snapshot_refcount()

We already flush when the function completes. There is no need to flush
after every compressed cluster.

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

381b487d 03/15/2013 05:07 pm Paolo Bonzini

qcow2: make is_allocated return true for zero clusters

Otherwise, live migration of the top layer will miss zero clusters and
let the backing file show through. This also matches what is done in qed.

QCOW2_CLUSTER_ZERO clusters are invalid in v2 image files. Check this...

0d6db300 03/15/2013 05:07 pm MORITA Kazutaka

sheepdog: use non-blocking fd in coroutine context

Using a blocking socket in the coroutine context reduces the chance of
switching to other work. This patch makes the sheepdog driver use a
non-blocking fd always.

Signed-off-by: MORITA Kazutaka <>...

ed9ba724 03/15/2013 05:07 pm MORITA Kazutaka

sheepdog: set io_flush handler in do_co_req

If an io_flush handler is not set, qemu_aio_wait doesn't invoke
callbacks.

Signed-off-by: MORITA Kazutaka <>
Signed-off-by: Stefan Hajnoczi <>

View revisions

Also available in: Atom