[21/27] block: Assume raw for drives without media

Submitted by Kevin Wolf on June 4, 2010, 4:33 p.m.

Details

Message ID 1275669195-28312-22-git-send-email-kwolf@redhat.com
State New
Headers show

Commit Message

Kevin Wolf June 4, 2010, 4:33 p.m.
qemu -cdrom /dev/cdrom with an empty CD-ROM drive doesn't work any more because
we try to guess the format and when this fails (because there is no medium) we
exit with an error message.

This patch should restore the old behaviour by assuming raw format for such
drives.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
---
 block.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

Patch hide | download patch | download mbox

diff --git a/block.c b/block.c
index 9c43332..ecd9867 100644
--- a/block.c
+++ b/block.c
@@ -331,8 +331,8 @@  static BlockDriver *find_image_format(const char *filename)
     if (ret < 0)
         return NULL;
 
-    /* Return the raw BlockDriver * to scsi-generic devices */
-    if (bs->sg) {
+    /* Return the raw BlockDriver * to scsi-generic devices or empty drives */
+    if (bs->sg || !bdrv_is_inserted(bs)) {
         bdrv_delete(bs);
         return bdrv_find_format("raw");
     }