linux/arch/loongarch/mm
Youling Tang 672999cfae LoongArch: extable: Add a dedicated uaccess handler
Inspired by commit 2e77a62cb3a6("arm64: extable: add a dedicated uaccess
handler"), do similar to LoongArch to add a dedicated uaccess exception
handler to update registers in exception context and subsequently return
back into the function which faulted, so we remove the need for fixups
specialized to each faulting instruction.

Add gpr-num.h here because we need to map the same GPR names to integer
constants, so that we can use this to build meta-data for the exception
fixups.

The compiler treats gpr 0 as zero rather than $r0, so set it separately
to .L__gpr_num_zero, otherwise the following assembly error will occurs:

{standard input}: Assembler messages:
{standard input}:1074: Error: invalid operands (*UND* and *ABS* sections) for `<<'
{standard input}:1160: Error: invalid operands (*UND* and *ABS* sections) for `<<'
make[1]: *** [scripts/Makefile.build:249: fs/fcntl.o] Error 1

Signed-off-by: Youling Tang <tangyouling@loongson.cn>
Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
2022-12-14 08:36:11 +08:00
..
cache.c LoongArch: Refactor cache probe and flush methods 2022-10-12 16:36:14 +08:00
extable.c LoongArch: extable: Add a dedicated uaccess handler 2022-12-14 08:36:11 +08:00
fault.c LoongArch: mm: Avoid unnecessary page fault retires on shared memory types 2022-08-25 19:34:59 +08:00
hugetlbpage.c
init.c LoongArch: Use TLB for ioremap() 2022-10-12 16:36:14 +08:00
ioremap.c
maccess.c
Makefile
mmap.c LoongArch: Support access filter to /dev/mem interface 2022-10-12 16:36:14 +08:00
page.S LoongArch: Re-tab the assembly files 2022-07-29 18:22:32 +08:00
pgtable.c loongarch: drop definition of PGD_ORDER 2022-07-17 17:14:43 -07:00
tlb.c LoongArch: Flush TLB earlier at initialization 2022-10-12 16:36:08 +08:00
tlbex.S LoongArch: mm: Fix huge page entry update for virtual machine 2022-12-08 14:59:15 +08:00