On 02.11.2016 14:44, Cao jin wrote: > Signed-off-by: Cao jin <caoj.f...@cn.fujitsu.com> > --- > util/mmap-alloc.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/util/mmap-alloc.c b/util/mmap-alloc.c > index 5a85aa3..d713a72 100644 > --- a/util/mmap-alloc.c > +++ b/util/mmap-alloc.c > @@ -12,6 +12,7 @@ > > #include "qemu/osdep.h" > #include "qemu/mmap-alloc.h" > +#include "qemu/host-utils.h" > > #define HUGETLBFS_MAGIC 0x958458f6 > > @@ -61,18 +62,18 @@ void *qemu_ram_mmap(int fd, size_t size, size_t align, > bool shared) > #else > void *ptr = mmap(0, total, PROT_NONE, MAP_ANONYMOUS | MAP_PRIVATE, -1, > 0); > #endif > - size_t offset = QEMU_ALIGN_UP((uintptr_t)ptr, align) - (uintptr_t)ptr; > + size_t offset; > void *ptr1; > > if (ptr == MAP_FAILED) { > return MAP_FAILED; > } > > - /* Make sure align is a power of 2 */ > - assert(!(align & (align - 1))); > + assert(is_power_of_2(align)); > /* Always align to host page size */ > assert(align >= getpagesize()); > > + offset = QEMU_ALIGN_UP((uintptr_t)ptr, align) - (uintptr_t)ptr; > ptr1 = mmap(ptr + offset, size, PROT_READ | PROT_WRITE, > MAP_FIXED | > (fd == -1 ? MAP_ANONYMOUS : 0) | >
Reviewed-by: Thomas Huth <th...@redhat.com>