Messages in this thread | | | Date | Fri, 19 May 2006 13:49:48 -0700 | From | Andrew Morton <> | Subject | Re: [PATCH 1/2] Align the node_mem_map endpoints to a MAX_ORDER boundary |
| |
Mel Gorman <mel@csn.ul.ie> wrote: > > Andy added code to buddy allocator which does not require the zone's > endpoints to be aligned to MAX_ORDER. An issue is that the buddy > allocator requires the node_mem_map's endpoints to be MAX_ORDER aligned. > Otherwise __page_find_buddy could compute a buddy not in node_mem_map for > partial MAX_ORDER regions at zone's endpoints. page_is_buddy will detect > that these pages at endpoints are not PG_buddy (they were zeroed out by > bootmem allocator and not part of zone). Of course the negative here is > we could waste a little memory but the positive is eliminating all the > old checks for zone boundary conditions. > > SPARSEMEM won't encounter this issue because of MAX_ORDER size constraint > when SPARSEMEM is configured. ia64 VIRTUAL_MEM_MAP doesn't need the > logic either because the holes and endpoints are handled differently. > This leaves checking alloc_remap and other arches which privately allocate > for node_mem_map.
Do we think we need this in 2.6.17? - 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/
| |