public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "Martin J. Bligh" <mbligh@mbligh.org>
To: Christoph Lameter <clameter@sgi.com>
Cc: Andrew Morton <akpm@osdl.org>,
	linux-kernel@vger.kernel.org,
	Christoph Lameter <clameter@engr.sgi.com>
Subject: Re: ZONE_DMA
Date: Wed, 20 Sep 2006 18:23:56 -0700	[thread overview]
Message-ID: <4511E9AC.2050507@mbligh.org> (raw)
In-Reply-To: <Pine.LNX.4.64.0609201804320.2844@schroedinger.engr.sgi.com>

Christoph Lameter wrote:
> On Wed, 20 Sep 2006, Martin J. Bligh wrote:
> 
>> Having something that's used in generic code that means random
>> things on different arches just seems like a recipe for disaster
>> to me.
> 
> ZONE_DMA is only used as ZONE_NORMAL if the architecture does not 
> need ZONE_NORMAL because all of memory is reachable via DMA.

That's still inconsistent because it doesn't say DMA for *which*
device.

>> OK ... but requesting ZONE_DMA means what? DMAable for which device?
>> Is it always a floppy disk? on some platforms a PCI card? And how
>> is the VM meant to know what the device is capable of anyway?
> 
> I already explained that twice to you.

We seem to be miscommunicating ... you did indeed give a technically
correct definition. But in practice, AFAICS, it's useless. The requestor
has no idea what the arch has implemented, if it's a driver from
arch-independent code.

> I think we all agree that the situation could be better.

Indeed, that would seem to cause little dispute.

>> Having an arch-specific definition of the limit is arbitrary and
>> useless, is it not? The limit is imposed by the device and its
>> driver, we're not communicating it into any sensible way into the
>> VM code, AFAICS. Unless we're pretending we never call it from
>> generic code, which seems woefully unlikely to me.
> 
> Its bad but its not useless. See how various arches use it.
> 
>> Are we redefining ZONE_DMA to always be 16MB limit across all
>> architectures? At least that'd be consistent.
> 
> That wont work because many architectures use different limits. Maybe you 
> should once in a while have a look at the sources.

I'm perfectly well aware that it's inconsistent, that's my whole point.
However, by some chance of history, it's sort of vaguely working. I
think it's dangerous to mess with it rather than fixing it properly.

AFAICS, the correct way to do this is have the requestor pass a memory
bound into the allocator, and have the arch figure out which zones
are applicable.

> Actually the desaster is cleaned up by this patch. A couple of 
> architectures that were wrongly using ZONE_DMA now use ZONE_NORMAL.

Odd that the PPC64 maintainers didn't seem to know about this.
Perhaps it might be a good idea to talk to them before doing this?

M.


  reply	other threads:[~2006-09-21  1:24 UTC|newest]

Thread overview: 128+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-09-20 20:54 2.6.19 -mm merge plans Andrew Morton
2006-09-20 21:08 ` Jeff Garzik
2006-09-20 21:42 ` Badari Pulavarty
2006-09-20 21:53 ` USB: fix autosuspend-autoresume with CONFIGRe: " Jiri Kosina
2006-09-20 22:09   ` Andrew Morton
2006-09-20 22:41     ` Greg KH
2006-09-20 21:55 ` Autofs4 breakage (was 2.6.19 -mm merge plans) Trond Myklebust
2006-09-20 22:13   ` Andrew Morton
2006-09-21  3:39   ` Andrew Morton
2006-09-21 23:25     ` Trond Myklebust
2006-09-22 15:55       ` Andrew Morton
2006-09-26  4:10   ` Ian Kent
2006-09-21  0:09 ` 2.6.19 -mm merge plans Martin J. Bligh
2006-09-21  0:22   ` ZONE_DMA (was: Re: 2.6.19 -mm merge plans) Andrew Morton
2006-09-21  0:31     ` Christoph Lameter
2006-09-21  1:03       ` Alan Cox
2006-09-21 15:59         ` James Bottomley
2006-09-21  0:50     ` ZONE_DMA Martin J. Bligh
2006-09-21  1:10       ` ZONE_DMA Christoph Lameter
2006-09-21  1:23         ` Martin J. Bligh [this message]
2006-09-21 15:58           ` ZONE_DMA Christoph Lameter
2006-09-21 16:57             ` ZONE_DMA Martin Bligh
2006-09-21 17:54               ` ZONE_DMA Christoph Lameter
2006-09-21 23:15                 ` ZONE_DMA Martin Bligh
2006-09-22  2:59                   ` ZONE_DMA Christoph Lameter
2006-09-22 17:21                     ` ZONE_DMA Jesse Barnes
2006-09-22 17:39                       ` ZONE_DMA Jesse Barnes
2006-09-22 18:08                         ` ZONE_DMA Christoph Lameter
2006-09-22 18:26                           ` ZONE_DMA Jesse Barnes
2006-09-22 18:32                             ` ZONE_DMA Christoph Lameter
2006-09-22 18:39                               ` ZONE_DMA Jesse Barnes
2006-09-22 18:40                                 ` ZONE_DMA Christoph Lameter
2006-09-22 19:06                                   ` ZONE_DMA Jesse Barnes
2006-09-22 19:07                                     ` ZONE_DMA Christoph Lameter
2006-09-22 17:35                     ` ZONE_DMA Martin Bligh
2006-09-22 17:37                       ` ZONE_DMA Christoph Lameter
2006-09-21  0:40   ` 2.6.19 -mm merge plans Christoph Lameter
2006-09-21  2:28 ` 2.6.19 -mm merge plans (NTP changes) john stultz
2006-09-21  2:40   ` Andrew Morton
2006-09-21 10:24   ` Roman Zippel
2006-09-25 16:50     ` john stultz
2006-09-25 17:04       ` Ray Lee
2006-09-25 17:38         ` Roman Zippel
2006-09-21  4:22 ` 2.6.19 -mm merge plans Jeff Garzik
2006-09-21  5:07   ` Andrew Morton
2006-09-21  5:23     ` Linus Torvalds
2006-09-21  9:12       ` Alan Cox
2006-09-21  6:36     ` Jeff Garzik
2006-09-21  6:48       ` Andrew Morton
2006-09-21 11:10         ` Rafael J. Wysocki
2006-09-22 13:16         ` release cycle (Re: 2.6.19 -mm merge plans) Pavel Machek
2006-09-21  9:16     ` 2.6.19 -mm merge plans Alan Cox
2006-09-21 10:55       ` Jan Engelhardt
2006-09-21 15:25       ` Linus Torvalds
2006-09-21 15:50         ` Jan Engelhardt
2006-09-21 17:59         ` Andrew Morton
2006-09-21 18:20           ` Jeff Garzik
2006-09-21 18:22           ` Linus Torvalds
2006-09-21 18:33             ` Jeff Garzik
2006-09-21 18:55               ` Andrew Morton
2006-09-21 19:46               ` Adrian Bunk
2006-09-21 20:37                 ` Diego Calleja
2006-09-21 21:35                   ` Randy.Dunlap
2006-09-21 20:38                 ` Jeff Garzik
2006-09-21 20:49                   ` Adrian Bunk
2006-09-21 21:33             ` Bill Davidsen
2006-09-21 21:33               ` Jeff Garzik
2006-09-21 21:52                 ` David Miller
2006-09-21 22:05                   ` Dave Jones
2006-09-21 22:44                     ` David Miller
2006-09-22  8:35                     ` Russell King
2006-09-22 15:48                       ` Dave Jones
2006-09-22 16:21                         ` Linus Torvalds
2006-09-22 20:08                           ` Roland Dreier
2006-09-22 20:22                             ` Jeff Garzik
2006-09-23  8:29                               ` Ryan Anderson
2006-09-24  7:48                           ` Lennert Buytenhek
2006-09-24  9:20                             ` Russell King
2006-09-24 19:38                               ` Mike Galbraith
     [not found]                               ` <20060924142353.6c725128.seanlkml@sympatico.ca>
2006-09-24 18:23                                 ` Sean
2006-09-24 22:34                                   ` Stefan Richter
     [not found]                                     ` <20060924190758.132c0008.seanlkml@sympatico.ca>
2006-09-24 23:07                                       ` Sean
2006-09-24 23:09                                 ` Russell King
     [not found]                                   ` <20060924192308.ef60880a.seanlkml@sympatico.ca>
2006-09-24 23:23                                     ` Sean
2006-09-25  0:48                                       ` Linus Torvalds
2006-10-11 14:09                                         ` Pierre Ossman
2006-09-22 16:24                         ` Alan Cox
2006-09-22 16:08                           ` Dave Jones
2006-09-22 16:29                         ` Jeff Garzik
2006-09-22 17:09                           ` Dave Jones
2006-09-22 17:11                           ` Dave Jones
2006-09-22 18:26                             ` Jeff Garzik
2006-09-22 18:26                         ` Andrew Morton
2006-09-24  6:33                           ` Lennert Buytenhek
2006-09-22  1:03                 ` Bill Davidsen
2006-09-24 18:51             ` Ingo Molnar
2006-09-25  3:07               ` Nick Piggin
2006-09-25 11:53                 ` Ingo Molnar
2006-09-25 18:57                   ` Rafael J. Wysocki
2006-09-22  6:33           ` Andi Kleen
2006-09-23  8:06   ` Andrew Morton
2006-09-23  9:52     ` David Woodhouse
2006-09-21 13:14 ` Ingo Molnar
2006-09-21 17:35   ` Andrew Morton
2006-09-22 13:06   ` Pavel Machek
2006-09-22 19:01     ` Ingo Molnar
2006-09-22 20:29       ` hires timer patchset [was Re: 2.6.19 -mm merge plans] Bill Rugolsky Jr.
2006-09-23 11:07       ` 2.6.19 -mm merge plans Pavel Machek
2006-09-22 20:12     ` Dave Jones
2006-09-21 14:04 ` Apple Motion Sensor (was: 2.6.19 -mm merge plans) Michael Hanselmann
     [not found] ` <20060921234637.GA9742@mail.ustc.edu.cn>
2006-09-21 23:46   ` 2.6.19 -mm merge plans Fengguang Wu
2006-09-21 23:59     ` Andrew Morton
     [not found]       ` <20060922003223.GA9952@mail.ustc.edu.cn>
2006-09-22  0:32         ` Fengguang Wu
2006-09-23 14:48           ` Gene Heskett
     [not found]             ` <20060924024239.GA11671@mail.ustc.edu.cn>
2006-09-24  2:42               ` Fengguang Wu
2006-09-24 14:25           ` Diego Calleja
2006-09-22  9:24 ` David Woodhouse
2006-09-22 10:10   ` David Woodhouse
2006-09-22 10:42     ` Jan Engelhardt
2006-09-22 11:20       ` David Woodhouse
2006-09-22 14:48     ` Randy.Dunlap
2006-09-23 10:44   ` David Woodhouse
2006-09-22 12:32 ` 2.6.19 -mm merge plans: AVR32 Haavard Skinnemoen
2006-09-22 14:42 ` 2.6.19 -mm merge plans Christoph Hellwig
2006-09-22 16:03   ` 2.6.19 -mm merge plans (ecryptfs) Andrew Morton
2006-09-22 16:53     ` Michael Halcrow
2006-09-25 14:59 ` [PATCH -mm updated] PCMCIA: Add few IDs into ide-cs Marcin Juszkiewicz
2006-09-25 15:48   ` Alan Cox

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=4511E9AC.2050507@mbligh.org \
    --to=mbligh@mbligh.org \
    --cc=akpm@osdl.org \
    --cc=clameter@engr.sgi.com \
    --cc=clameter@sgi.com \
    --cc=linux-kernel@vger.kernel.org \
    /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