[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v3 7/7] qcow2: always operate caches in writebac
From: |
Kevin Wolf |
Subject: |
Re: [Qemu-devel] [PATCH v3 7/7] qcow2: always operate caches in writeback mode |
Date: |
Fri, 08 Jun 2012 15:59:05 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:12.0) Gecko/20120430 Thunderbird/12.0.1 |
Am 06.06.2012 00:04, schrieb Paolo Bonzini:
> Writethrough does not need special-casing anymore in the qcow2 caches.
> The block layer adds flushes after every guest-initiated data write,
> and these will also flush the qcow2 caches to the OS.
>
> Signed-off-by: Paolo Bonzini <address@hidden>
> diff --git a/block/qcow2-refcount.c b/block/qcow2-refcount.c
> index 5d6ea72..66f3915 100644
> --- a/block/qcow2-refcount.c
> +++ b/block/qcow2-refcount.c
> @@ -726,13 +726,6 @@ int qcow2_update_snapshot_refcount(BlockDriverState *bs,
> int64_t old_offset, old_l2_offset;
> int i, j, l1_modified = 0, nb_csectors, refcount;
> int ret;
> - bool old_l2_writethrough, old_refcount_writethrough;
> -
> - /* Switch caches to writeback mode during update */
> - old_l2_writethrough =
> - qcow2_cache_set_writethrough(bs, s->l2_table_cache, false);
> - old_refcount_writethrough =
> - qcow2_cache_set_writethrough(bs, s->refcount_block_cache, false);
>
> l2_table = NULL;
> l1_table = NULL;
> @@ -856,11 +849,6 @@ fail:
> qcow2_cache_put(bs, s->l2_table_cache, (void**) &l2_table);
> }
>
> - /* Enable writethrough cache mode again */
> - qcow2_cache_set_writethrough(bs, s->l2_table_cache, old_l2_writethrough);
> - qcow2_cache_set_writethrough(bs, s->refcount_block_cache,
> - old_refcount_writethrough);
> -
Here you're dropping an implicit cache flush. Not sure if it really
matters, though. Maybe we should add flushes in the right places in
higher level functions like bdrv_snapshot_create().
Kevin
- [Qemu-devel] [PATCH v3 0/7] Manual writethrough cache and cache mode toggle, Paolo Bonzini, 2012/06/05
- [Qemu-devel] [PATCH v3 1/7] block: flush in writethrough mode after writes, Paolo Bonzini, 2012/06/05
- [Qemu-devel] [PATCH v3 2/7] savevm: flush after saving vm state, Paolo Bonzini, 2012/06/05
- [Qemu-devel] [PATCH v3 3/7] block: copy enable_write_cache in bdrv_append, Paolo Bonzini, 2012/06/05
- [Qemu-devel] [PATCH v3 4/7] block: add bdrv_set_enable_write_cache, Paolo Bonzini, 2012/06/05
- [Qemu-devel] [PATCH v3 5/7] block: always open drivers in writeback mode, Paolo Bonzini, 2012/06/05
- [Qemu-devel] [PATCH v3 6/7] ide: support enable/disable write cache, Paolo Bonzini, 2012/06/05
- [Qemu-devel] [PATCH v3 7/7] qcow2: always operate caches in writeback mode, Paolo Bonzini, 2012/06/05
- Re: [Qemu-devel] [PATCH v3 7/7] qcow2: always operate caches in writeback mode,
Kevin Wolf <=
- Re: [Qemu-devel] [PATCH v3 0/7] Manual writethrough cache and cache mode toggle, Stefan Hajnoczi, 2012/06/08
- Re: [Qemu-devel] [PATCH v3 0/7] Manual writethrough cache and cache mode toggle, Stefan Hajnoczi, 2012/06/08