diff options
author | Kirill A. Shutemov <kirill.shutemov@linux.intel.com> | 2015-02-10 17:10:36 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-02-10 17:30:32 -0500 |
commit | 636a002b704e0a36cefb5f4cf0293fab858fc46c (patch) | |
tree | b751b2cc7b07c9998bde925945d7817e49a6f176 | |
parent | d99f95e6522db22192c331c75de182023a49fbcc (diff) |
ia64: drop _PAGE_FILE and pte_file()-related helpers
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.shutemov@linux.intel.com>
Cc: Tony Luck <tony.luck@intel.com>
Cc: Fenghua Yu <fenghua.yu@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r-- | arch/ia64/include/asm/pgtable.h | 25 |
1 files changed, 5 insertions, 20 deletions
diff --git a/arch/ia64/include/asm/pgtable.h b/arch/ia64/include/asm/pgtable.h index 7935115398a6..2f07bb3dda91 100644 --- a/arch/ia64/include/asm/pgtable.h +++ b/arch/ia64/include/asm/pgtable.h | |||
@@ -57,9 +57,6 @@ | |||
57 | #define _PAGE_ED (__IA64_UL(1) << 52) /* exception deferral */ | 57 | #define _PAGE_ED (__IA64_UL(1) << 52) /* exception deferral */ |
58 | #define _PAGE_PROTNONE (__IA64_UL(1) << 63) | 58 | #define _PAGE_PROTNONE (__IA64_UL(1) << 63) |
59 | 59 | ||
60 | /* Valid only for a PTE with the present bit cleared: */ | ||
61 | #define _PAGE_FILE (1 << 1) /* see swap & file pte remarks below */ | ||
62 | |||
63 | #define _PFN_MASK _PAGE_PPN_MASK | 60 | #define _PFN_MASK _PAGE_PPN_MASK |
64 | /* Mask of bits which may be changed by pte_modify(); the odd bits are there for _PAGE_PROTNONE */ | 61 | /* Mask of bits which may be changed by pte_modify(); the odd bits are there for _PAGE_PROTNONE */ |
65 | #define _PAGE_CHG_MASK (_PAGE_P | _PAGE_PROTNONE | _PAGE_PL_MASK | _PAGE_AR_MASK | _PAGE_ED) | 62 | #define _PAGE_CHG_MASK (_PAGE_P | _PAGE_PROTNONE | _PAGE_PL_MASK | _PAGE_AR_MASK | _PAGE_ED) |
@@ -300,7 +297,6 @@ extern unsigned long VMALLOC_END; | |||
300 | #define pte_exec(pte) ((pte_val(pte) & _PAGE_AR_RX) != 0) | 297 | #define pte_exec(pte) ((pte_val(pte) & _PAGE_AR_RX) != 0) |
301 | #define pte_dirty(pte) ((pte_val(pte) & _PAGE_D) != 0) | 298 | #define pte_dirty(pte) ((pte_val(pte) & _PAGE_D) != 0) |
302 | #define pte_young(pte) ((pte_val(pte) & _PAGE_A) != 0) | 299 | #define pte_young(pte) ((pte_val(pte) & _PAGE_A) != 0) |
303 | #define pte_file(pte) ((pte_val(pte) & _PAGE_FILE) != 0) | ||
304 | #define pte_special(pte) 0 | 300 | #define pte_special(pte) 0 |
305 | 301 | ||
306 | /* | 302 | /* |
@@ -472,27 +468,16 @@ extern void paging_init (void); | |||
472 | * | 468 | * |
473 | * Format of swap pte: | 469 | * Format of swap pte: |
474 | * bit 0 : present bit (must be zero) | 470 | * bit 0 : present bit (must be zero) |
475 | * bit 1 : _PAGE_FILE (must be zero) | 471 | * bits 1- 7: swap-type |
476 | * bits 2- 8: swap-type | 472 | * bits 8-62: swap offset |
477 | * bits 9-62: swap offset | ||
478 | * bit 63 : _PAGE_PROTNONE bit | ||
479 | * | ||
480 | * Format of file pte: | ||
481 | * bit 0 : present bit (must be zero) | ||
482 | * bit 1 : _PAGE_FILE (must be one) | ||
483 | * bits 2-62: file_offset/PAGE_SIZE | ||
484 | * bit 63 : _PAGE_PROTNONE bit | 473 | * bit 63 : _PAGE_PROTNONE bit |
485 | */ | 474 | */ |
486 | #define __swp_type(entry) (((entry).val >> 2) & 0x7f) | 475 | #define __swp_type(entry) (((entry).val >> 1) & 0x7f) |
487 | #define __swp_offset(entry) (((entry).val << 1) >> 10) | 476 | #define __swp_offset(entry) (((entry).val << 1) >> 9) |
488 | #define __swp_entry(type,offset) ((swp_entry_t) { ((type) << 2) | ((long) (offset) << 9) }) | 477 | #define __swp_entry(type,offset) ((swp_entry_t) { ((type) << 1) | ((long) (offset) << 8) }) |
489 | #define __pte_to_swp_entry(pte) ((swp_entry_t) { pte_val(pte) }) | 478 | #define __pte_to_swp_entry(pte) ((swp_entry_t) { pte_val(pte) }) |
490 | #define __swp_entry_to_pte(x) ((pte_t) { (x).val }) | 479 | #define __swp_entry_to_pte(x) ((pte_t) { (x).val }) |
491 | 480 | ||
492 | #define PTE_FILE_MAX_BITS 61 | ||
493 | #define pte_to_pgoff(pte) ((pte_val(pte) << 1) >> 3) | ||
494 | #define pgoff_to_pte(off) ((pte_t) { ((off) << 2) | _PAGE_FILE }) | ||
495 | |||
496 | /* | 481 | /* |
497 | * ZERO_PAGE is a global shared page that is always zero: used | 482 | * ZERO_PAGE is a global shared page that is always zero: used |
498 | * for zero-mapped memory areas etc.. | 483 | * for zero-mapped memory areas etc.. |