]> git.ipfire.org Git - thirdparty/qemu.git/commit
Add memfd based hostmem
authorMarc-André Lureau <marcandre.lureau@redhat.com>
Thu, 1 Feb 2018 13:27:54 +0000 (14:27 +0100)
committerPaolo Bonzini <pbonzini@redhat.com>
Wed, 7 Feb 2018 13:09:25 +0000 (14:09 +0100)
commitdbb9e0f40d7d561dcffcf7e41ac9f6a5ec90e5b5
tree950d003f8c14f5408f9152fcdbf79dd137c71986
parent2ef8c0c99be7ee5b9dbceaae41b8890e7c81240f
Add memfd based hostmem

Add a new memory backend, similar to hostmem-file, except that it
doesn't need to create files. It also enforces memory sealing.

This backend is mainly useful for sharing the memory with other
processes.

Note that Linux supports transparent huge-pages of shmem/memfd memory
since 4.8. It is relatively easier to set up THP than a dedicate
hugepage mount point by using "madvise" in
/sys/kernel/mm/transparent_hugepage/shmem_enabled.

Since 4.14, memfd allows to set hugetlb requirement explicitly.

Pending for merge in 4.16 is memfd sealing support for hugetlb backed
memory.

Usage:
-object memory-backend-memfd,id=mem1,size=1G

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20180201132757.23063-5-marcandre.lureau@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
backends/Makefile.objs
backends/hostmem-memfd.c [new file with mode: 0644]
qemu-options.hx