linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Mel Gorman <mel@csn.ul.ie>
To: Yasunori Goto <ygoto@us.fujitsu.com>
Cc: "Tolentino, Matthew E" <matthew.e.tolentino@intel.com>,
	Linux Memory Management List <linux-mm@kvack.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: [RFC] Avoiding fragmentation through different allocator
Date: Wed, 19 Jan 2005 13:45:30 +0000 (GMT)	[thread overview]
Message-ID: <Pine.LNX.4.58.0501191336510.8296@skynet> (raw)
In-Reply-To: <20050117114251.35B5.YGOTO@us.fujitsu.com>

On Mon, 17 Jan 2005, Yasunori Goto wrote:

> > Is there an architecture-independant way of finding this out?
>
>   No. At least, I have no idea. :-(
>

In another mail to Matthew, I suggested that the zone->free_area_usemap
could be used to track hotplug blocks of pages by either using a
bit-pattern of 11 for hotplug pages or adding a third bit.

get_pageblock_type() could then be taught to identify a hotplug region
within page_alloc.c at least. If the information is needed outside the
allocator, it will need more work though.

> > What's the current attidute for adding a new zone? I felt there would be
> > resistence as a new zone would affect a lot of code paths and be yet
> > another zone that needed balancing. For example, is there a HIGHMEM
> > version of the ZONE_REMOVABLE or could normal and highmem be in this zone?
>
> Yes. In my current patch of memory hotplug, Removable is like Highmem.
>  ( <http://sourceforge.net/mailarchive/forum.php?forum_id=223>
>      It is group B of "Hot Add patches for NUMA" )
>
> I tried to make new removable zone which could be with normal and dma
> before it. But, it needs too much work as you said. So, I gave up it.
> I heard Matt-san has some ideas for it. So, I'm looking forward to
> see it.
>

I'm taking a look through these patches just so I know what the other
approaches were.

> > > I agree that dividing per-cpu caches is not good way.
> > > But if Kernel-nonreclaimable allocation use its UserRclm pool,
> > > its removable memory bank will be harder to remove suddenly.
> > > Is it correct? If so, it is not good for memory hotplug.
> > > Hmmmm.
> > >
> >
> > It is correct. However, this will only happen in low-memory conditions.
> > For a kernel-nonreclaimable allocation to use the userrclm pool, three
> > conditions have to be met;
> >
> > 1. Kernel-nonreclaimable pool has no pages
> > 2. There are no global 2^MAX_ORDER pages
> > 3. Kern-reclaimable pool has no pages
>
> I suppose if this patch have worked for one year,
> unlucky case might occur. Probably, enterprise system will not
> allow it. So, I will try disabling fallback for KernNoRclm.
>

I can almost guarentee that will fail in low-memory conditions. Before I
implemented proper fallback logic, I used to get oopses in low-memory
conditions. I found it was because KernNoRclm had nowhere to fallback but
there was loads of free memory so kswapd was not taking place.

So, just disabling fallback is not the right answer.

-- 
Mel Gorman

  reply	other threads:[~2005-01-19 13:45 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-01-12 22:45 [RFC] Avoiding fragmentation through different allocator Tolentino, Matthew E
2005-01-12 23:12 ` Mel Gorman
2005-01-13  8:02   ` Hirokazu Takahashi
2005-01-13 10:27     ` Mel Gorman
2005-01-16  4:03   ` Yasunori Goto
2005-01-16 16:21     ` Mel Gorman
2005-01-17 23:08       ` Yasunori Goto
2005-01-19 13:45         ` Mel Gorman [this message]
  -- strict thread matches above, loose matches on Subject: below --
2005-01-17 16:48 Tolentino, Matthew E
2005-01-19 13:17 ` Mel Gorman
2005-01-12 21:09 Mel Gorman
2005-01-13  7:03 ` Matt Mackall
2005-01-13  7:20   ` Trond Myklebust
2005-01-13 10:22   ` Mel Gorman
2005-01-13  7:31 ` William Lee Irwin III
2005-01-13 10:11   ` Mel Gorman
2005-01-14 21:42   ` Marcelo Tosatti
2005-01-15  1:31     ` William Lee Irwin III
2005-01-15 19:19       ` Mel Gorman

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=Pine.LNX.4.58.0501191336510.8296@skynet \
    --to=mel@csn.ul.ie \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=matthew.e.tolentino@intel.com \
    --cc=ygoto@us.fujitsu.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;
as well as URLs for NNTP newsgroup(s).