From: Andi Kleen <ak@suse.de>
To: Christoph Lameter <clameter@sgi.com>
Cc: Andi Kleen <ak@suse.de>, Mel Gorman <mel@skynet.ie>,
Lee.Schermerhorn@hp.com, linux-kernel@vger.kernel.org,
linux-mm@kvack.org
Subject: Re: [PATCH 3/4] Embed zone_id information within the zonelist->zones pointer
Date: Tue, 14 Aug 2007 02:25:03 +0200 [thread overview]
Message-ID: <20070814002503.GQ3406@bingen.suse.de> (raw)
In-Reply-To: <Pine.LNX.4.64.0708131622380.19910@schroedinger.engr.sgi.com>
On Mon, Aug 13, 2007 at 04:25:23PM -0700, Christoph Lameter wrote:
> On Tue, 14 Aug 2007, Andi Kleen wrote:
>
> > > But they use GFP_DMA right now and drivers cannot use DMA32 if they want
> >
> > The way it was originally designed was that they use GFP_DMA32,
> > which would map to itself on x86-64, to GFP_DMA on ia64 and to
> > GFP_KERNEL on i386. Unfortunately that seems to have bitrotted
> > (perhaps I should have better documented it)
>
> The DMA boundaries are hardware depending. A 4GB boundary
> may not make sense on certain platforms.
If it makes sense for the driver it has to make sense
for the platform too. If not it cannot run the driver
(which might be fine; a lot of architectures only
run their own specialized drivers)
>
> > > to be cross platforms compatible? Doesnt the dma API completely do away
> > > with these things?
> >
> > No GFP_DMA32 in my current plan is still there.
>
> AFAIK GFP_DMA32 is a x86_64 special that would be easy to remove. Dealing
> with physical boundaries is current done via the dma interface right? Lets
> keep it there?
The difference between the low dma allocation and GFP_DMA32 is that
the low dma allocation zone is isolated. This means it is not shared
with user pages, no LRU, no vmscan, no try_to_free_pages etc.
But that cannot be obviously done for a full 4GB, only for a small
area. Right now on swiotlb systems we reserved 82MB for this
(64MB swiotlb + 16MB ZONE_DMA). So the new zone is by default <100MB
and can afford to be isolated.
If GFP_DMA32 was merged into the mask allocator then it would
need to learn about all that mess by itself. If GFP_DMA32
stays it can just use the current page allocator which avoids
a lot of code duplication.
The DMA allocator calls the normal page allocator implicitely
though for a 4GB mask, but that still needs such a bit to specify.
-Andi
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2007-08-14 0:25 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-08-09 21:06 [PATCH 0/4] Use one zonelist per node instead of multiple zonelists v3 Mel Gorman
2007-08-09 21:06 ` [PATCH 1/4] Use zonelists instead of zones when direct reclaiming pages Mel Gorman
2007-08-09 21:19 ` Christoph Lameter
2007-08-09 21:06 ` [PATCH 2/4] Use one zonelist that is filtered instead of multiple zonelists Mel Gorman
2007-08-09 21:27 ` Christoph Lameter
2007-08-09 21:07 ` [PATCH 3/4] Embed zone_id information within the zonelist->zones pointer Mel Gorman
2007-08-09 21:37 ` Christoph Lameter
2007-08-09 23:33 ` Mel Gorman
2007-08-10 1:44 ` Christoph Lameter
2007-08-10 10:47 ` Mel Gorman
2007-08-10 17:37 ` Christoph Lameter
2007-08-10 18:13 ` Andi Kleen
2007-08-10 19:02 ` Christoph Lameter
2007-08-11 1:04 ` Andi Kleen
2007-08-13 21:25 ` Christoph Lameter
2007-08-13 22:50 ` Andi Kleen
2007-08-13 22:00 ` Christoph Lameter
2007-08-13 22:58 ` Andi Kleen
2007-08-13 22:09 ` Christoph Lameter
2007-08-13 23:08 ` Andi Kleen
2007-08-13 22:22 ` Christoph Lameter
2007-08-13 23:42 ` Andi Kleen
2007-08-13 22:52 ` Christoph Lameter
2007-08-13 23:55 ` Andi Kleen
2007-08-13 23:12 ` Christoph Lameter
2007-08-14 0:16 ` Andi Kleen
2007-08-13 23:25 ` Christoph Lameter
2007-08-14 0:25 ` Andi Kleen [this message]
2007-08-13 22:38 ` Christoph Lameter
2007-08-13 23:43 ` Andi Kleen
2007-08-13 22:54 ` Christoph Lameter
2007-08-14 0:00 ` Andi Kleen
2007-08-13 23:16 ` Christoph Lameter
2007-08-14 0:16 ` Andi Kleen
2007-08-13 23:27 ` Christoph Lameter
2007-08-14 0:26 ` Andi Kleen
2007-08-14 19:56 ` Christoph Lameter
2007-08-13 23:22 ` Alan Cox
2007-08-14 0:14 ` Andi Kleen
2007-08-13 23:44 ` Alan Cox
2007-08-14 19:11 ` Andy Isaacson
2007-08-14 20:23 ` Andi Kleen
2007-08-14 19:43 ` Andy Isaacson
2007-08-14 21:05 ` Andi Kleen
2007-08-15 11:37 ` Ralf Baechle
2007-08-15 12:59 ` Andi Kleen
2007-08-15 12:32 ` Ralf Baechle
2007-08-15 19:59 ` Christoph Lameter
2007-08-09 21:07 ` [PATCH 4/4] Apply MPOL_BIND policy to two highest zones when highest is ZONE_MOVABLE Mel Gorman
2007-08-09 21:37 ` Christoph Lameter
2007-08-09 21:19 ` [PATCH 0/4] Use one zonelist per node instead of multiple zonelists v3 Christoph Lameter
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=20070814002503.GQ3406@bingen.suse.de \
--to=ak@suse.de \
--cc=Lee.Schermerhorn@hp.com \
--cc=clameter@sgi.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mel@skynet.ie \
/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