[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 1/8] block: add support functions for live commi
From: |
Eric Blake |
Subject: |
Re: [Qemu-devel] [PATCH 1/8] block: add support functions for live commit, to find and delete images. |
Date: |
Fri, 14 Sep 2012 09:23:19 -0600 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:15.0) Gecko/20120828 Thunderbird/15.0 |
On 09/14/2012 07:41 AM, Jeff Cody wrote:
> Add bdrv_find_overlay(), and bdrv_drop_intermediate().
>
> bdrv_find_overlay(): given 'bs' and the active (topmost) BDS of an image
> chain,
> find the image that is the immediate top of 'bs'
>
> bdrv_drop_intermediate():
> Given 3 BDS (active, top, base), delete images above
s/delete/drop/
> base up to and including top, and set base to be the
> parent of top's child node.
set base to be the backing file of top's overlay node.
>
> E.g., this converts:
>
> bottom <- base <- intermediate <- top <- active
>
> to
>
> bottom <- base <- active
>
> +++ b/block.c
> @@ -1713,6 +1713,156 @@ int bdrv_change_backing_file(BlockDriverState *bs,
> return ret;
> }
>
> +/*
> + * Finds the image layer immediately to the 'top' of bs.
Or even:
Finds the image layer in the chain that has 'bs' as its backing file.
> +/*
> + * Deletes images above 'base' up to and including 'top', and sets the image
s/Deletes/Drops/
> +++ b/block.h
> @@ -209,7 +209,10 @@ int bdrv_commit_all(void);
> int bdrv_change_backing_file(BlockDriverState *bs,
> const char *backing_file, const char *backing_fmt);
> void bdrv_register(BlockDriver *bdrv);
> -
> +int bdrv_drop_intermediate(BlockDriverState *active, BlockDriverState *top,
> + BlockDriverState *base);
> +BlockDriverState *bdrv_find_overlay(BlockDriverState *active,
> + BlockDriverState *bs);
>
> typedef struct BdrvCheckResult {
Changed from two blank lines to one before the typedef; was that
intentional?
--
Eric Blake address@hidden +1-919-301-3266
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature
- Re: [Qemu-devel] [PATCH 2/8] block: add live block commit functionality, (continued)
[Qemu-devel] [PATCH 3/8] blockdev: rename block_stream_cb to a generic block_job_cb, Jeff Cody, 2012/09/14
[Qemu-devel] [PATCH 4/8] qerror: new error for live block commit, QERR_TOP_NOT_FOUND, Jeff Cody, 2012/09/14
[Qemu-devel] [PATCH 6/8] QAPI: add command for live block commit, 'block-commit', Jeff Cody, 2012/09/14
[Qemu-devel] [PATCH 8/8] block: after creating a live snapshot, make old image read-only, Jeff Cody, 2012/09/14
[Qemu-devel] [PATCH 1/8] block: add support functions for live commit, to find and delete images., Jeff Cody, 2012/09/14
- Re: [Qemu-devel] [PATCH 1/8] block: add support functions for live commit, to find and delete images.,
Eric Blake <=
[Qemu-devel] [PATCH 5/8] block: helper function, to find the base image of a chain, Jeff Cody, 2012/09/14
[Qemu-devel] [PATCH 7/8] qemu-iotests: add initial tests for live block commit, Jeff Cody, 2012/09/14