xemu/block
Eric Sunshine c794b4e0fd Teach block/vdi about "discarded" (no longer allocated) blocks
An entry in the VDI block map will hold an offset to the actual block if
the block is allocated, or one of two specially-interpreted values if
not allocated. Using VirtualBox terminology, value VDI_IMAGE_BLOCK_FREE
(0xffffffff) represents a never-allocated block (semantically arbitrary
content).  VDI_IMAGE_BLOCK_ZERO (0xfffffffe) represents a "discarded"
block (semantically zero-filled).  block/vdi knows only about
VDI_IMAGE_BLOCK_FREE.  Teach it about VDI_IMAGE_BLOCK_ZERO.

Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2011-10-28 19:25:49 +02:00
..
blkdebug.c block: drop redundant bdrv_flush implementation 2011-10-21 17:34:13 +02:00
blkverify.c block: drop redundant bdrv_flush implementation 2011-10-21 17:34:13 +02:00
bochs.c block: take lock around bdrv_read implementations 2011-10-21 17:34:14 +02:00
cloop.c block: take lock around bdrv_read implementations 2011-10-21 17:34:14 +02:00
cow.c block: change flush to co_flush 2011-10-21 17:34:14 +02:00
curl.c block/curl: Don't finish AIOCBs too early 2011-09-21 15:16:04 +02:00
dmg.c block: take lock around bdrv_read implementations 2011-10-21 17:34:14 +02:00
iscsi.c iSCSI block driver 2011-10-28 19:25:48 +02:00
nbd.c block: take lock around bdrv_write implementations 2011-10-21 17:34:14 +02:00
parallels.c block: take lock around bdrv_read implementations 2011-10-21 17:34:14 +02:00
qcow2-cache.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
qcow2-cluster.c qcow2: Fix bdrv_write_compressed error handling 2011-10-21 17:34:13 +02:00
qcow2-refcount.c qcow2: remove unused qcow2_create_refcount_update function 2011-08-25 15:23:10 +02:00
qcow2-snapshot.c Use new macro QEMU_PACKED for packed structures 2011-09-03 10:45:59 +00:00
qcow2.c block: change discard to co_discard 2011-10-21 17:34:14 +02:00
qcow2.h qcow2: removed unused depends_on field 2011-09-12 15:17:17 +02:00
qcow.c block: change flush to co_flush 2011-10-21 17:34:14 +02:00
qed-check.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
qed-cluster.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
qed-gencb.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
qed-l2-cache.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
qed-table.c qed: fix use-after-free during l2 cache commit 2011-10-05 10:52:31 -05:00
qed.c block: drop redundant bdrv_flush implementation 2011-10-21 17:34:13 +02:00
qed.h qed: Periodically flush and clear need check bit 2011-05-18 14:38:46 +02:00
raw-posix-aio.h Remove aio_ctx from paio_* interface 2009-10-30 08:39:34 -05:00
raw-posix.c block: change discard to co_discard 2011-10-21 17:34:14 +02:00
raw-win32.c block: change flush to co_flush 2011-10-21 17:34:14 +02:00
raw.c block: add bdrv_co_discard and bdrv_aio_discard support 2011-10-21 17:34:13 +02:00
rbd.c block: change flush to co_flush 2011-10-21 17:34:14 +02:00
sheepdog.c sheepdog: add coroutine_fn markers 2011-10-21 17:34:12 +02:00
vdi.c Teach block/vdi about "discarded" (no longer allocated) blocks 2011-10-28 19:25:49 +02:00
vmdk.c block: change flush to co_flush 2011-10-21 17:34:14 +02:00
vpc.c block: change flush to co_flush 2011-10-21 17:34:14 +02:00
vvfat.c block: take lock around bdrv_write implementations 2011-10-21 17:34:14 +02:00