On Tue, Aug 31, 2010 at 10:19:42PM +0800, Wu Fengguang wrote: > On Mon, Aug 23, 2010 at 05:22:46PM +0800, Michal Hocko wrote: > > On Sun 22-08-10 08:42:32, Wu Fengguang wrote: > > > Hi Michal, > > > > Hi, > > > > > > > > It helps to explain in changelog/code > > > > > > - in what situation a ZONE_MOVABLE will contain !MIGRATE_MOVABLE > > > pages? > > > > page can be MIGRATE_RESERVE IIUC. > > Yup, it may also be set to MIGRATE_ISOLATE by soft_offline_page(). Ah a non-movable page allocation could fall back into the movable zone. See __rmqueue_fallback() and the fallbacks[][] array. So the if (type != MIGRATE_MOVABLE && !pageblock_free(page)) check in is_mem_section_removable() is correct. It is set_migratetype_isolate() that should be fixed to use the same check. Thanks, Fengguang -- 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>