From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:53248) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YSSKm-0005TC-2p for qemu-devel@nongnu.org; Mon, 02 Mar 2015 10:32:40 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YSSKe-00005y-6O for qemu-devel@nongnu.org; Mon, 02 Mar 2015 10:32:40 -0500 Received: from mx1.redhat.com ([209.132.183.28]:58943) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YSSKd-00005r-TX for qemu-devel@nongnu.org; Mon, 02 Mar 2015 10:32:32 -0500 Received: from int-mx13.intmail.prod.int.phx2.redhat.com (int-mx13.intmail.prod.int.phx2.redhat.com [10.5.11.26]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id t22FWVF9002370 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL) for ; Mon, 2 Mar 2015 10:32:31 -0500 Message-ID: <54F4828D.4070001@redhat.com> Date: Mon, 02 Mar 2015 10:32:29 -0500 From: Max Reitz MIME-Version: 1.0 References: <1425296209-1476-1-git-send-email-famz@redhat.com> <1425296209-1476-3-git-send-email-famz@redhat.com> In-Reply-To: <1425296209-1476-3-git-send-email-famz@redhat.com> Content-Type: text/plain; charset=iso-8859-15; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 2/4] migration: Convert bdrv_find to blk_by_name List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Fam Zheng , qemu-devel@nongnu.org Cc: Kevin Wolf , Markus Armbruster , Stefan Hajnoczi On 2015-03-02 at 06:36, Fam Zheng wrote: > Signed-off-by: Fam Zheng > --- > migration/block.c | 7 +++++-- > 1 file changed, 5 insertions(+), 2 deletions(-) > > diff --git a/migration/block.c b/migration/block.c > index 0c76106..085c0fa 100644 > --- a/migration/block.c > +++ b/migration/block.c > @@ -23,6 +23,7 @@ > #include "migration/block.h" > #include "migration/migration.h" > #include "sysemu/blockdev.h" > +#include "sysemu/block-backend.h" > #include > > #define BLOCK_SIZE (1 << 20) > @@ -783,6 +784,7 @@ static int block_load(QEMUFile *f, void *opaque, int version_id) > char device_name[256]; > int64_t addr; > BlockDriverState *bs, *bs_prev = NULL; > + BlockBackend *blk; > uint8_t *buf; > int64_t total_sectors = 0; > int nr_sectors; > @@ -800,12 +802,13 @@ static int block_load(QEMUFile *f, void *opaque, int version_id) > qemu_get_buffer(f, (uint8_t *)device_name, len); > device_name[len] = '\0'; > > - bs = bdrv_find(device_name); > - if (!bs) { > + blk = blk_by_name(device_name); > + if (!blk) { > fprintf(stderr, "Error unknown block device %s\n", > device_name); > return -EINVAL; > } > + bs = blk_bs(blk); > > if (bs != bs_prev) { > bs_prev = bs; Hm, okay for a quick stitch. But actually we could get rid of all the BDSs in this function (and it should probably be acquiring the AioContext of the BB). If you don't feel like it, maybe I'll do it in the next iteration of my "BB and media" series (or in the bdrv_close_all() series... Both have convenient "Use more BB" patches, as far as I remember). Reviewed-by: Max Reitz