lkml.org 
[lkml]   [2008]   [May]   [4]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateSat, 3 May 2008 22:29:55 -0700 (PDT)
Fromdean gaudet <>
SubjectRe: [RFC] Reserve huge pages for reliable MAP_PRIVATE hugetlbfs mappings
On Wed, 23 Apr 2008, Andi Kleen wrote:

> Mel Gorman <mel@csn.ul.ie> writes:
> 
> > MAP_SHARED mappings on hugetlbfs reserve huge pages at mmap() time. This is
> > so that all future faults will be guaranteed to succeed. Applications are not
> > expected to use mlock() as this can result in poor NUMA placement.
> >
> > MAP_PRIVATE mappings do not reserve pages. This can result in an application
> > being SIGKILLed later if a large page is not available at fault time. This
> > makes huge pages usage very ill-advised in some cases as the unexpected
> > application failure is intolerable. Forcing potential poor placement with
> > mlock() is not a great solution either.
> >
> > This patch reserves huge pages at mmap() time for MAP_PRIVATE mappings similar
> > to what happens for MAP_SHARED mappings. 
> 
> This will break all applications that mmap more hugetlbpages than they
> actually use. How do you know these don't exist?

such applications couldn't have existed before the change which added 
HugePages_Rsvd... which i admit was sometime between 2.6.11 and 2.6.18 but 
from my point of view the inability to actually allocate hugepages without 
trapping SIGSEGV/etc was a terrible bug introduced when HugePages_Rsvd was 
introduced.

-dean


\
 
 \ /
  Last update: 2008-05-04 07:33    [from the cache]
©2003-2008