diff options
author | Guo Ren <guoren@linux.alibaba.com> | 2020-12-24 02:02:55 +0000 |
---|---|---|
committer | Guo Ren <guoren@linux.alibaba.com> | 2021-01-12 09:52:40 +0800 |
commit | b0ae5e26b863f74aeaf73684d04dfb6fb72f836c (patch) | |
tree | 822975c71512edf8a85575b8f08fd745630d5e73 /arch/csky/kernel/atomic.S | |
parent | csky: Fixup PTE global for 2.5:1.5 virtual memory (diff) | |
download | linux-dev-b0ae5e26b863f74aeaf73684d04dfb6fb72f836c.tar.xz linux-dev-b0ae5e26b863f74aeaf73684d04dfb6fb72f836c.zip |
csky: Remove prologue of page fault handler in entry.S
There is a prologue on page fault handler which marking pages dirty
and/or accessed in page attributes, but all of these have been
handled in handle_pte_fault.
- Add flush_tlb_one in vmalloc page fault instead of prologue.
- Using cmxchg_fixup C codes in do_page_fault instead of ASM one.
Signed-off-by: Guo Ren <guoren@linux.alibaba.com>
Diffstat (limited to 'arch/csky/kernel/atomic.S')
-rw-r--r-- | arch/csky/kernel/atomic.S | 20 |
1 files changed, 2 insertions, 18 deletions
diff --git a/arch/csky/kernel/atomic.S b/arch/csky/kernel/atomic.S index f03db1d8d060..e73e548f7855 100644 --- a/arch/csky/kernel/atomic.S +++ b/arch/csky/kernel/atomic.S @@ -40,11 +40,11 @@ ENTRY(csky_cmpxchg) 2: sync.is #else -1: +GLOBAL(csky_cmpxchg_ldw) ldw a3, (a2) cmpne a0, a3 bt16 3f -2: +GLOBAL(csky_cmpxchg_stw) stw a1, (a2) 3: #endif @@ -59,19 +59,3 @@ ENTRY(csky_cmpxchg) KSPTOUSP rte END(csky_cmpxchg) - -#ifndef CONFIG_CPU_HAS_LDSTEX -/* - * Called from tlbmodified exception - */ -ENTRY(csky_cmpxchg_fixup) - mfcr a0, epc - lrw a1, 2b - cmpne a1, a0 - bt 1f - subi a1, (2b - 1b) - stw a1, (sp, LSAVE_PC) -1: - rts -END(csky_cmpxchg_fixup) -#endif |