On Tue, Apr 06, 2010 at 05:06:16PM -0700, Andrew Morton wrote: > > --- > > include/linux/compaction.h | 35 +++++++++++++++++++++++++++++++++++ > > include/linux/mmzone.h | 7 +++++++ > > mm/page_alloc.c | 5 ++++- > > 3 files changed, 46 insertions(+), 1 deletions(-) > > > > diff --git a/include/linux/compaction.h b/include/linux/compaction.h > > index ae98afc..2a02719 100644 > > --- a/include/linux/compaction.h > > +++ b/include/linux/compaction.h > > @@ -18,6 +18,32 @@ extern int sysctl_extfrag_handler(struct ctl_table *table, int write, > > extern int fragmentation_index(struct zone *zone, unsigned int order); > > extern unsigned long try_to_compact_pages(struct zonelist *zonelist, > > int order, gfp_t gfp_mask, nodemask_t *mask); > > + > > +/* defer_compaction - Do not compact within a zone until a given time */ > > +static inline void defer_compaction(struct zone *zone, unsigned long resume) > > +{ > > + /* > > + * This function is called when compaction fails to result in a page > > + * allocation success. This is somewhat unsatisfactory as the failure > > + * to compact has nothing to do with time and everything to do with > > + * the requested order, the number of free pages and watermarks. How > > + * to wait on that is more unclear, but the answer would apply to > > + * other areas where the VM waits based on time. > > + */ > > c'mon, let's not make this rod for our backs. Actually I skipped this one in the unified tree (I'm running both patchsets at the same time as I write this and I should have tweaked it so that the defrag sysfs control in transparent hugepage turns memory compaction on and off, plus I embedded the set_recommended_min_free_kbytes() code inside huge_memory.c initialization). I merged the whole V7 except the above. It also didn't pass my threshold, also because this only checks 1 jiffy that is random and too short to matter. -- 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>