summary refs log tree commit diff stats
path: root/include/qemu/osdep.h
diff options
context:
space:
mode:
authorMarc-André Lureau <marcandre.lureau@redhat.com>2022-04-20 17:26:03 +0400
committerMarc-André Lureau <marcandre.lureau@redhat.com>2022-04-21 17:03:51 +0400
commit73991a922217a499ffb19fa254b1fda8bfac42c4 (patch)
treedc2f89876b4b68a789bd515d79de5ac651713446 /include/qemu/osdep.h
parent8905770b27be326d12a704629f3cb715642db6cc (diff)
downloadfocaccia-qemu-73991a922217a499ffb19fa254b1fda8bfac42c4.tar.gz
focaccia-qemu-73991a922217a499ffb19fa254b1fda8bfac42c4.zip
include: move qemu_msync() to osdep
The implementation depends on the OS. (and longer-term goal is to move
cutils to a common subproject)

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <20220420132624.2439741-21-marcandre.lureau@redhat.com>
Diffstat (limited to 'include/qemu/osdep.h')
-rw-r--r--include/qemu/osdep.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/qemu/osdep.h b/include/qemu/osdep.h
index 14b6b65a5f..bf4f75dcde 100644
--- a/include/qemu/osdep.h
+++ b/include/qemu/osdep.h
@@ -642,6 +642,19 @@ static inline void qemu_reset_optind(void)
 }
 
 /**
+ * Sync changes made to the memory mapped file back to the backing
+ * storage. For POSIX compliant systems this will fallback
+ * to regular msync call. Otherwise it will trigger whole file sync
+ * (including the metadata case there is no support to skip that otherwise)
+ *
+ * @addr   - start of the memory area to be synced
+ * @length - length of the are to be synced
+ * @fd     - file descriptor for the file to be synced
+ *           (mandatory only for POSIX non-compliant systems)
+ */
+int qemu_msync(void *addr, size_t length, int fd);
+
+/**
  * qemu_get_host_name:
  * @errp: Error object
  *