Add bdrv_flush_all()
This patch adds a bdrv_flush_all() function. It's necessary to ensure that all IO operations have been flushed to disk before completely a live migration. N.B. we don't actually use this now. We really should flush the block drivers using an live savevm callback to avoid unnecessary guest down time. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5432 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
d8f4460989
commit
c6ca28d636
10
block.c
10
block.c
@ -895,6 +895,16 @@ void bdrv_flush(BlockDriverState *bs)
|
||||
bdrv_flush(bs->backing_hd);
|
||||
}
|
||||
|
||||
void bdrv_flush_all(void)
|
||||
{
|
||||
BlockDriverState *bs;
|
||||
|
||||
for (bs = bdrv_first; bs != NULL; bs = bs->next)
|
||||
if (bs->drv && !bdrv_is_read_only(bs) &&
|
||||
(!bdrv_is_removable(bs) || bdrv_is_inserted(bs)))
|
||||
bdrv_flush(bs);
|
||||
}
|
||||
|
||||
/*
|
||||
* Returns true iff the specified sector is present in the disk image. Drivers
|
||||
* not implementing the functionality are assumed to not support backing files,
|
||||
|
Loading…
Reference in New Issue
Block a user