linux_dsm_epyc7002/arch/powerpc/mm
Nicholas Piggin a00196a272 powerpc/64s: __find_linux_pte() synchronization vs pmdp_invalidate()
The change to pmdp_invalidate() to mark the pmd with _PAGE_INVALID
broke the synchronisation against lock free lookups,
__find_linux_pte()'s pmd_none() check no longer returns true for such
cases.

Fix this by adding a check for this condition as well.

Fixes: da7ad366b4 ("powerpc/mm/book3s: Update pmd_present to look at _PAGE_PRESENT bit")
Cc: stable@vger.kernel.org # v4.20+
Suggested-by: Aneesh Kumar K.V <aneesh.kumar@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Reviewed-by: Aneesh Kumar K.V <aneesh.kumar@linux.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
2019-06-07 16:28:28 +10:00
..
book3s32 powerpc/32s: fix flush_hash_pages() on SMP 2019-05-14 22:58:52 +10:00
book3s64 powerpc/64s: Fix THP PMD collapse serialisation 2019-06-07 16:26:44 +10:00
kasan powerpc/kasan: add missing/lost Makefile 2019-05-06 20:21:34 +10:00
nohash powerpc/book3e: move early_alloc_pgtable() to init section 2019-05-03 01:20:24 +10:00
ptdump powerpc/mm: Warn if W+X pages found on boot 2019-05-03 02:54:45 +10:00
copro_fault.c powerpc/mm/hash: Rename KERNEL_REGION_ID to LINEAR_MAP_REGION_ID 2019-04-21 23:12:40 +10:00
dma-noncoherent.c powerpc/mm: change #include "mmu_decl.h" to <mm/mmu_decl.h> 2019-05-02 21:18:58 +10:00
drmem.c powerpc/pseries: Track LMB nid instead of using device tree 2019-04-29 22:27:16 +10:00
fault.c powerpc/mm: Detect bad KUAP faults 2019-04-21 23:06:04 +10:00
highmem.c powerpc/highmem: Change BUG_ON() to WARN_ON() 2019-04-20 22:02:11 +10:00
hugetlbpage.c powerpc/mm: Fix crashes with hugepages & 4K pages 2019-05-15 11:13:35 +10:00
init_32.c powerpc/32: Add KASAN support 2019-05-03 01:20:26 +10:00
init_64.c powerpc/mm: change #include "mmu_decl.h" to <mm/mmu_decl.h> 2019-05-02 21:18:58 +10:00
init-common.c powerpc/mm: fix section mismatch for setup_kup() 2019-05-06 20:21:56 +10:00
Makefile powerpc/mm: fix redundant inclusion of pgtable-frag.o in Makefile 2019-05-06 20:21:56 +10:00
mem.c mm/memory_hotplug: make __remove_pages() and arch_remove_memory() never fail 2019-05-14 09:47:50 -07:00
mmap.c exec: pass stack rlimit into mm layout functions 2018-04-11 10:28:37 -07:00
mmu_context.c powerpc/mm: convert Book3E 64 to pte_fragment 2019-05-03 01:20:24 +10:00
mmu_decl.h powerpc/mm: print hash info in a helper 2019-05-03 01:20:26 +10:00
numa.c powerpc/mm: Move book3s64 specifics in subdirectory mm/book3s64 2019-05-03 01:18:38 +10:00
pgtable_32.c powerpc/mm: Warn if W+X pages found on boot 2019-05-03 02:54:45 +10:00
pgtable_64.c powerpc/mm: Warn if W+X pages found on boot 2019-05-03 02:54:45 +10:00
pgtable-frag.c mm: treewide: remove unused address argument from pte_alloc functions 2019-01-04 13:13:47 -08:00
pgtable.c powerpc/64s: __find_linux_pte() synchronization vs pmdp_invalidate() 2019-06-07 16:28:28 +10:00
slice.c powerpc/mm: define subarch SLB_ADDR_LIMIT_DEFAULT 2019-05-03 01:20:23 +10:00