On Tue, May 14, 2013 at 12:49:51PM +0100, majianpeng wrote: > If the scan-areas are adjacent,it can merge in order to reduce memomy.
Have you found any significant reduction in the memory size? What we miss though is removing an area (and I found a use-case for it). > + hlist_for_each_entry(area, &object->area_list, node) { > + if (ptr + size == area->start) { > + area->start = ptr; > + area->size += size; > + goto out_unlock; > + } else if (ptr == area->start + area->size) { > + area->size += size; > + goto out_unlock; I prefer to keep 'goto' only for the error path. You could add a 'bool merged' and another 'if' block for area allocation. I'll pick the other too patches. Thanks. -- Catalin -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/