Re: [PATCH] Fix forhugetlb-add-map_hugetlb-for-mmaping-pseudo-anonymous-huge-page-regions.patchin -mm

From: Randy Dunlap
Date: Mon Feb 08 2010 - 17:56:47 EST


On Tue, 15 Sep 2009 21:53:12 +0100 (BST) Hugh Dickins wrote:

> On Tue, 15 Sep 2009, Eric B Munson wrote:
> > Resending because this seems to have fallen between the cracks.
>
> Yes, indeed. I think it isn't quite what Arnd was suggesting, but I
> agree with you that we might as well go for 0x080000 (so that even Alpha
> can be just a cut-and-paste job from asm-generic), and right now it's
> more important to finalize the number than what file it appears in.
>
> Acked-by: Hugh Dickins <hugh.dickins@xxxxxxxxxxxxx>

so what happened with this patch ??

> >
> > The patch
> > hugetlb-add-map_hugetlb-for-mmaping-pseudo-anonymous-huge-page-regions.patch
> > used the value 0x40 for MAP_HUGETLB which is the same value used for
> > various other flags on some architectures. This collision causes
> > unexpected use of huge pages in the best case and mmap to fail with
> > ENOMEM or ENOSYS in the worst. This patch changes the value for
> > MAP_HUGETLB to a value that is not currently used on any arch.
> >
> > This patch should be considered a fix to
> > hugetlb-add-map_hugetlb-for-mmaping-pseudo-anonymous-huge-page-regions.patch.
> >
> > Reported-by: Hugh Dickins <hugh.dickins@xxxxxxxxxxxxx>
> > Signed-off-by: Eric B Munson <ebmunson@xxxxxxxxxx>
> > ---
> > include/asm-generic/mman-common.h | 2 +-
> > 1 files changed, 1 insertions(+), 1 deletions(-)
> >
> > diff --git a/include/asm-generic/mman-common.h b/include/asm-generic/mman-common.h
> > index 12f5982..e6adb68 100644
> > --- a/include/asm-generic/mman-common.h
> > +++ b/include/asm-generic/mman-common.h
> > @@ -19,7 +19,7 @@
> > #define MAP_TYPE 0x0f /* Mask for type of mapping */
> > #define MAP_FIXED 0x10 /* Interpret addr exactly */
> > #define MAP_ANONYMOUS 0x20 /* don't use a file */
> > -#define MAP_HUGETLB 0x40 /* create a huge page mapping */
> > +#define MAP_HUGETLB 0x080000 /* create a huge page mapping */
> >
> > #define MS_ASYNC 1 /* sync memory asynchronously */
> > #define MS_INVALIDATE 2 /* invalidate the caches */
> > --

---
~Randy
--
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/