summary refs log tree commit diff stats
path: root/include/qemu/mmap-alloc.h
diff options
context:
space:
mode:
authorZhang Yi <yi.z.zhang@linux.intel.com>2019-02-08 18:10:37 +0800
committerEduardo Habkost <ehabkost@redhat.com>2019-04-25 14:17:36 -0300
commit2ac0f1621c9be59eebc844fa10361a84fd726185 (patch)
treee59f5f6a3e8ca24ea2f34bdb1fb205c0bd0d4613 /include/qemu/mmap-alloc.h
parent5b863f3e2fade14ef0be01b2b690aac2c4fab477 (diff)
downloadfocaccia-qemu-2ac0f1621c9be59eebc844fa10361a84fd726185.tar.gz
focaccia-qemu-2ac0f1621c9be59eebc844fa10361a84fd726185.zip
util/mmap-alloc: Add a 'is_pmem' parameter to qemu_ram_mmap
besides the existing 'shared' flags, we are going to add
'is_pmem' to qemu_ram_mmap(), which indicated the memory backend
file is a persist memory.

Signed-off-by: Haozhong Zhang <haozhong.zhang@intel.com>
Signed-off-by: Zhang Yi <yi.z.zhang@linux.intel.com>
Reviewed-by: Pankaj Gupta <pagupta@redhat.com>
Message-Id: <786c46862cfeb253ee0ea2f44d62ffe76edb7fa4.1549555521.git.yi.z.zhang@linux.intel.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Pankaj Gupta <pagupta@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Diffstat (limited to 'include/qemu/mmap-alloc.h')
-rw-r--r--include/qemu/mmap-alloc.h21
1 files changed, 20 insertions, 1 deletions
diff --git a/include/qemu/mmap-alloc.h b/include/qemu/mmap-alloc.h
index ef04f0ed5b..eec98d82c1 100644
--- a/include/qemu/mmap-alloc.h
+++ b/include/qemu/mmap-alloc.h
@@ -7,7 +7,26 @@ size_t qemu_fd_getpagesize(int fd);
 
 size_t qemu_mempath_getpagesize(const char *mem_path);
 
-void *qemu_ram_mmap(int fd, size_t size, size_t align, bool shared);
+/**
+ * qemu_ram_mmap: mmap the specified file or device.
+ *
+ * Parameters:
+ *  @fd: the file or the device to mmap
+ *  @size: the number of bytes to be mmaped
+ *  @align: if not zero, specify the alignment of the starting mapping address;
+ *          otherwise, the alignment in use will be determined by QEMU.
+ *  @shared: map has RAM_SHARED flag.
+ *  @is_pmem: map has RAM_PMEM flag.
+ *
+ * Return:
+ *  On success, return a pointer to the mapped area.
+ *  On failure, return MAP_FAILED.
+ */
+void *qemu_ram_mmap(int fd,
+                    size_t size,
+                    size_t align,
+                    bool shared,
+                    bool is_pmem);
 
 void qemu_ram_munmap(int fd, void *ptr, size_t size);