Re: virtually and physically (page) aligned allocation

From: Arnd Bergmann
Date: Tue Feb 24 2009 - 18:49:00 EST


On Tuesday 24 February 2009, H. Peter Anvin wrote:
> Parav Pandit wrote:
> > In other way,
> > If user space application allocates memory which is aligned to page
> > boundary for say 4 pages using posix_memalign(), will is ensure that
> > it corresponds to exactly 4 physical pages in kernel which can be pinned down?
> >
>
> You can use hugetlbfs to allocate a 2 MB page, otherwise no.

Well, posix_memalign should be able to give you alignment of up to page size
in real addresses (which I think is what Parav was asking for), but can not
guarantee larger than page size real alignment.

If an address is page aligned in user space, it is also guaranteed to be
page aligned in real storage. Alignment larger than page size can not be
forced or detected in user space except when using hugetlbfs.

Arnd <><
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/