On 2/26/19 9:35 AM, Stefan Hajnoczi wrote: > Commit dd577a26ff03b6829721b1ffbbf9e7c411b72378 ("block/file-posix: > implement bdrv_co_invalidate_cache() on Linux") introduced page cache > invalidation so that cache.direct=off live migration is safe on Linux. > > The invalidation takes a significant amount of time when the file is > large and present in the page cache. Normally this is not the case for > cross-host live migration but it can happen when migrating between QEMU > processes on the same host. > > On same-host migration we don't need to invalidate pages for correctness > anyway, so an option to skip page cache invalidation is useful. I > investigated optimizing invalidation and detecting same-host migration, > but both are hard to achieve so a user-visible option will suffice. > > As a bonus this option means that the cache invalidation feature will > now be detectable by libvirt via QMP schema introspection.
Do you still want to pursue the QMP query-qemu-features command, or does this delay that for another day? > > Suggested-by: Neil Skrypuch <n...@tembosocial.com> > Signed-off-by: Stefan Hajnoczi <stefa...@redhat.com> > --- > qapi/block-core.json | 5 +++++ > block/file-posix.c | 14 ++++++++++++++ > 2 files changed, 19 insertions(+) > Reviewed-by: Eric Blake <ebl...@redhat.com> -- Eric Blake, Principal Software Engineer Red Hat, Inc. +1-919-301-3226 Virtualization: qemu.org | libvirt.org