mirror of
https://github.com/Motorhead1991/qemu.git
synced 2026-01-28 11:50:37 -07:00
In the past, QEMU would create memory regions that could partially cover
hugetlb pages, making mmap() fail if we would use the mmap_offset as an
fd_offset. For that reason, we never used the mmap_offset as an offset into
the fd and instead always mapped the fd from the very start.
However, that can easily result in us mmap'ing a lot of unnecessary
parts of an fd, possibly repeatedly.
QEMU nowadays does not create memory regions that partially cover huge
pages -- it never really worked with postcopy. QEMU handles merging of
regions that partially cover huge pages (due to holes in boot memory) since
2018 in
|
||
|---|---|---|
| .. | ||
| include | ||
| standard-headers | ||
| libvhost-user-glib.c | ||
| libvhost-user-glib.h | ||
| libvhost-user.c | ||
| libvhost-user.h | ||
| link-test.c | ||
| meson.build | ||