On Sat, 2008-02-09 at 11:21 +0100, Martin Schwidefsky wrote:
This is a problem for all nommu architectures. The patch fixed all four
of them.
--
blue skies,
Martin.
"Reality continues to ruin my life." - Calvin.
---
[PATCH] Add pgtable_t to nommu architectures.
From: Martin Schwidefsky <schwidefsky@de.ibm.com>
The pte_fn_t in include/linux/mm.h make it necessary for all
architecture to define a pgtable_t type, even those that do
not have an mmu.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
---
include/asm-blackfin/page.h | 1 +
include/asm-h8300/page.h | 1 +
include/asm-m68knommu/page.h | 1 +
include/asm-v850/page.h | 1 +
4 files changed, 4 insertions(+)
diff -urpN linux-2.6/include/asm-blackfin/page.h linux-2.6-patched/include/asm-blackfin/page.h
--- linux-2.6/include/asm-blackfin/page.h 2008-02-09 11:46:28.000000000 +0100
+++ linux-2.6-patched/include/asm-blackfin/page.h 2008-02-09 11:46:36.000000000 +0100
@@ -39,6 +39,7 @@ typedef struct {
typedef struct {
unsigned long pgprot;
} pgprot_t;
+typedef struct page *pgtable_t;
#define pte_val(x) ((x).pte)
#define pmd_val(x) ((&x)->pmd[0])
diff -urpN linux-2.6/include/asm-h8300/page.h linux-2.6-patched/include/asm-h8300/page.h
--- linux-2.6/include/asm-h8300/page.h 2008-02-09 11:46:28.000000000 +0100
+++ linux-2.6-patched/include/asm-h8300/page.h 2008-02-09 11:46:36.000000000 +0100
@@ -31,6 +31,7 @@ typedef struct { unsigned long pte; } pt
typedef struct { unsigned long pmd[16]; } pmd_t;
typedef struct { unsigned long pgd; } pgd_t;
typedef struct { unsigned long pgprot; } pgprot_t;
+typedef struct page *pgtable_t;
#define pte_val(x) ((x).pte)
#define pmd_val(x) ((&x)->pmd[0])
diff -urpN linux-2.6/include/asm-m68knommu/page.h linux-2.6-patched/include/asm-m68knommu/page.h
--- linux-2.6/include/asm-m68knommu/page.h 2008-02-09 11:46:28.000000000 +0100
+++ linux-2.6-patched/include/asm-m68knommu/page.h 2008-02-09 11:46:36.000000000 +0100
@@ -31,6 +31,7 @@ typedef struct { unsigned long pte; } pt
typedef struct { unsigned long pmd[16]; } pmd_t;
typedef struct { unsigned long pgd; } pgd_t;
typedef struct { unsigned long pgprot; } pgprot_t;
+typedef struct page *pgtable_t;
#define pte_val(x) ((x).pte)
#define pmd_val(x) ((&x)->pmd[0])
diff -urpN linux-2.6/include/asm-v850/page.h linux-2.6-patched/include/asm-v850/page.h
--- linux-2.6/include/asm-v850/page.h 2008-02-09 11:46:29.000000000 +0100
+++ linux-2.6-patched/include/asm-v850/page.h 2008-02-09 11:46:36.000000000 +0100
@@ -57,6 +57,7 @@ typedef struct { unsigned long pte; } pt
typedef struct { unsigned long pmd; } pmd_t;
typedef struct { unsigned long pgd; } pgd_t;
typedef struct { unsigned long pgprot; } pgprot_t;
+typedef struct page *pgtable_t;
#define pte_val(x) ((x).pte)
#define pmd_val(x) ((x).pmd)
--