qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v3 5/7] migration: omit drive ref as we have bdr


From: Wenchao Xia
Subject: Re: [Qemu-devel] [PATCH v3 5/7] migration: omit drive ref as we have bdrv_ref now
Date: Fri, 02 Aug 2013 16:13:55 +0800
User-agent: Mozilla/5.0 (Windows NT 5.1; rv:17.0) Gecko/20130620 Thunderbird/17.0.7

There should be a section of code in device hot unplug, checking
DriverInfo's ref, fail or do nothing when ref != 1. But I haven't found
that code, so not sure whether this patch will change the behavior in
device hot unplug.

> block-migration.c does not actually use DriveInfo anywhere.  Hence it's
> safe to drive ref code, we really only care about referencing BDS.
> 
> Signed-off-by: Fam Zheng <address@hidden>
> ---
>   block-migration.c | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/block-migration.c b/block-migration.c
> index f803f20..daf9ec1 100644
> --- a/block-migration.c
> +++ b/block-migration.c
> @@ -336,8 +336,8 @@ static void init_blk_migration_it(void *opaque, 
> BlockDriverState *bs)
>           bmds->completed_sectors = 0;
>           bmds->shared_base = block_mig_state.shared_base;
>           alloc_aio_bitmap(bmds);
> -        drive_get_ref(drive_get_by_blockdev(bs));
>           bdrv_set_in_use(bs, 1);
> +        bdrv_ref(bs);
> 
>           block_mig_state.total_sector_sum += sectors;
> 
> @@ -575,7 +575,7 @@ static void blk_mig_cleanup(void)
>       while ((bmds = QSIMPLEQ_FIRST(&block_mig_state.bmds_list)) != NULL) {
>           QSIMPLEQ_REMOVE_HEAD(&block_mig_state.bmds_list, entry);
>           bdrv_set_in_use(bmds->bs, 0);
> -        drive_put_ref(drive_get_by_blockdev(bmds->bs));
> +        bdrv_unref(bmds->bs);
>           g_free(bmds->aio_bitmap);
>           g_free(bmds);
>       }
> 


-- 
Best Regards

Wenchao Xia




reply via email to

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