9ae3a8
From d9420445fe0b78de91dc8615a61b973ed64e4f78 Mon Sep 17 00:00:00 2001
9ae3a8
From: Kevin Wolf <kwolf@redhat.com>
9ae3a8
Date: Mon, 9 Sep 2013 14:27:57 +0200
9ae3a8
Subject: [PATCH 06/38] blockdev: drop redundant proto_drv check
9ae3a8
9ae3a8
RH-Author: Kevin Wolf <kwolf@redhat.com>
9ae3a8
Message-id: <1378736903-18489-7-git-send-email-kwolf@redhat.com>
9ae3a8
Patchwork-id: 54193
9ae3a8
O-Subject: [RHEL-7.0 qemu-kvm PATCH 06/32] blockdev: drop redundant proto_drv check
9ae3a8
Bugzilla: 1005818
9ae3a8
RH-Acked-by: Fam Zheng <famz@redhat.com>
9ae3a8
RH-Acked-by: Max Reitz <mreitz@redhat.com>
9ae3a8
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com>
9ae3a8
9ae3a8
From: Stefan Hajnoczi <stefanha@redhat.com>
9ae3a8
9ae3a8
Bugzilla: 1005818
9ae3a8
9ae3a8
It is not necessary to check that we can find a protocol block driver
9ae3a8
since we create or open the image file.  This produces the error that we
9ae3a8
need anyway.
9ae3a8
9ae3a8
Besides, the QERR_INVALID_BLOCK_FORMAT is inappropriate since the
9ae3a8
protocol is incorrect rather than the format.
9ae3a8
9ae3a8
Also drop an empty line between bdrv_open() and checking its return
9ae3a8
value.  This may be due to copy-pasting from earlier code that performed
9ae3a8
other operations before handling errors.
9ae3a8
9ae3a8
Reported-by: Kevin Wolf <kwolf@redhat.com>
9ae3a8
Reviewed-by: Eric Blake <eblake@redhat.com>
9ae3a8
Reviewed-by: Wenchao Xia <xiawenc@linux.vnet.ibm.com>
9ae3a8
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
9ae3a8
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
9ae3a8
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
9ae3a8
(cherry picked from commit cb78466ef60ccf707a6f38a1294c435b65a828e0)
9ae3a8
9ae3a8
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
9ae3a8
---
9ae3a8
 blockdev.c | 15 ---------------
9ae3a8
 1 file changed, 15 deletions(-)
9ae3a8
9ae3a8
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
9ae3a8
---
9ae3a8
 blockdev.c |   15 ---------------
9ae3a8
 1 files changed, 0 insertions(+), 15 deletions(-)
9ae3a8
9ae3a8
diff --git a/blockdev.c b/blockdev.c
9ae3a8
index b8521c7..1f405c9 100644
9ae3a8
--- a/blockdev.c
9ae3a8
+++ b/blockdev.c
9ae3a8
@@ -818,7 +818,6 @@ typedef struct ExternalSnapshotStates {
9ae3a8
 static void external_snapshot_prepare(BlkTransactionStates *common,
9ae3a8
                                       Error **errp)
9ae3a8
 {
9ae3a8
-    BlockDriver *proto_drv;
9ae3a8
     BlockDriver *drv;
9ae3a8
     int flags, ret;
9ae3a8
     Error *local_err = NULL;
9ae3a8
@@ -874,12 +873,6 @@ static void external_snapshot_prepare(BlkTransactionStates *common,
9ae3a8
 
9ae3a8
     flags = states->old_bs->open_flags;
9ae3a8
 
9ae3a8
-    proto_drv = bdrv_find_protocol(new_image_file);
9ae3a8
-    if (!proto_drv) {
9ae3a8
-        error_set(errp, QERR_INVALID_BLOCK_FORMAT, format);
9ae3a8
-        return;
9ae3a8
-    }
9ae3a8
-
9ae3a8
     /* create new image w/backing file */
9ae3a8
     if (mode != NEW_IMAGE_MODE_EXISTING) {
9ae3a8
         bdrv_img_create(new_image_file, format,
9ae3a8
@@ -1372,7 +1365,6 @@ void qmp_drive_mirror(const char *device, const char *target,
9ae3a8
 {
9ae3a8
     BlockDriverState *bs;
9ae3a8
     BlockDriverState *source, *target_bs;
9ae3a8
-    BlockDriver *proto_drv;
9ae3a8
     BlockDriver *drv = NULL;
9ae3a8
     Error *local_err = NULL;
9ae3a8
     int flags;
9ae3a8
@@ -1440,12 +1432,6 @@ void qmp_drive_mirror(const char *device, const char *target,
9ae3a8
         sync = MIRROR_SYNC_MODE_FULL;
9ae3a8
     }
9ae3a8
 
9ae3a8
-    proto_drv = bdrv_find_protocol(target);
9ae3a8
-    if (!proto_drv) {
9ae3a8
-        error_set(errp, QERR_INVALID_BLOCK_FORMAT, format);
9ae3a8
-        return;
9ae3a8
-    }
9ae3a8
-
9ae3a8
     bdrv_get_geometry(bs, &size);
9ae3a8
     size *= 512;
9ae3a8
     if (sync == MIRROR_SYNC_MODE_FULL && mode != NEW_IMAGE_MODE_EXISTING) {
9ae3a8
@@ -1480,7 +1466,6 @@ void qmp_drive_mirror(const char *device, const char *target,
9ae3a8
      */
9ae3a8
     target_bs = bdrv_new("");
9ae3a8
     ret = bdrv_open(target_bs, target, NULL, flags | BDRV_O_NO_BACKING, drv);
9ae3a8
-
9ae3a8
     if (ret < 0) {
9ae3a8
         bdrv_delete(target_bs);
9ae3a8
         error_set(errp, QERR_OPEN_FILE_FAILED, target);
9ae3a8
-- 
9ae3a8
1.7.1
9ae3a8