Messages in this thread | | | Date | Sat, 08 Jul 2006 11:59:34 -0600 | From | Robert Hancock <> | Subject | Re: [RFC 0/8] Optional ZONE_DMA |
| |
Christoph Lameter wrote: > Optional ZONE_DMA > > ZONE_DMA is usually used for ISA DMA devices. Typically modern hardware > does not have any of these anymore. We frequently do not need > the zone anymore. > > This patch allows to make the configuration of the kernel for > ZONE_DMA dependend on the user choosing to support ISA DMA. > If ISA DMA is not supported then i386 systems f.e. can be > configured using a single ZONE_NORMAL. The overhead of maintaining > multiple zones and balancing page use between the different > zone is then gone. My i386 system now runs with a single zone. > > On x86_64 systems also usually we do not need ZONE_DMA since there > are barely any ISA DMA devices around (or are you still using a floppy?). > So for most cases the zone can be dropped. Also if the x86_64 systems > has less than 4G RAM or DMA controllers that actually can do 64 bit > then we also do not need ZONE_DMA32. My x86_64 system has 1G of > memory therefore I can run with a single zone.
Keep in mind that:
-LPC devices like the floppy controller, maybe enhanced parallel, etc. may have 24-bit DMA restrictions even if there is no physical ISA bus.
-Even in totally ISA and LPC-free systems, some PCI devices (like those that were a quick hack of an ISA device onto PCI) still have 24-bit address restrictions. There are other devices that have sub-32-bit DMA capabilities, like Broadcom wireless chips that only address 31 bits (although I think they are fixing this in the driver). Without the DMA zone there is no way to ensure that these requests can be satisfied.
So I don't think it is safe to make this conditional on ISA or even the ISA DMA API. Only if all devices on the system have addressing capability of a full 32 bits (or at least of all installed RAM) can this zone be removed.
-- Robert Hancock Saskatoon, SK, Canada To email, remove "nospam" from hancockr@nospamshaw.ca Home Page: http://www.roberthancock.com/
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |