diff for duplicates of <20200526173302.377-4-will@kernel.org> diff --git a/a/1.txt b/N1/1.txt index ae61728..b4fa60a 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -19,13 +19,13 @@ index 589370a21b12..116d19a390f2 100644 --- a/arch/sparc/mm/srmmu.c +++ b/arch/sparc/mm/srmmu.c @@ -364,9 +364,13 @@ pgtable_t pte_alloc_one(struct mm_struct *mm) - if ((ptep = pte_alloc_one_kernel(mm)) = 0) + if ((ptep = pte_alloc_one_kernel(mm)) == 0) return NULL; page = pfn_to_page(__nocache_pa((unsigned long)ptep) >> PAGE_SHIFT); - if (!pgtable_pte_page_ctor(page)) { - return NULL; + spin_lock(&mm->page_table_lock); -+ if (page_ref_inc_return(page) = 2 && !pgtable_pte_page_ctor(page)) { ++ if (page_ref_inc_return(page) == 2 && !pgtable_pte_page_ctor(page)) { + page_ref_dec(page); + ptep = NULL; } @@ -40,7 +40,7 @@ index 589370a21b12..116d19a390f2 100644 page = pfn_to_page(__nocache_pa((unsigned long)ptep) >> PAGE_SHIFT); - pgtable_pte_page_dtor(page); + spin_lock(&mm->page_table_lock); -+ if (page_ref_dec_return(page) = 1) ++ if (page_ref_dec_return(page) == 1) + pgtable_pte_page_dtor(page); + spin_unlock(&mm->page_table_lock); + diff --git a/a/content_digest b/N1/content_digest index 2328aae..e13b3f3 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -1,7 +1,7 @@ "ref\020200526173302.377-1-will@kernel.org\0" "From\0Will Deacon <will@kernel.org>\0" "Subject\0[PATCH 3/3] sparc32: mm: Only call ctor()/dtor() functions for first and last user\0" - "Date\0Tue, 26 May 2020 17:33:02 +0000\0" + "Date\0Tue, 26 May 2020 18:33:02 +0100\0" "To\0linux-kernel@vger.kernel.org\0" "Cc\0sparclinux@vger.kernel.org" Will Deacon <will@kernel.org> @@ -33,13 +33,13 @@ "--- a/arch/sparc/mm/srmmu.c\n" "+++ b/arch/sparc/mm/srmmu.c\n" "@@ -364,9 +364,13 @@ pgtable_t pte_alloc_one(struct mm_struct *mm)\n" - " \tif ((ptep = pte_alloc_one_kernel(mm)) = 0)\n" + " \tif ((ptep = pte_alloc_one_kernel(mm)) == 0)\n" " \t\treturn NULL;\n" " \tpage = pfn_to_page(__nocache_pa((unsigned long)ptep) >> PAGE_SHIFT);\n" "-\tif (!pgtable_pte_page_ctor(page)) {\n" "-\t\treturn NULL;\n" "+\tspin_lock(&mm->page_table_lock);\n" - "+\tif (page_ref_inc_return(page) = 2 && !pgtable_pte_page_ctor(page)) {\n" + "+\tif (page_ref_inc_return(page) == 2 && !pgtable_pte_page_ctor(page)) {\n" "+\t\tpage_ref_dec(page);\n" "+\t\tptep = NULL;\n" " \t}\n" @@ -54,7 +54,7 @@ " \tpage = pfn_to_page(__nocache_pa((unsigned long)ptep) >> PAGE_SHIFT);\n" "-\tpgtable_pte_page_dtor(page);\n" "+\tspin_lock(&mm->page_table_lock);\n" - "+\tif (page_ref_dec_return(page) = 1)\n" + "+\tif (page_ref_dec_return(page) == 1)\n" "+\t\tpgtable_pte_page_dtor(page);\n" "+\tspin_unlock(&mm->page_table_lock);\n" "+\n" @@ -64,4 +64,4 @@ "-- \n" 2.27.0.rc0.183.gde8f92d652-goog -06b3644759d6682828347e5e64e47d33bce52b2452dd5cadf5c24089f317b96e +6114c3f840e36591be01b7603ad87c8080160ae83a51ba83d770bea54fe55c83
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.