mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Andy Whitcroft <apw@shadowen.org>
To: Nishanth Aravamudan <nacc@us.ibm.com>
Cc: Nish Aravamudan <nish.aravamudan@gmail.com>,
	Gurudas Pai <gurudas.pai@oracle.com>, Ingo Molnar <mingo@elte.hu>,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH] hugetlbpage.txt: correct overcommit caveat [Was Re: [BUG]:2.6.25-rc7 memory leak with hugepages.]
Date: Fri, 4 Apr 2008 19:11:23 +0100	[thread overview]
Message-ID: <20080404181123.GB17915@shadowen.org> (raw)
In-Reply-To: <20080404173125.GE30117@us.ibm.com>

On Fri, Apr 04, 2008 at 10:31:25AM -0700, Nishanth Aravamudan wrote:
> On 04.04.2008 [18:16:38 +0100], Andy Whitcroft wrote:
> > On Thu, Apr 03, 2008 at 08:40:41PM -0700, Nish Aravamudan wrote:
> > 
> > > Hrm, fio is using SHM_HUGETLB. Does ipcs indicate maybe fio is not
> > > cleaning up the shared memory segment? FWIW, it seems like each run is
> > > using 400 hugepages in the SHM_HUGETLB segment, and then when you try
> > > to force the pool to shrink, it converts those 800 (since you ran fio
> > > twice) hugepages from static pool pages to dynamic (or overcommit)
> > > pages.
> > > 
> > > On another note, it is odd that we're using the dynamic pool, when it
> > > is initially disabled...I'll have to think about that.
> > > 
> > > I'll try and look at this later this evening or early tomorrow.
> > 
> > Yes that is an expected result.  We have no way to force the pool to
> > shrink when pages are in-use.  When a request is made to redoce the pool
> > below the number of in-use pages, we move the pages to surplus.  While
> > this does temporarily violate the overcommit cap, it does provide the
> > most utility as those pages will be returned to the buddy at the
> > earliest oppotunity.
> > 
> > I suspect the documenation could do with a little clarification.
> 
> 
> As shown by Gurudas Pai recently, we can put hugepages into the surplus
> state (by echo 0 > /proc/sys/vm/nr_hugepages), even when
> /proc/sys/vm/nr_overcommit_hugepages is 0. This is actually correct, to
> allow the original goal (shrink the static pool to 0) to succeed when it
> is possible for it two (we are converting hugepages to surplus because
> they are in use). However, the documentation does not accurately reflect
> this case. Update it.
>     
> Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
> 
> diff --git a/Documentation/vm/hugetlbpage.txt b/Documentation/vm/hugetlbpage.txt
> index f962d01..3102b81 100644
> --- a/Documentation/vm/hugetlbpage.txt
> +++ b/Documentation/vm/hugetlbpage.txt
> @@ -88,10 +88,9 @@ hugepages from the buddy allocator, if the normal pool is exhausted. As
>  these surplus hugepages go out of use, they are freed back to the buddy
>  allocator.
>  
> -Caveat: Shrinking the pool via nr_hugepages while a surplus is in effect
> -will allow the number of surplus huge pages to exceed the overcommit
> -value, as the pool hugepages (which must have been in use for a surplus
> -hugepages to be allocated) will become surplus hugepages.  As long as
> +Caveat: Shrinking the pool via nr_hugepages such that it becomes less
> +than the number of hugepages in use will convert the balance to surplus
> +huge pages even if it would exceed the overcommit value.  As long as
>  this condition holds, however, no more surplus huge pages will be
>  allowed on the system until one of the two sysctls are increased
>  sufficiently, or the surplus huge pages go out of use and are freed.

Yep, thats more like reality.

Acked-by: Andy Whitcroft <apw@shadowen.org>

-apw

      parent reply	other threads:[~2008-04-04 18:11 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-03-27  7:35 [BUG]:2.6.25-rc7 memory leak with hugepages Gurudas Pai
2008-03-27  8:38 ` Ingo Molnar
2008-03-27 10:24   ` Gurudas Pai
2008-04-04  3:40     ` Nish Aravamudan
2008-04-04  7:28       ` Nish Aravamudan
2008-04-04  7:45         ` Gurudas Pai
2008-04-04  7:48       ` Gurudas Pai
2008-04-04 17:16       ` Andy Whitcroft
2008-04-04 17:31         ` [PATCH] hugetlbpage.txt: correct overcommit caveat [Was Re: [BUG]:2.6.25-rc7 memory leak with hugepages.] Nishanth Aravamudan
2008-04-04 18:04           ` Nishanth Aravamudan
2008-04-04 18:11           ` Andy Whitcroft [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080404181123.GB17915@shadowen.org \
    --to=apw@shadowen.org \
    --cc=gurudas.pai@oracle.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=nacc@us.ibm.com \
    --cc=nish.aravamudan@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®