Linus, Here are the hwpoison updates for 2.6.37. The main new feature is soft offlining support for huge pages: support to predictively offline hugepages based on corrected memory error statistics. This can be a large win in memory reliability in some setups and is transparent to applications. We already supported that for small pages, but now have it for large pages too, because some large memory users like to use those. Thanks to Naoya-san for spending a lot of time on that and also cleaning up some code on the way. This also is the basis for generic huge page migration (most of the infrastructure is there, but not fully hooked up yet), which will also give some NUMA tuning benefits. Also various cleanups and improvements to hwpoison code. There are some changes outside the usual hwpoison files, which were needed to implement these features: Signals: - IA64 signal fix for _addr_lsb. Similar to the earlier MIPS change. Acked by Tony. - signalfd.h fix (from Seto-san): Same fix as for ia64 for signalfd. This is all really just to report the _addr_lsb siginfo field out to user space, so that it knows how much memory got corrupted. The code for siginfo is unfortunately scattered all over the tree and I didn't find anyone who felt responsible for it. - x86 hwpoison signal reporting fix. I tried to get an ack for that, but wasn't able to motivate the x86 maintainers to reply to their emails. Basically just pass around the address granuality from handle_mm_fault to the hwpoison code in fault.c when an error happens. MM: - Some fixes to handle_memory_fault() to pass out the error granuality in the return code. Does not affect any non hwpoison path. - Migration changes for huge pages. The migration code has been reviewed extensively by Christoph Lameter. - hugetlb changes for migration. Have been reviewed by Mel. - rmap changes for hugetlb migration, including the cleanups you requested in the last review cycle. Acked by Rik and others. Please consider pulling, Thanks, -Andi The following changes since commit 72e58063d63c5f0a7bf65312f1e3a5ed9bb5c2ff: Merge branch 'davinci-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci (2010-10-25 10:59:31 -0700) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-mce-2.6.git hwpoison Andi Kleen (14): Clean up __page_set_anon_rmap hugepage: move is_hugepage_on_freelist inside ifdef to avoid warning Encode huge page size for VM_FAULT_HWPOISON errors x86: HWPOISON: Report correct address granuality for huge hwpoison faults HWPOISON: Improve comments in memory-failure.c HWPOISON: Convert pr_debugs to pr_info HWPOISON: Disable DEBUG by default HWPOISON: Turn addr_valid from bitfield into char HWPOISON: Remove retry loop for try_to_unmap Fix migration.c compilation on s390 Add _addr_lsb field to ia64 siginfo Merge branch 'hwpoison-fixes-2.6.37' into hwpoison Merge branch 'hwpoison-cleanups' into hwpoison Merge branch 'hwpoison-hugepages' into hwpoison Hidetoshi Seto (1): HWPOISON/signalfd: add support for addr_lsb Naoya Horiguchi (10): hugetlb: fix metadata corruption in hugetlb_fault() hugetlb: add allocate function for hugepage migration hugetlb: redefine hugepage copy functions hugetlb: hugepage migration core HWPOISON, hugetlb: add free check to dequeue_hwpoison_huge_page() hugetlb: move refcounting in hugepage allocation inside hugetlb_lock HWPOSION, hugetlb: recover from free hugepage error when !MF_COUNT_INCREASED HWPOISON, hugetlb: soft offlining for hugepage HWPOISON, hugetlb: fix unpoison for hugepage Fix build error with !CONFIG_MIGRATION arch/ia64/include/asm/siginfo.h | 1 + arch/x86/mm/fault.c | 19 ++- fs/hugetlbfs/inode.c | 15 +++ fs/signalfd.c | 10 ++ include/linux/hugetlb.h | 17 +++- include/linux/migrate.h | 16 +++ include/linux/mm.h | 12 ++- include/linux/signalfd.h | 3 +- mm/hugetlb.c | 233 +++++++++++++++++++++++++++------------ mm/memory-failure.c | 175 +++++++++++++++++++++-------- mm/memory.c | 3 +- mm/migrate.c | 234 ++++++++++++++++++++++++++++++++++++--- mm/rmap.c | 25 ++--- 13 files changed, 596 insertions(+), 167 deletions(-) -- ak@xxxxxxxxxxxxxxx -- Speaking for myself only. -- 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>