Messages in this thread | | | Date | Fri, 7 Mar 2008 22:35:35 -0800 | From | "Yinghai Lu" <> | Subject | Re: [PATCH] [8/13] Enable the mask allocator for x86 |
| |
On Fri, Mar 7, 2008 at 6:37 PM, Christoph Lameter <clameter@sgi.com> wrote: > On Fri, 7 Mar 2008, Andi Kleen wrote: > > > - Disable old ZONE_DMA > > No fixed size ZONE_DMA now anymore. All existing users of __GFP_DMA rely > > on the compat call to the maskable allocator in alloc/free_pages > > - Call maskable allocator initialization functions at boot > > - Add TRAD_DMA_MASK for the compat functions > > - Remove dma_reserve call > > This looks okay for the disabling part. But note that there are various > uses of MAX_DMA_ADDRESS (sparsemem, bootmem allocator) that are currently > suboptimal because they set a boundary at 16MB for allocation of > potentially large operating system structures. That boundary continues to > exist despite the removal of ZONE_DMA? > > It would be better to remove ZONE_DMA32 instead and enlarge ZONE_DMA so > that it can take over the role of ZONE_DMA. Set the boundary for > MAX_DMA_ADDRESS to the boundary for ZONE_DMA32. Then the > allocations for sparse and bootmem will be allocated above 4GB which > leaves lots of the lower space available for 32 bit DMA capable devices.
good. i like the idea...
How about system with only 4G or less?
YH
| |