--- v3
+++ v2
@@ -9,42 +9,30 @@
clear_page it should to define ARCH_HAS_USER_NOCACHE to 1 and implement
clear_page_nocache() and clear_user_highpage_nocache().
-v3:
- - Rebased to current Linus' tree. kmap_atomic() build issue is fixed;
- - Pass fault address to clear_huge_page(). v2 had problem with clearing
- for sizes other than HPAGE_SIZE
- - x86: fix 32bit variant. Fallback version of clear_page_nocache() has
- been added for non-SSE2 systems;
- - x86: clear_page_nocache() moved to clear_page_{32,64}.S;
- - x86: use pushq_cfi/popq_cfi instead of push/pop;
v2:
- No code change. Only commit messages are updated.
- RFC mark is dropped.
-Andi Kleen (5):
+Andi Kleen (6):
THP: Use real address for NUMA policy
- THP: Pass fault address to __do_huge_pmd_anonymous_page()
+ mm: make clear_huge_page tolerate non aligned address
+ THP: Pass real, not rounded, address to clear_huge_page
x86: Add clear_page_nocache
mm: make clear_huge_page cache clear only around the fault address
x86: switch the 64bit uncached page clear to SSE/AVX v2
-Kirill A. Shutemov (2):
- hugetlb: pass fault address to hugetlb_no_page()
- mm: pass fault address to clear_huge_page()
-
- arch/x86/include/asm/page.h | 2 +
- arch/x86/include/asm/string_32.h | 5 ++
- arch/x86/include/asm/string_64.h | 5 ++
- arch/x86/lib/Makefile | 3 +-
- arch/x86/lib/clear_page_32.S | 72 +++++++++++++++++++++++++++++++++++
- arch/x86/lib/clear_page_64.S | 78 ++++++++++++++++++++++++++++++++++++++
- arch/x86/mm/fault.c | 7 +++
- include/linux/mm.h | 2 +-
- mm/huge_memory.c | 17 ++++----
- mm/hugetlb.c | 39 ++++++++++---------
- mm/memory.c | 37 +++++++++++++++---
- 11 files changed, 232 insertions(+), 35 deletions(-)
- create mode 100644 arch/x86/lib/clear_page_32.S
+ arch/x86/include/asm/page.h | 2 +
+ arch/x86/include/asm/string_32.h | 5 ++
+ arch/x86/include/asm/string_64.h | 5 ++
+ arch/x86/lib/Makefile | 1 +
+ arch/x86/lib/clear_page_nocache_32.S | 30 +++++++++++
+ arch/x86/lib/clear_page_nocache_64.S | 92 ++++++++++++++++++++++++++++++++++
+ arch/x86/mm/fault.c | 7 +++
+ mm/huge_memory.c | 17 +++---
+ mm/memory.c | 29 ++++++++++-
+ 9 files changed, 178 insertions(+), 10 deletions(-)
+ create mode 100644 arch/x86/lib/clear_page_nocache_32.S
+ create mode 100644 arch/x86/lib/clear_page_nocache_64.S
--
1.7.7.6