linux/arch/mips/mm
Huang Pei f685a533a7 MIPS: make userspace mapping young by default
MIPS page fault path(except huge page) takes 3 exceptions (1 TLB Miss + 2
TLB Invalid), butthe second TLB Invalid exception is just triggered by
__update_tlb from do_page_fault writing tlb without _PAGE_VALID set.  With
this patch, user space mapping prot is made young by default (with both
_PAGE_VALID and _PAGE_YOUNG set), and it only take 1 TLB Miss + 1 TLB
Invalid exception

Remove pte_sw_mkyoung without polluting MM code and make page fault delay
of MIPS on par with other architecture

Link: https://lkml.kernel.org/r/20210204013942.8398-1-huangpei@loongson.cn
Signed-off-by: Huang Pei <huangpei@loongson.cn>
Reviewed-by: Nicholas Piggin <npiggin@gmail.com>
Acked-by: <huangpei@loongson.cn>
Acked-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
Cc: <ambrosehua@gmail.com>
Cc: Bibo Mao <maobibo@loongson.cn>
Cc: Jiaxun Yang <jiaxun.yang@flygoat.com>
Cc: Paul Burton <paulburton@kernel.org>
Cc: Li Xuefeng <lixuefeng@loongson.cn>
Cc: Yang Tiezhu <yangtiezhu@loongson.cn>
Cc: Gao Juxin <gaojuxin@loongson.cn>
Cc: Fuxin Zhang <zhangfx@lemote.com>
Cc: Huacai Chen <chenhc@lemote.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2021-02-26 09:41:05 -08:00
..
c-octeon.c
c-r3k.c mm: pgtable: add shortcuts for accessing kernel PMD and PTE 2020-06-09 09:39:13 -07:00
c-r4k.c driver core: lift dma_default_coherent into common code 2021-02-13 09:51:45 +01:00
c-tx39.c mm: pgtable: add shortcuts for accessing kernel PMD and PTE 2020-06-09 09:39:13 -07:00
cache.c MIPS: make userspace mapping young by default 2021-02-26 09:41:05 -08:00
cerr-sb1.c
cex-gen.S
cex-oct.S
cex-sb1.S
context.c
dma-noncoherent.c MIPS: remove CONFIG_DMA_PERDEV_COHERENT 2021-02-13 09:51:46 +01:00
extable.c
fault.c MIPS: mm: abort uaccess retries upon fatal signal 2021-01-22 11:34:19 +01:00
highmem.c mips/mm/highmem: Switch to generic kmap atomic 2020-11-06 23:14:56 +01:00
hugetlbpage.c MIPS: mm: Remove unused is_aligned_hugepage_range 2020-11-27 10:53:32 +01:00
init.c MIPS: Remove empty prom_free_prom_memory functions 2021-01-07 17:11:33 +01:00
ioremap.c
ioremap64.c
Makefile
mmap.c
page-funcs.S
page.c MIPS: Convert R4600_V2_HIT_CACHEOP into a config option 2020-09-07 22:23:48 +02:00
pgtable-32.c MIPS: do not call flush_tlb_all when setting pmd entry 2021-02-24 13:38:32 -08:00
pgtable-64.c MIPS: do not call flush_tlb_all when setting pmd entry 2021-02-24 13:38:32 -08:00
pgtable.c
sc-debugfs.c
sc-ip22.c
sc-mips.c mips: fix Section mismatch in reference 2020-12-14 16:39:42 +01:00
sc-r5k.c
sc-rm7k.c
tlb-funcs.S
tlb-r3k.c
tlb-r4k.c MIPS: export has_transparent_hugepage() for modules 2020-10-27 12:44:34 +01:00
tlbex-fault.S
tlbex.c Revert "MIPS: Remove unused R4300 CPU support" 2021-01-22 11:39:45 +01:00
uasm-micromips.c
uasm-mips.c
uasm.c MIPS: Get rid of CAVIUM_OCTEON_DCACHE_PREFETCH_WAR 2020-09-07 22:25:16 +02:00