qemu-e2k/block
Max Reitz d8da3cef3b block: Add blk_remove_all_bs()
When bdrv_close_all() is called, instead of force-closing all root
BlockDriverStates, it is better to just drop the reference from all
BlockBackends and let them be closed automatically. This prevents BDS
from getting closed that are still referenced by other BDS, which may
result in loss of cached data.

This patch adds a function for doing that, but does not yet incorporate
it in bdrv_close_all().

Signed-off-by: Max Reitz <mreitz@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2016-02-02 17:50:46 +01:00
..
accounting.c block: Clean up includes 2016-01-20 13:36:23 +01:00
archipelago.c block: Clean up includes 2016-01-20 13:36:23 +01:00
backup.c block: Clean up includes 2016-01-20 13:36:23 +01:00
blkdebug.c block: Clean up includes 2016-01-20 13:36:23 +01:00
blkverify.c block: Clean up includes 2016-01-20 13:36:23 +01:00
block-backend.c block: Add blk_remove_all_bs() 2016-02-02 17:50:46 +01:00
bochs.c block: Clean up includes 2016-01-20 13:36:23 +01:00
cloop.c block: Clean up includes 2016-01-20 13:36:23 +01:00
commit.c block: Clean up includes 2016-01-20 13:36:23 +01:00
curl.c block: Clean up includes 2016-01-20 13:36:23 +01:00
dmg.c block: Clean up includes 2016-01-20 13:36:23 +01:00
gluster.c block: Clean up includes 2016-01-20 13:36:23 +01:00
io.c block: Rename BDRV_O_INCOMING to BDRV_O_INACTIVE 2016-01-20 13:36:23 +01:00
iscsi.c block: Clean up includes 2016-01-20 13:36:23 +01:00
linux-aio.c block: Clean up includes 2016-01-20 13:36:23 +01:00
Makefile.objs block: convert quorum blockdrv to use crypto APIs 2015-07-08 13:11:01 +02:00
mirror.c block: Clean up includes 2016-01-20 13:36:23 +01:00
nbd-client.c block: Clean up includes 2016-01-20 13:36:23 +01:00
nbd-client.h nbd: Set block size to BDRV_SECTOR_SIZE 2015-03-18 12:07:01 +01:00
nbd.c block: Clean up includes 2016-01-20 13:36:23 +01:00
nfs.c block: Clean up includes 2016-01-20 13:36:23 +01:00
null.c block: Clean up includes 2016-01-20 13:36:23 +01:00
parallels.c block: Clean up includes 2016-01-20 13:36:23 +01:00
qapi.c block/qapi: Emit tray_open only if there is a tray 2016-02-02 17:47:06 +01:00
qcow2-cache.c block: Clean up includes 2016-01-20 13:36:23 +01:00
qcow2-cluster.c block: Clean up includes 2016-01-20 13:36:23 +01:00
qcow2-refcount.c block: Clean up includes 2016-01-20 13:36:23 +01:00
qcow2-snapshot.c block: Clean up includes 2016-01-20 13:36:23 +01:00
qcow2.c qcow2: Make image inaccessible after failed qcow2_invalidate_cache() 2016-01-20 13:36:24 +01:00
qcow2.h qcow2: Add function for refcount order amendment 2015-12-18 14:34:43 +01:00
qcow.c block: Clean up includes 2016-01-20 13:36:23 +01:00
qed-check.c block: Clean up includes 2016-01-20 13:36:23 +01:00
qed-cluster.c block: Clean up includes 2016-01-20 13:36:23 +01:00
qed-gencb.c block: Clean up includes 2016-01-20 13:36:23 +01:00
qed-l2-cache.c block: Clean up includes 2016-01-20 13:36:23 +01:00
qed-table.c block: Clean up includes 2016-01-20 13:36:23 +01:00
qed.c block: Rename BDRV_O_INCOMING to BDRV_O_INACTIVE 2016-01-20 13:36:23 +01:00
qed.h qed: Really remove unused field QEDAIOCB.finished 2015-02-06 17:24:21 +01:00
quorum.c block: Clean up includes 2016-01-20 13:36:23 +01:00
raw_bsd.c block: Clean up includes 2016-01-20 13:36:23 +01:00
raw-aio.h linux-aio: drop return code from laio_io_unplug and ioq_submit 2014-12-12 16:57:55 +00:00
raw-posix.c block: Clean up includes 2016-01-20 13:36:23 +01:00
raw-win32.c block: Clean up includes 2016-01-20 13:36:23 +01:00
rbd.c block: Clean up includes 2016-01-20 13:36:23 +01:00
sheepdog.c block: Clean up includes 2016-01-20 13:36:23 +01:00
snapshot.c block: Clean up includes 2016-01-20 13:36:23 +01:00
ssh.c block: Clean up includes 2016-01-20 13:36:23 +01:00
stream.c block: Clean up includes 2016-01-20 13:36:23 +01:00
throttle-groups.c block: Clean up includes 2016-01-20 13:36:23 +01:00
vdi.c block: Clean up includes 2016-01-20 13:36:23 +01:00
vhdx-endian.c block: Clean up includes 2016-01-20 13:36:23 +01:00
vhdx-log.c block: Clean up includes 2016-01-20 13:36:23 +01:00
vhdx.c block: Clean up includes 2016-01-20 13:36:23 +01:00
vhdx.h block: vhdx - update PAYLOAD_BLOCK_UNMAPPED value to match 1.00 spec 2014-12-12 15:42:22 +00:00
vmdk.c vmdk: Fix converting to streamOptimized 2016-02-02 17:49:34 +01:00
vpc.c block: Clean up includes 2016-01-20 13:36:23 +01:00
vvfat.c block: Clean up includes 2016-01-20 13:36:23 +01:00
win32-aio.c block: Clean up includes 2016-01-20 13:36:23 +01:00
write-threshold.c block: Clean up includes 2016-01-20 13:36:23 +01:00