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