[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v3] qemu-img: let 'qemu-img convert' flush data
From: |
Kevin Wolf |
Subject: |
Re: [Qemu-devel] [PATCH v3] qemu-img: let 'qemu-img convert' flush data |
Date: |
Fri, 20 Apr 2012 10:43:06 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:11.0) Gecko/20120329 Thunderbird/11.0.1 |
Am 13.04.2012 11:17, schrieb Liu Yuan:
> From: Liu Yuan <address@hidden>
>
> The 'qemu-img convert -h' advertise that the default cache mode is
> 'writeback', while in fact it is 'unsafe'.
>
> This patch 1) fix the help manual and 2) let bdrv_close() call bdrv_flush()
>
> 2) is needed because some backend storage doesn't have a self-flush
> mechanism(for e.g., sheepdog), so we need to call bdrv_flush() to make
> sure the image is really writen to the storage instead of hanging around
> writeback cache forever.
>
> Signed-off-by: Liu Yuan <address@hidden>
> ---
> block.c | 1 +
> qemu-img.c | 4 ++--
> 2 files changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/block.c b/block.c
> index c0c90f0..1ee2bf0 100644
> --- a/block.c
> +++ b/block.c
> @@ -812,6 +812,7 @@ unlink_and_fail:
>
> void bdrv_close(BlockDriverState *bs)
> {
> + bdrv_flush(bs);
> if (bs->drv) {
> if (bs->job) {
> block_job_cancel_sync(bs->job);
> diff --git a/qemu-img.c b/qemu-img.c
> index 6a61ca8..6e54db3 100644
> --- a/qemu-img.c
> +++ b/qemu-img.c
> @@ -66,8 +66,8 @@ static void help(void)
> " 'filename' is a disk image filename\n"
> " 'fmt' is the disk image format. It is guessed automatically in
> most cases\n"
> " 'cache' is the cache mode used to write the output disk image,
> the valid\n"
> - " options are: 'none', 'writeback' (default), 'writethrough',
> 'directsync'\n"
> - " and 'unsafe'\n"
> + " options are: 'none', 'writeback', 'writethrough',
> 'directsync'\n"
> + " and 'unsafe' (default)\n"
> " 'size' is the disk image size in bytes. Optional suffixes\n"
> " 'k' or 'K' (kilobyte, 1024), 'M' (megabyte, 1024k), 'G'
> (gigabyte, 1024M)\n"
> " and T (terabyte, 1024G) are supported. 'b' is ignored.\n"
You can't say it like this, this would apply to all qemu subcommands.
qemu-img only uses unsafe when it doesn't harm the integrity of the
image, which is only the case for qemu-img convert. I think we need to
say something like:
options are: 'none', 'writeback' (default, except for convert),
'writethrough', 'directsync' and 'unsafe' (default for convert)
Kevin
- Re: [Qemu-devel] [PATCH] qemu-img: let qemu-img behave as the manual advertise, (continued)
- Re: [Qemu-devel] [PATCH] qemu-img: let qemu-img behave as the manual advertise, Kevin Wolf, 2012/04/11
- Re: [Qemu-devel] [PATCH] qemu-img: let qemu-img behave as the manual advertise, Kevin Wolf, 2012/04/11
- Re: [Qemu-devel] [PATCH] qemu-img: let qemu-img behave as the manual advertise, Liu Yuan, 2012/04/11
- [Qemu-devel] [PATCH v2] qemu-img: let 'qemu-img convert' flush data, Liu Yuan, 2012/04/11
- Re: [Qemu-devel] [PATCH v2] qemu-img: let 'qemu-img convert' flush data, Paolo Bonzini, 2012/04/11
- Re: [Qemu-devel] [PATCH v2] qemu-img: let 'qemu-img convert' flush data, Liu Yuan, 2012/04/11
- Re: [Qemu-devel] [PATCH v2] qemu-img: let 'qemu-img convert' flush data, Liu Yuan, 2012/04/12
- Re: [Qemu-devel] [PATCH v2] qemu-img: let 'qemu-img convert' flush data, Kevin Wolf, 2012/04/13
- [Qemu-devel] [PATCH v3] qemu-img: let 'qemu-img convert' flush data, Liu Yuan, 2012/04/13
- Re: [Qemu-devel] [PATCH v3] qemu-img: let 'qemu-img convert' flush data, Liu Yuan, 2012/04/20
- Re: [Qemu-devel] [PATCH v3] qemu-img: let 'qemu-img convert' flush data,
Kevin Wolf <=
- [Qemu-devel] [PATCH v4] qemu-img: let 'qemu-img convert' flush data, Liu Yuan, 2012/04/20
- Re: [Qemu-devel] [PATCH v4] qemu-img: let 'qemu-img convert' flush data, Kevin Wolf, 2012/04/20