OpenCloudOS-Kernel/arch/sparc/mm
Mike Rapoport 0cfc8a8d70 sparc32: fix page table traversal in srmmu_nocache_init()
The srmmu_nocache_init() uses __nocache_fix() macro to add an offset to
page table entry to access srmmu_nocache_pool.

But since sparc32 has only three actual page table levels, pgd, p4d and
pud are essentially the same thing and pgd_offset() and p4d_offset() are
no-ops, the __nocache_fix() should be done only at PUD level.

Remove __nocache_fix() for p4d_offset() and pud_offset() and keep it
only for PUD and lower levels.

Fixes: c2bc26f7ca ("sparc32: use PUD rather than PGD to get PMD in srmmu_nocache_init()")
Signed-off-by: Mike Rapoport <rppt@linux.ibm.com>
Cc: David S. Miller <davem@davemloft.net>
Cc: Anatoly Pugachev <matorola@gmail.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2020-05-23 13:59:12 -07:00
..
Makefile sparc64: use the generic get_user_pages_fast code 2019-07-12 11:05:44 -07:00
extable.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
fault_32.c mm: allow VM_FAULT_RETRY for multiple times 2020-04-02 09:35:30 -07:00
fault_64.c mm: allow VM_FAULT_RETRY for multiple times 2020-04-02 09:35:30 -07:00
highmem.c sparc32: use pgtable-nopud instead of 4level-fixup 2019-12-04 19:44:15 -08:00
hugetlbpage.c sparc64: add support for folded p4d page tables 2020-01-30 11:14:28 +01:00
hypersparc.S License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
init_32.c mm: remove quicklist page table caches 2019-09-24 15:54:09 -07:00
init_64.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc 2020-01-30 07:36:43 -08:00
init_64.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
io-unit.c sparc32: use per-device dma_ops 2020-04-02 18:11:55 -07:00
iommu.c sparc32: use per-device dma_ops 2020-04-02 18:11:55 -07:00
leon_mm.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mm_32.h sparc32: use per-device dma_ops 2020-04-02 18:11:55 -07:00
srmmu.c sparc32: fix page table traversal in srmmu_nocache_init() 2020-05-23 13:59:12 -07:00
srmmu_access.S License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
swift.S License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
tlb.c mm: fix races between swapoff and flush dcache 2018-04-05 21:36:26 -07:00
tsb.c sparc64: Add support for ADI (Application Data Integrity) 2018-03-18 07:38:48 -07:00
tsunami.S License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ultra.S sparc64: Fix regression in non-hypervisor TLB flush xcall 2019-06-02 22:13:40 -07:00
viking.S License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00