[PATCH] posix: Fix generic p{read,write}v buffer allocation (BZ#22457)
Florian Weimer
fw@deneb.enyo.de
Thu Nov 23 19:08:00 GMT 2017
* Adhemerval Zanella:
> + size_t mmap_size = ALIGN_UP (bytes, GLRO(dl_pagesize));
> + void *buffer = __mmap (NULL, mmap_size, PROT_READ | PROT_WRITE,
> + MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
> + if (__glibc_unlikely (buffer == MAP_FAILED)
> + || __glibc_unlikely (!PTR_IS_ALIGNED (buffer, GLRO(dl_pagesize))))
> return -1;
I don't think POSIX requires that the length of the mapping is a
multiple of the page size. You could probably drop the alignment
check, too, because I don't really see any reason why the alignment
requirement would be related to the page size.
More information about the Libc-alpha
mailing list