diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2015-02-10 19:45:56 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-02-10 19:45:56 -0500 |
commit | 992de5a8eca7cbd3215e3eb2c439b2c11582a58b (patch) | |
tree | 863988f84c1dd57a02fa337ecbce49263a3b9511 /arch/ia64 | |
parent | b2718bffb4088faf13092db30c1ebf088ddee52e (diff) | |
parent | d5b3cf7139b8770af4ed8bb36a1ab9d290ac39e9 (diff) |
Merge branch 'akpm' (patches from Andrew)
Merge misc updates from Andrew Morton:
"Bite-sized chunks this time, to avoid the MTA ratelimiting woes.
- fs/notify updates
- ocfs2
- some of MM"
That laconic "some MM" is mainly the removal of remap_file_pages(),
which is a big simplification of the VM, and which gets rid of a *lot*
of random cruft and special cases because we no longer support the
non-linear mappings that it used.
From a user interface perspective, nothing has changed, because the
remap_file_pages() syscall still exists, it's just done by emulating the
old behavior by creating a lot of individual small mappings instead of
one non-linear one.
The emulation is slower than the old "native" non-linear mappings, but
nobody really uses or cares about remap_file_pages(), and simplifying
the VM is a big advantage.
* emailed patches from Andrew Morton <akpm@linux-foundation.org>: (78 commits)
memcg: zap memcg_slab_caches and memcg_slab_mutex
memcg: zap memcg_name argument of memcg_create_kmem_cache
memcg: zap __memcg_{charge,uncharge}_slab
mm/page_alloc.c: place zone_id check before VM_BUG_ON_PAGE check
mm: hugetlb: fix type of hugetlb_treat_as_movable variable
mm, hugetlb: remove unnecessary lower bound on sysctl handlers"?
mm: memory: merge shared-writable dirtying branches in do_wp_page()
mm: memory: remove ->vm_file check on shared writable vmas
xtensa: drop _PAGE_FILE and pte_file()-related helpers
x86: drop _PAGE_FILE and pte_file()-related helpers
unicore32: drop pte_file()-related helpers
um: drop _PAGE_FILE and pte_file()-related helpers
tile: drop pte_file()-related helpers
sparc: drop pte_file()-related helpers
sh: drop _PAGE_FILE and pte_file()-related helpers
score: drop _PAGE_FILE and pte_file()-related helpers
s390: drop pte_file()-related helpers
parisc: drop _PAGE_FILE and pte_file()-related helpers
openrisc: drop _PAGE_FILE and pte_file()-related helpers
nios2: drop _PAGE_FILE and pte_file()-related helpers
...
Diffstat (limited to 'arch/ia64')
-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.. |