linux/arch/powerpc/mm
Aneesh Kumar K.V c367a44133 powerpc/mm: add _PAGE_HASHPTE similar to 4K hash
We don't need to update linux page table entry with _PAGE_HASHPTE early
in hash pte fault. A parallel pte update will loop via _PAGE_BUSY
and look at _PAGE_HASHPTE for a required hpte flush only if
_PAGE_BUSY is cleared. That ensures a pte update will wait for a
parallel hpte insert to finish before looking at _PAGE_HASHPTE bit.

To avoid further confusion drop setting _PAGE_HASHPTE in cmpxchg in __hash_page_4K.

commit 41743a4e34 ("powerpc: Free a PTE bit on ppc64 with 64K pages")
did similar change for 64K config

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
2016-03-03 21:18:29 +11:00
..
40x_mmu.c powerpc/mm: Don't use pmd_val, pud_val and pgd_val as lvalue 2015-12-14 15:19:07 +11:00
44x_mmu.c powerpc: Delete __cpuinit usage from all users 2013-07-01 11:10:36 +10:00
Makefile powerpc/mm: Convert 4k insert from asm to C 2015-12-14 15:19:12 +11:00
copro_fault.c cxl: Move include file cxl.h -> cxl-base.h 2015-06-03 13:27:19 +10:00
dma-noncoherent.c powerpc: Fix compile errors with STRICT_MM_TYPECHECKS enabled 2015-04-10 20:02:47 +10:00
fault.c powerpc: Add plain English description for alignment exception oopses 2015-07-06 20:24:35 +10:00
fsl_booke_mmu.c powerpc/fsl-booke-64: Don't limit ppc64_rma_size to one TLB entry 2015-10-27 18:13:22 -05:00
hash64_4k.c powerpc/mm: add _PAGE_HASHPTE similar to 4K hash 2016-03-03 21:18:29 +11:00
hash64_64k.c powerp/mm: Update code comments 2016-03-03 21:18:29 +11:00
hash_low_32.S powerpc: Use CURRENT_THREAD_INFO instead of open coded assembly 2012-07-11 14:18:22 +10:00
hash_native_64.c powerpc/mm: Move THP headers around 2015-12-14 15:19:14 +11:00
hash_utils_64.c powerpc/mm: Split hash page table sizing heuristic into a helper 2016-03-02 09:06:16 +11:00
highmem.c sched/preempt, mm/kmap: Explicitly disable/enable preemption in kmap_atomic_* 2015-05-19 08:39:14 +02:00
hugepage-hash64.c powerpc/mm/hash: Clear the invalid slot information correctly 2016-02-22 19:27:39 +11:00
hugetlbpage-book3e.c powerpc/e6500: add locking to hugetlb 2015-12-22 18:23:22 -06:00
hugetlbpage-hash64.c powerpc/mm/book3s-64: Move HPTE-related bits in PTE to upper end 2016-02-29 20:34:39 +11:00
hugetlbpage.c powerpc/mm/book3s-64: Use physical addresses in upper page table tree levels 2016-02-29 20:34:34 +11:00
icswx.c powerpc: Fix typo "CONFIG_ICSWX_PID" 2013-04-18 13:03:54 +10:00
icswx.h powerpc/icswx: Fix race condition with IPI setting ACOP 2012-03-07 17:06:09 +11:00
icswx_pid.c powerpc: Split ICSWX ACOP and PID processing 2011-11-25 14:11:27 +11:00
init_32.c powerpc: Remove superfluous bootmem includes 2014-11-10 09:59:26 +11:00
init_64.c powerpc/mm: Switch book3s 64 with 64K page size to 4 level page table 2016-03-03 21:18:28 +11:00
mem.c powerpc/mm: Clean up memory hotplug failure paths 2016-03-01 22:04:18 +11:00
mmap.c mm: expose arch_mmap_rnd when available 2015-04-14 16:49:05 -07:00
mmu_context_hash32.c powerpc: Remove power3 from comments 2014-07-28 14:10:26 +10:00
mmu_context_hash64.c powerpc/mmu: Add userspace-to-physical addresses translation cache 2015-06-11 15:16:54 +10:00
mmu_context_iommu.c powerpc/mmu: Add userspace-to-physical addresses translation cache 2015-06-11 15:16:54 +10:00
mmu_context_nohash.c powerpc/8xx: reduce pressure on TLB due to context switches 2015-01-29 21:51:06 -06:00
mmu_decl.h powerpc/mm/book3s-64: Move _PAGE_PRESENT to the most significant bit 2016-02-29 20:34:39 +11:00
numa.c powerpc updates for 4.4 2015-11-05 23:38:43 -08:00
pgtable.c powerpc/mm: Add a _PAGE_PTE bit 2015-12-14 15:19:14 +11:00
pgtable_32.c powerpc: Replace mem_init_done with slab_is_available() 2015-04-10 20:02:48 +10:00
pgtable_64.c mm: Some arch may want to use HPAGE_PMD related values as variables 2016-03-03 21:18:29 +11:00
ppc_mmu_32.c powerpc/mm: Change setbat() to take a pgprot_t rather than flags 2015-04-07 17:15:13 +10:00
slb.c powerpc: Add function to copy mm_context_t to the paca 2015-12-19 22:13:12 +11:00
slb_low.S Merge remote-tracking branch 'anton/abiv2' into next 2014-05-05 20:57:12 +10:00
slice.c powerpc: Add function to copy mm_context_t to the paca 2015-12-19 22:13:12 +11:00
subpage-prot.c thp: rename split_huge_page_pmd() to split_huge_pmd() 2016-01-15 17:56:32 -08:00
tlb_hash32.c powerpc: include export.h for files using EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:30:38 -04:00
tlb_hash64.c powerpc/mm: Differentiate between hugetlb and THP during page walk 2015-10-12 15:30:09 +11:00
tlb_low_64e.S powerpc: Fix misspellings in comments. 2016-03-01 19:27:20 +11:00
tlb_nohash.c powerpc/fsl-booke-64: Don't limit ppc64_rma_size to one TLB entry 2015-10-27 18:13:22 -05:00
tlb_nohash_low.S powerpc: Fix misspellings in comments. 2016-03-01 19:27:20 +11:00
vphn.c powerpc/vphn: parsing code rewrite 2015-03-18 10:48:59 +11:00
vphn.h powerpc/vphn: parsing code rewrite 2015-03-18 10:48:59 +11:00