aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/coldfire/patches/057-mcfv4e_add_mm_args.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/coldfire/patches/057-mcfv4e_add_mm_args.patch')
-rw-r--r--target/linux/coldfire/patches/057-mcfv4e_add_mm_args.patch55
1 files changed, 55 insertions, 0 deletions
diff --git a/target/linux/coldfire/patches/057-mcfv4e_add_mm_args.patch b/target/linux/coldfire/patches/057-mcfv4e_add_mm_args.patch
new file mode 100644
index 0000000000..483f030d95
--- /dev/null
+++ b/target/linux/coldfire/patches/057-mcfv4e_add_mm_args.patch
@@ -0,0 +1,55 @@
+From a2360b8ebb8b2b0d55f8aea3fdce51bce9b57b10 Mon Sep 17 00:00:00 2001
+From: Kurt Mahan <kmahan@freescale.com>
+Date: Thu, 15 May 2008 15:48:59 -0600
+Subject: [PATCH] Add mm arg to pte/pmd/pud/pgd_free and add pmd_pgtable macro.
+
+Add mm argument to pte/pmd/pud/pgd_free as per commit
+5e5419734c8719cbc01af959ad9c0844002c0df5.
+
+LTIBName: mcfv4e-add-mm-args
+Signed-off-by: Kurt Mahan <kmahan@freescale.com>
+---
+ include/asm-m68k/cf_pgalloc.h | 10 ++++++----
+ 1 files changed, 6 insertions(+), 4 deletions(-)
+
+--- a/include/asm-m68k/cf_pgalloc.h
++++ b/include/asm-m68k/cf_pgalloc.h
+@@ -6,7 +6,7 @@
+ #include <asm/cf_tlbflush.h>
+ #include <asm/cf_cacheflush.h>
+
+-extern inline void pte_free_kernel(pte_t *pte)
++extern inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte)
+ {
+ free_page((unsigned long) pte);
+ }
+@@ -40,6 +40,8 @@ extern inline pmd_t *pmd_alloc_kernel(pg
+
+ #define pmd_populate_kernel(mm, pmd, pte) (pmd_val(*pmd) = (unsigned long)(pte))
+
++#define pmd_pgtable(pmd) pmd_page(pmd)
++
+ static inline void __pte_free_tlb(struct mmu_gather *tlb, struct page *page)
+ {
+ __free_page(page);
+@@ -68,7 +70,7 @@ static inline struct page *pte_alloc_one
+ return page;
+ }
+
+-extern inline void pte_free(struct page *page)
++extern inline void pte_free(struct mm_struct *mm, struct page *page)
+ {
+ __free_page(page);
+ }
+@@ -77,9 +79,9 @@ extern inline void pte_free(struct page
+ * In our implementation, each pgd entry contains 1 pmd that is never allocated
+ * or freed. pgd_present is always 1, so this should never be called. -NL
+ */
+-#define pmd_free(pmd) BUG()
++#define pmd_free(mm, pmd) BUG()
+
+-extern inline void pgd_free(pgd_t *pgd)
++extern inline void pgd_free(struct mm_struct *mm, pgd_t *pgd)
+ {
+ free_page((unsigned long) pgd);
+ }