[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 0/3] hostmem-file: Add "discard-data" option
From: |
Eduardo Habkost |
Subject: |
Re: [Qemu-devel] [PATCH v2 0/3] hostmem-file: Add "discard-data" option |
Date: |
Thu, 14 Sep 2017 16:35:40 -0300 |
User-agent: |
Mutt/1.8.3 (2017-05-23) |
Series queued on machine-next.
On Thu, Aug 24, 2017 at 04:23:12PM -0300, Eduardo Habkost wrote:
> This series adds a new "discard-data" option to
> memory-backend-file. The new option will be useful if somebody
> is sharing RAM contents on a pre-existing file using share=on,
> but don't need data to be flushed to disk when QEMU exits.
>
> Internally, it will trigger a madvise(MADV_REMOVE) call when the
> memory backend is removed or when QEMU exits.
>
> To make we actually trigger the new code when QEMU exits, the
> first patch in the series ensures we destroy all user-created
> objects when exiting QEMU.
>
> Changes v1 -> v2:
> * Original subject line of v1 was:
> '[PATCH 0/5] hostmem-file: Add "persistent" option'
> * Replaced 'persistent=no' with 'discard-data=yes', to make it
> clear that the flag will destroy data on the backing file.
> * Use qemu_madvise() instead of madvise()
> * New patch added to series: "osdep: define QEMU_MADV_REMOVE"
> * Call qemu_madvise() directly from the backend unparent()
> method, insteead of adding a new flag to the memory API and
> reusing ram_block_discard_range()
> * In addition to simplifying the code a lot, this fixes a bug,
> because v1 relied on getting the memory region reference
> count back to 0, which doesn't happen when QEMU is exiting
> because there's no machine cleanup code to ensure that.
>
> Eduardo Habkost (3):
> vl: Clean up user-creatable objects when exiting
> osdep: Define QEMU_MADV_REMOVE
> hostmem-file: Add "discard-data" option
>
> include/qemu/osdep.h | 7 +++++++
> include/qom/object_interfaces.h | 8 ++++++++
> backends/hostmem-file.c | 29 +++++++++++++++++++++++++++++
> qom/object_interfaces.c | 5 +++++
> vl.c | 1 +
> qemu-options.hx | 5 ++++-
> 6 files changed, 54 insertions(+), 1 deletion(-)
>
> --
> 2.9.4
>
>
--
Eduardo