Hi everyone, I've updated thp migration patches for v4.9-rc2-mmotm-2016-10-27-18-27 with feedbacks for ver.1. General description (no change since ver.1) =========================================== This patchset enhances page migration functionality to handle thp migration for various page migration's callers: - mbind(2) - move_pages(2) - migrate_pages(2) - cgroup/cpuset migration - memory hotremove - soft offline The main benefit is that we can avoid unnecessary thp splits, which helps us avoid performance decrease when your applications handles NUMA optimization on their own. The implementation is similar to that of normal page migration, the key point is that we modify a pmd to a pmd migration entry in swap-entry like format. Changes / Notes =============== - pmd_present() in x86 checks _PAGE_PRESENT, _PAGE_PROTNONE and _PAGE_PSE bits together, which makes implementing thp migration a bit hard because _PAGE_PSE bit is currently used by soft-dirty in swap-entry format. I was advised to dropping _PAGE_PSE in pmd_present(), but I don't think of the justification, so I keep it in this version. Instead, my approach is to move _PAGE_SWP_SOFT_DIRTY to bit 6 (unused) and reserve bit 7 for pmd non-present cases. - this patchset still covers only x86_64. Zi Yan posted a patch for ppc64 and I think it's favorably received so that's fine. But there's unsolved minor suggestion by Aneesh, so I don't include it in this set, expecting that it will be updated/reposted. - pte-mapped thp and doubly-mapped thp were not supported in ver.1, but this version should work for such kinds of thp. - thp page cache is not tested yet, and it's at the head of my todo list for future version. Any comments or advices are welcomed. Thanks, Naoya Horiguchi -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>