Messages in this thread | | | Date | Wed, 20 Apr 2011 19:31:57 -0700 (PDT) | From | David Rientjes <> | Subject | Re: [patch v2] x86: allow ZONE_DMA to be configurable |
| |
On Fri, 15 Apr 2011, H. Peter Anvin wrote:
> On 04/15/2011 04:42 AM, Clemens Ladisch wrote: > > David Rientjes wrote: > >> ZONE_DMA is unnecessary for a large number of machines that do not > >> require addressing in the lower 16MB of memory because they do not use > >> ISA devices with 16-bit address registers (plus one page byte register). > >> > >> This patch allows users to disable ZONE_DMA for x86 if they know they > >> will not be using such devices with their kernel. > >> ... > >> config ZONE_DMA > >> - def_bool y > >> + bool "DMA memory allocation support" if EXPERT > > > > Better call it "ISA/LPC DMA memory allocation support". > > > >> + default y > > > > Does it make sense to have this without CONFIG_ISA_DMA_API? > > > >> + help > >> + DMA memory allocation support allows old ISA devices with 16-bit > >> + address registers to allocate memory within the first 16MB of > >> + address space. Disable if no such devices will be used. > > > > "Old ISA devices" might be misleading because ISA does not imply actual > > ISA slots; please mention LPC devices like the floppy controller and the > > parallel port in ECP mode. > > > > This isn't really a very good edit, as ZONE_DMA isn't inherently limited > to ISA/LPC devices (and LPC devices which do LPC-native bus mastering > DMA are not affected.) ZONE_DMA is used even for some PCI devices which > have restrictions on the DMA address mask. >
Peter, do you think we can merge this patch now? The discussion from October resulted in the decision to rename CONFIG_EMBEDDED to CONFIG_EXPERT and make CONFIG_GENERIC_ISA_DMA and CONFIG_ISA_DMA_API configurable for x86. That's all been done via the -mm tree and is in the latest git.
We've run without ZONE_DMA for a few years without issues (and, obviously, this patch) on x86.
| |