On Tue, 23 Mar 2010, Mel Gorman wrote: > +/* > + * Return an index indicating how much of the available free memory is > + * unusable for an allocation of the requested size. > + */ > +static int unusable_free_index(unsigned int order, > + struct contig_page_info *info) > +{ > + /* No free memory is interpreted as all free memory is unusable */ > + if (info->free_pages == 0) > + return 1000; Is that assumption correct? If you have no free memory then you do not know about the fragmentation status that would result if you would run reclaim and free some memory. Going into a compaction mode would not be useful. Should this not return 0 to avoid any compaction run when all memory is allocated? Otherwise Reviewed-by: Christoph Lameter <cl@xxxxxxxxxxxxxxxxxxxx> -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>