public inbox for linux-ia64@vger.kernel.org
 help / color / mirror / Atom feed
From: Paul Mundt <lethal@linux-sh.org>
To: Christoph Lameter <clameter@sgi.com>
Cc: Christoph Hellwig <hch@infradead.org>,
	linux-mm@kvack.org, Nick Piggin <nickpiggin@yahoo.com.au>,
	linux-ia64@vger.kernel.org, Marcelo Tosatti <marcelo@kvack.org>,
	Arjan van de Ven <arjan@infradead.org>,
	Martin Bligh <mbligh@google.com>,
	KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>,
	Andi Kleen <ak@suse.de>,
	linux-arch@vger.kernel.org,
	James Bottomley <James.Bottomley@steeleye.com>,
	Russell King <rmk@arm.linux.org.uk>
Subject: Re: [PATCH 2/6] Introduce CONFIG_ZONE_DMA
Date: Mon, 18 Sep 2006 23:25:09 +0000	[thread overview]
Message-ID: <20060918232509.GA8032@localhost.usen.ad.jp> (raw)
In-Reply-To: <Pine.LNX.4.64.0609181556430.29365@schroedinger.engr.sgi.com>

On Mon, Sep 18, 2006 at 03:58:52PM -0700, Christoph Lameter wrote:
> On Tue, 19 Sep 2006, Paul Mundt wrote:
> > You've missed the other ZONE_DMA references, if you scroll a bit further
> > down that's where we fill in ZONE_DMA, this is simply the default zone
> > layout that we rely on for nommu.
> 
> Are you sure that sh does not need ZONE_DMA? There is code in there
> to check for the DMA boundary. The following patch disables that
> code if CONFIG_ZONE_DMA is not set.
> 
Yes, MAX_DMA_ADDRESS (in include/asm-sh/dma.h) is from when we needed it for
alloc_bootmem(), we have no interest in it, but we can't kill off the
definition either since some drivers seem to rely on it.. It was also left
around in case some CPU variants with an arbitrary limitation in their
respective DMACs popped up.

All lowmem fits < MAX_DMA_ADDRESS and so gets stuffed in ZONE_DMA, as
per:

                if (low < max_dma) {
                        zones_size[ZONE_DMA] = low - start_pfn;
                        zones_size[ZONE_NORMAL] = 0;

So we may as well just do away with it entirely, via something like this:

Signed-off-by: Paul Mundt <lethal@linux-sh.org>

diff --git a/arch/sh/mm/init.c b/arch/sh/mm/init.c
index 8ea27ca..40494f9 100644
--- a/arch/sh/mm/init.c
+++ b/arch/sh/mm/init.c
@@ -156,7 +156,6 @@ void __init paging_init(void)
 	 * Setup some defaults for the zone sizes.. these should be safe
 	 * regardless of distcontiguous memory or MMU settings.
 	 */
-	zones_size[ZONE_DMA] = 0 >> PAGE_SHIFT;
 	zones_size[ZONE_NORMAL] = __MEMORY_SIZE >> PAGE_SHIFT;
 #ifdef CONFIG_HIGHMEM
 	zones_size[ZONE_HIGHMEM] = 0 >> PAGE_SHIFT;
@@ -168,7 +167,7 @@ #ifdef CONFIG_MMU
 	 * the zone sizes accordingly, in addition to turning it on.
 	 */
 	{
-		unsigned long max_dma, low, start_pfn;
+		unsigned long low, start_pfn;
 		pgd_t *pg_dir;
 		int i;
 
@@ -183,16 +182,10 @@ #ifdef CONFIG_MMU
 
 		/* Fixup the zone sizes */
 		start_pfn = START_PFN;
-		max_dma = virt_to_phys((char *)MAX_DMA_ADDRESS) >> PAGE_SHIFT;
 		low = MAX_LOW_PFN;
 
-		if (low < max_dma) {
-			zones_size[ZONE_DMA] = low - start_pfn;
-			zones_size[ZONE_NORMAL] = 0;
-		} else {
-			zones_size[ZONE_DMA] = max_dma - start_pfn;
-			zones_size[ZONE_NORMAL] = low - max_dma;
-		}
+		/* No DMA limitation, shove all of lowmem in ZONE_NORMAL. */
+		zones_size[ZONE_NORMAL] = low - start_pfn;
 	}
 
 #elif defined(CONFIG_CPU_SH3) || defined(CONFIG_CPU_SH4)

  reply	other threads:[~2006-09-18 23:25 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20060918183614.19679.50359.sendpatchset@schroedinger.engr.sgi.com>
2006-09-11 22:27 ` [PATCH 0/8] Optional ZONE_DMA V1 Christoph Lameter
2006-09-11 22:27   ` [PATCH 2/6] Introduce CONFIG_ZONE_DMA Christoph Lameter
2006-09-18 13:55     ` Christoph Hellwig
2006-09-18 14:08       ` Martin Schwidefsky
2006-09-18 17:28         ` Christoph Lameter
2006-09-19  8:03           ` Martin Schwidefsky
2006-09-18 14:42       ` Russell King
2006-09-18 14:58       ` James Bottomley
2006-09-18 17:30         ` Christoph Lameter
2006-09-18 15:22       ` Paul Mundt
2006-09-18 17:33         ` Christoph Lameter
2006-09-18 22:45           ` Paul Mundt
2006-09-18 22:58             ` Christoph Lameter
2006-09-18 23:25               ` Paul Mundt [this message]
2006-09-11 22:27   ` [PATCH 3/6] Optional ZONE_DMA in the VM Christoph Lameter
2006-09-12  0:35     ` Nick Piggin
2006-09-12  1:40       ` Christoph Lameter
2006-09-12  2:40     ` Nick Piggin
2006-09-12  7:22     ` Andi Kleen
2006-09-12  8:30     ` Jes Sorensen
2006-09-12  9:12     ` Jes Sorensen
2006-09-12 18:05     ` Christoph Lameter
2006-09-12  7:30   ` [PATCH 0/8] Optional ZONE_DMA V1 Arjan van de Ven
2006-09-12 13:34   ` Jack Steiner
2006-09-12 17:25   ` Christoph Lameter
2006-09-12 17:33   ` Christoph Lameter
2006-09-12 17:47     ` Martin Bligh
2006-09-12 17:53       ` Christoph Lameter
2006-09-12 17:40   ` Martin Bligh
2006-09-13  2:41   ` Nick Piggin
2006-09-13  7:55   ` Jes Sorensen
2006-09-13  7:57   ` Jes Sorensen
2006-09-13  8:10   ` Christoph Lameter
2006-09-13  9:52   ` Jes Sorensen
2006-09-13 17:23     ` Christoph Lameter
2006-09-13 17:49       ` Jack Steiner
2006-09-13 18:00         ` Christoph Lameter
2006-09-14  8:52           ` Jes Sorensen
2006-09-14 16:55             ` 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=20060918232509.GA8032@localhost.usen.ad.jp \
    --to=lethal@linux-sh.org \
    --cc=James.Bottomley@steeleye.com \
    --cc=ak@suse.de \
    --cc=arjan@infradead.org \
    --cc=clameter@sgi.com \
    --cc=hch@infradead.org \
    --cc=kamezawa.hiroyu@jp.fujitsu.com \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-ia64@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=marcelo@kvack.org \
    --cc=mbligh@google.com \
    --cc=nickpiggin@yahoo.com.au \
    --cc=rmk@arm.linux.org.uk \
    /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