This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] posix: Fix generic p{read,write}v buffer allocation (BZ#22457)


* 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.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]