linux-arch.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
diff for duplicates of <1522234731-27397-4-git-send-email-cpandya@codeaurora.org>

diff --git a/a/1.txt b/N1/1.txt
index a2ad9be..6907fc8 100644
--- a/a/1.txt
+++ b/N1/1.txt
@@ -8,63 +8,3 @@ Implementation requires,
 
 Signed-off-by: Chintan Pandya <cpandya@codeaurora.org>
 ---
-From V5->V6:
- - Removed extra bool parameter 'tlb_inv'
- - Doing pmd/pud TLB invalidation with __flush_tlb_kernel_pgtable()
-
- arch/arm64/mm/mmu.c | 29 +++++++++++++++++++++++++----
- 1 file changed, 25 insertions(+), 4 deletions(-)
-
-diff --git a/arch/arm64/mm/mmu.c b/arch/arm64/mm/mmu.c
-index da98828..0f651db 100644
---- a/arch/arm64/mm/mmu.c
-+++ b/arch/arm64/mm/mmu.c
-@@ -45,6 +45,7 @@
- #include <asm/memblock.h>
- #include <asm/mmu_context.h>
- #include <asm/ptdump.h>
-+#include <asm/tlbflush.h>
- 
- #define NO_BLOCK_MAPPINGS	BIT(0)
- #define NO_CONT_MAPPINGS	BIT(1)
-@@ -973,12 +974,32 @@ int pmd_clear_huge(pmd_t *pmdp)
- 	return 1;
- }
- 
--int pud_free_pmd_page(pud_t *pud, unsigned long addr)
-+int pmd_free_pte_page(pmd_t *pmdp, unsigned long addr)
- {
--	return pud_none(*pud);
-+	pmd_t *table;
-+
-+	if (pmd_present(READ_ONCE(*pmdp))) {
-+		table = __va(pmd_val(*pmdp));
-+		pmd_clear(pmdp);
-+		__flush_tlb_kernel_pgtable(addr);
-+		free_page((unsigned long) table);
-+	}
-+	return 1;
- }
- 
--int pmd_free_pte_page(pmd_t *pmd, unsigned long addr)
-+int pud_free_pmd_page(pud_t *pudp, unsigned long addr)
- {
--	return pmd_none(*pmd);
-+	pmd_t *table;
-+	int i;
-+
-+	if (pud_present(READ_ONCE(*pudp))) {
-+		table = __va(pud_val(*pudp));
-+		for (i = 0; i < PTRS_PER_PMD; i++)
-+			pmd_free_pte_page(&table[i], addr + (i * PMD_SIZE));
-+
-+		pud_clear(pudp);
-+		__flush_tlb_kernel_pgtable(addr);
-+		free_page((unsigned long) table);
-+	}
-+	return 1;
- }
--- 
-Qualcomm India Private Limited, on behalf of Qualcomm Innovation
-Center, Inc., is a member of Code Aurora Forum, a Linux Foundation
-Collaborative Project
diff --git a/a/content_digest b/N1/content_digest
index d794d47..4e148c9 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -30,66 +30,6 @@
  " 3) Freeing of the un-used next level page tables\n"
  "\n"
  "Signed-off-by: Chintan Pandya <cpandya@codeaurora.org>\n"
- "---\n"
- "From V5->V6:\n"
- " - Removed extra bool parameter 'tlb_inv'\n"
- " - Doing pmd/pud TLB invalidation with __flush_tlb_kernel_pgtable()\n"
- "\n"
- " arch/arm64/mm/mmu.c | 29 +++++++++++++++++++++++++----\n"
- " 1 file changed, 25 insertions(+), 4 deletions(-)\n"
- "\n"
- "diff --git a/arch/arm64/mm/mmu.c b/arch/arm64/mm/mmu.c\n"
- "index da98828..0f651db 100644\n"
- "--- a/arch/arm64/mm/mmu.c\n"
- "+++ b/arch/arm64/mm/mmu.c\n"
- "@@ -45,6 +45,7 @@\n"
- " #include <asm/memblock.h>\n"
- " #include <asm/mmu_context.h>\n"
- " #include <asm/ptdump.h>\n"
- "+#include <asm/tlbflush.h>\n"
- " \n"
- " #define NO_BLOCK_MAPPINGS\tBIT(0)\n"
- " #define NO_CONT_MAPPINGS\tBIT(1)\n"
- "@@ -973,12 +974,32 @@ int pmd_clear_huge(pmd_t *pmdp)\n"
- " \treturn 1;\n"
- " }\n"
- " \n"
- "-int pud_free_pmd_page(pud_t *pud, unsigned long addr)\n"
- "+int pmd_free_pte_page(pmd_t *pmdp, unsigned long addr)\n"
- " {\n"
- "-\treturn pud_none(*pud);\n"
- "+\tpmd_t *table;\n"
- "+\n"
- "+\tif (pmd_present(READ_ONCE(*pmdp))) {\n"
- "+\t\ttable = __va(pmd_val(*pmdp));\n"
- "+\t\tpmd_clear(pmdp);\n"
- "+\t\t__flush_tlb_kernel_pgtable(addr);\n"
- "+\t\tfree_page((unsigned long) table);\n"
- "+\t}\n"
- "+\treturn 1;\n"
- " }\n"
- " \n"
- "-int pmd_free_pte_page(pmd_t *pmd, unsigned long addr)\n"
- "+int pud_free_pmd_page(pud_t *pudp, unsigned long addr)\n"
- " {\n"
- "-\treturn pmd_none(*pmd);\n"
- "+\tpmd_t *table;\n"
- "+\tint i;\n"
- "+\n"
- "+\tif (pud_present(READ_ONCE(*pudp))) {\n"
- "+\t\ttable = __va(pud_val(*pudp));\n"
- "+\t\tfor (i = 0; i < PTRS_PER_PMD; i++)\n"
- "+\t\t\tpmd_free_pte_page(&table[i], addr + (i * PMD_SIZE));\n"
- "+\n"
- "+\t\tpud_clear(pudp);\n"
- "+\t\t__flush_tlb_kernel_pgtable(addr);\n"
- "+\t\tfree_page((unsigned long) table);\n"
- "+\t}\n"
- "+\treturn 1;\n"
- " }\n"
- "-- \n"
- "Qualcomm India Private Limited, on behalf of Qualcomm Innovation\n"
- "Center, Inc., is a member of Code Aurora Forum, a Linux Foundation\n"
- Collaborative Project
+ ---
 
-f792c91d6354049231e1dfdef8aec795903563685032189acaccce0312a84b40
+9a112c76b967110d615d19e10910b97f8e2c8044d4f16773914cbb95e4ea5e60

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).