Re: ZONE_DMA
From: Christoph Lameter
Date: Wed Sep 20 2006 - 21:11:14 EST
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.
> 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. I think we all agree that the
situation could be better.
> 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.
The patchset leaves the semantics of ZONE_DMA as memory beyond
MAX_DMA_ADDRESS as is. Nothing should break. It only allows us to opt out
of this scheme if we do not need it.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/