Can Linux live without DMA zone?

From: Jun Sun
Date: Wed Nov 01 2006 - 21:16:17 EST



I am trying to reserve a block of memory (>16MB) starting from 0 and hide it
from kernel. A consequence is that DMA zone now has size 0. That causes
many drivers to grief (OOMs).

I see two ways out:

1. Modify individual drivers and convince them not to alloc with GFP_DMA.
I have been trying to do this but do not seem to see an end of it. :)

2. Simply lie and increase MAX_DMA_ADDRESS to really big (like 1GB) so that
the whole memory region belongs to DMA zone.

#2 sounds pretty hackish. I am sure something bad will happen
sooner or later (like what?). But so far it appears to be working fine.

The fundamental question is: Has anybody tried to run Linux without 0 sized
DMA zone before? Am I doing something that nobody has done before (which is
something really hard to believe these days with Linux :P)?

Cheers.

Jun
-
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/