Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1642350 > unrolled thread
| Started by | "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com> |
|---|---|
| First post | 2017-05-16 11:30 +0200 |
| Last post | 2017-05-16 11:30 +0200 |
| Articles | 3 — 1 participant |
Back to article view | Back to linux.kernel
[PATCH v2 0/9] HugeTLB migration support for PPC64 "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com> - 2017-05-16 11:30 +0200
[PATCH v2 9/9] powerpc/hugetlb: Enable hugetlb migration for ppc64 "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com> - 2017-05-16 11:30 +0200
[PATCH v2 3/9] mm/hugetlb: export hugetlb_entry_migration helper "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com> - 2017-05-16 11:30 +0200
| From | "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com> |
|---|---|
| Date | 2017-05-16 11:30 +0200 |
| Subject | [PATCH v2 0/9] HugeTLB migration support for PPC64 |
| Message-ID | <tHGXM-3Nc-3@gated-at.bofh.it> |
HugeTLB migration support for PPC64 Changes from V1: * Added Reviewed-by: * Drop follow_huge_addr from powerpc Aneesh Kumar K.V (8): mm/hugetlb/migration: Use set_huge_pte_at instead of set_pte_at mm/follow_page_mask: Split follow_page_mask to smaller functions. mm/hugetlb: export hugetlb_entry_migration helper mm/hugetlb: Move default definition of hugepd_t earlier in the header mm/follow_page_mask: Add support for hugepage directory entry powerpc/hugetlb: Add follow_huge_pd implementation for ppc64. powerpc/mm/hugetlb: Remove follow_huge_addr for powerpc powerpc/hugetlb: Enable hugetlb migration for ppc64 Anshuman Khandual (1): mm/follow_page_mask: Add support for hugetlb pgd entries. arch/powerpc/mm/hugetlbpage.c | 81 ++++++-------- arch/powerpc/platforms/Kconfig.cputype | 5 + include/linux/hugetlb.h | 56 ++++++---- mm/gup.c | 186 +++++++++++++++++++++++---------- mm/hugetlb.c | 25 ++++- mm/migrate.c | 21 ++-- 6 files changed, 230 insertions(+), 144 deletions(-) -- 2.7.4
[toc] | [next] | [standalone]
| From | "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com> |
|---|---|
| Date | 2017-05-16 11:30 +0200 |
| Subject | [PATCH v2 9/9] powerpc/hugetlb: Enable hugetlb migration for ppc64 |
| Message-ID | <tHGXN-3Nc-47@gated-at.bofh.it> |
| In reply to | #1642350 |
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> --- arch/powerpc/platforms/Kconfig.cputype | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/arch/powerpc/platforms/Kconfig.cputype b/arch/powerpc/platforms/Kconfig.cputype index 80175000042d..8acc4f27d101 100644 --- a/arch/powerpc/platforms/Kconfig.cputype +++ b/arch/powerpc/platforms/Kconfig.cputype @@ -351,6 +351,11 @@ config PPC_RADIX_MMU is only implemented by IBM Power9 CPUs, if you don't have one of them you can probably disable this. +config ARCH_ENABLE_HUGEPAGE_MIGRATION + def_bool y + depends on PPC_BOOK3S_64 && HUGETLB_PAGE && MIGRATION + + config PPC_MMU_NOHASH def_bool y depends on !PPC_STD_MMU -- 2.7.4
[toc] | [prev] | [next] | [standalone]
| From | "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com> |
|---|---|
| Date | 2017-05-16 11:30 +0200 |
| Subject | [PATCH v2 3/9] mm/hugetlb: export hugetlb_entry_migration helper |
| Message-ID | <tHGXN-3Nc-41@gated-at.bofh.it> |
| In reply to | #1642350 |
We will be using this later from the ppc64 code. Change the return type to bool.
Reviewed-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
---
include/linux/hugetlb.h | 1 +
mm/hugetlb.c | 8 ++++----
2 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/include/linux/hugetlb.h b/include/linux/hugetlb.h
index b857fc8cc2ec..fddf6cf403d5 100644
--- a/include/linux/hugetlb.h
+++ b/include/linux/hugetlb.h
@@ -126,6 +126,7 @@ int pud_huge(pud_t pud);
unsigned long hugetlb_change_protection(struct vm_area_struct *vma,
unsigned long address, unsigned long end, pgprot_t newprot);
+bool is_hugetlb_entry_migration(pte_t pte);
#else /* !CONFIG_HUGETLB_PAGE */
static inline void reset_vma_resv_huge_pages(struct vm_area_struct *vma)
diff --git a/mm/hugetlb.c b/mm/hugetlb.c
index ce090186b992..25e2ee888a90 100644
--- a/mm/hugetlb.c
+++ b/mm/hugetlb.c
@@ -3182,17 +3182,17 @@ static void set_huge_ptep_writable(struct vm_area_struct *vma,
update_mmu_cache(vma, address, ptep);
}
-static int is_hugetlb_entry_migration(pte_t pte)
+bool is_hugetlb_entry_migration(pte_t pte)
{
swp_entry_t swp;
if (huge_pte_none(pte) || pte_present(pte))
- return 0;
+ return false;
swp = pte_to_swp_entry(pte);
if (non_swap_entry(swp) && is_migration_entry(swp))
- return 1;
+ return true;
else
- return 0;
+ return false;
}
static int is_hugetlb_entry_hwpoisoned(pte_t pte)
--
2.7.4
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web