diff options
author | Philippe Mathieu-Daudé <philmd@redhat.com> | 2020-11-03 03:07:33 +0100 |
---|---|---|
committer | Stefan Hajnoczi <stefanha@redhat.com> | 2020-11-03 19:06:23 +0000 |
commit | fc107d86840b3364e922c26cf7631b7fd38ce523 (patch) | |
tree | ab980778814158cf6e23b274f0a96b2131970ef6 /util/vfio-helpers.c | |
parent | f6b8104d0b75a8c2b21bd3175e9ba9a402182b2e (diff) |
util/vfio-helpers: Assert offset is aligned to page size
mmap(2) states:
'offset' must be a multiple of the page size as returned
by sysconf(_SC_PAGE_SIZE).
Add an assertion to be sure we don't break this contract.
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-id: 20201103020733.2303148-8-philmd@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Tested-by: Eric Auger <eric.auger@redhat.com>
Diffstat (limited to 'util/vfio-helpers.c')
-rw-r--r-- | util/vfio-helpers.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/util/vfio-helpers.c b/util/vfio-helpers.c index 73f7bfa754..804768d5c6 100644 --- a/util/vfio-helpers.c +++ b/util/vfio-helpers.c @@ -162,6 +162,7 @@ void *qemu_vfio_pci_map_bar(QEMUVFIOState *s, int index, Error **errp) { void *p; + assert(QEMU_IS_ALIGNED(offset, qemu_real_host_page_size)); assert_bar_index_valid(s, index); p = mmap(NULL, MIN(size, s->bar_region_info[index].size - offset), prot, MAP_SHARED, |