We've replaced remap_file_pages(2) implementation with emulation.
Nobody creates non-linear mapping anymore.

This patch also increase number of bits availble for swap offset.

Signed-off-by: Kirill A. Shutemov <kirill.shute...@linux.intel.com>
Cc: David Howells <dhowe...@redhat.com>
Cc: Koichi Yasutake <yasutake.koi...@jp.panasonic.com>
---
 arch/mn10300/include/asm/pgtable.h | 17 +++--------------
 1 file changed, 3 insertions(+), 14 deletions(-)

diff --git a/arch/mn10300/include/asm/pgtable.h 
b/arch/mn10300/include/asm/pgtable.h
index 2ddaa67e7983..629181ae111e 100644
--- a/arch/mn10300/include/asm/pgtable.h
+++ b/arch/mn10300/include/asm/pgtable.h
@@ -134,7 +134,6 @@ extern pte_t kernel_vmalloc_ptes[(VMALLOC_END - 
VMALLOC_START) / PAGE_SIZE];
 #define _PAGE_NX               0                       /* no-execute bit */
 
 /* If _PAGE_VALID is clear, we use these: */
-#define _PAGE_FILE             xPTEL2_C        /* set:pagecache unset:swap */
 #define _PAGE_PROTNONE         0x000           /* If not present */
 
 #define __PAGE_PROT_UWAUX      0x010
@@ -241,11 +240,6 @@ static inline int pte_young(pte_t pte)     { return 
pte_val(pte) & _PAGE_ACCESSED; }
 static inline int pte_write(pte_t pte) { return pte_val(pte) & 
__PAGE_PROT_WRITE; }
 static inline int pte_special(pte_t pte){ return 0; }
 
-/*
- * The following only works if pte_present() is not true.
- */
-static inline int pte_file(pte_t pte)  { return pte_val(pte) & _PAGE_FILE; }
-
 static inline pte_t pte_rdprotect(pte_t pte)
 {
        pte_val(pte) &= ~(__PAGE_PROT_USER|__PAGE_PROT_UWAUX); return pte;
@@ -338,16 +332,11 @@ static inline int pte_exec_kernel(pte_t pte)
        return 1;
 }
 
-#define PTE_FILE_MAX_BITS      30
-
-#define pte_to_pgoff(pte)      (pte_val(pte) >> 2)
-#define pgoff_to_pte(off)      __pte((off) << 2 | _PAGE_FILE)
-
 /* Encode and de-code a swap entry */
-#define __swp_type(x)                  (((x).val >> 2) & 0x3f)
-#define __swp_offset(x)                        ((x).val >> 8)
+#define __swp_type(x)                  (((x).val >> 1) & 0x3f)
+#define __swp_offset(x)                        ((x).val >> 7)
 #define __swp_entry(type, offset) \
-       ((swp_entry_t) { ((type) << 2) | ((offset) << 8) })
+       ((swp_entry_t) { ((type) << 1) | ((offset) << 7) })
 #define __pte_to_swp_entry(pte)                ((swp_entry_t) { pte_val(pte) })
 #define __swp_entry_to_pte(x)          __pte((x).val)
 
-- 
2.1.3

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to