qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 08/14] Add a bdrv_close_all() and call it at the end


From: Uri Lublin
Subject: [Qemu-devel] [PATCH 08/14] Add a bdrv_close_all() and call it at the end of main()
Date: Tue, 17 Mar 2009 22:40:46 +0200

Cleanly close all images.

Signed-off-by: Uri Lublin <address@hidden>
---
 block.c |    8 ++++++++
 block.h |    1 +
 vl.c    |    1 +
 3 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/block.c b/block.c
index 411514a..39ff1dd 100644
--- a/block.c
+++ b/block.c
@@ -1023,6 +1023,14 @@ void bdrv_flush_all(void)
             bdrv_flush(bs);
 }
 
+void bdrv_close_all(void)
+{
+    BlockDriverState *bs;
+
+    for (bs = bdrv_first; bs != NULL; bs = bs->next)
+        bdrv_delete(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,
diff --git a/block.h b/block.h
index c01b192..fbb445e 100644
--- a/block.h
+++ b/block.h
@@ -118,6 +118,7 @@ BlockDriverAIOCB *bdrv_sg_aio_write(BlockDriverState *bs, 
void *buf, int count,
 /* Ensure contents are flushed to disk.  */
 void bdrv_flush(BlockDriverState *bs);
 void bdrv_flush_all(void);
+void bdrv_close_all(void);
 
 int bdrv_is_allocated(BlockDriverState *bs, int64_t sector_num, int nb_sectors,
        int *pnum);
diff --git a/vl.c b/vl.c
index b62a2d4..6c0e0cf 100644
--- a/vl.c
+++ b/vl.c
@@ -5815,6 +5815,7 @@ int main(int argc, char **argv, char **envp)
     main_loop();
     quit_timers();
     net_cleanup();
+    bdrv_close_all();
 
     return 0;
 }
-- 
1.6.0.6





reply via email to

[Prev in Thread] Current Thread [Next in Thread]