aboutsummaryrefslogtreecommitdiff
path: root/include/qemu
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
parent8905770b27be326d12a704629f3cb715642db6cc (diff)
downloadqemu-73991a922217a499ffb19fa254b1fda8bfac42c4.zip
qemu-73991a922217a499ffb19fa254b1fda8bfac42c4.tar.gz
qemu-73991a922217a499ffb19fa254b1fda8bfac42c4.tar.bz2
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')
-rw-r--r--include/qemu/cutils.h1
-rw-r--r--include/qemu/osdep.h13
2 files changed, 13 insertions, 1 deletions
diff --git a/include/qemu/cutils.h b/include/qemu/cutils.h
index e873bad..fb47ec9 100644
--- a/include/qemu/cutils.h
+++ b/include/qemu/cutils.h
@@ -130,7 +130,6 @@ const char *qemu_strchrnul(const char *s, int c);
#endif
time_t mktimegm(struct tm *tm);
int qemu_fdatasync(int fd);
-int qemu_msync(void *addr, size_t length, int fd);
int qemu_parse_fd(const char *param);
int qemu_strtoi(const char *nptr, const char **endptr, int base,
int *result);
diff --git a/include/qemu/osdep.h b/include/qemu/osdep.h
index 14b6b65..bf4f75d 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
*