* [PATCH AUTOSEL 5.4 52/58] csky/mm: Fixup export invalid_pte_table symbol [not found] <20200303024740.9511-1-sashal@kernel.org> @ 2020-03-03 2:47 ` Sasha Levin 2020-03-03 2:47 ` [PATCH AUTOSEL 5.4 53/58] csky: Set regs->usp to kernel sp, when the exception is from kernel Sasha Levin ` (4 subsequent siblings) 5 siblings, 0 replies; 6+ messages in thread From: Sasha Levin @ 2020-03-03 2:47 UTC (permalink / raw) To: linux-kernel, stable Cc: Guo Ren, Mo Qihui, Zhange Jian, Sasha Levin, linux-csky From: Guo Ren <guoren@linux.alibaba.com> [ Upstream commit 7f4a567332f035ab16b29010fbd04a0f10183c77 ] There is no present bit in csky pmd hardware, so we need to prepare invalid_pte_table for empty pmd entry and the functions (pmd_none & pmd_present) in pgtable.h need invalid_pte_talbe to get result. If a module use these functions, we need export the symbol for it. Signed-off-by: Guo Ren <guoren@linux.alibaba.com> Cc: Mo Qihui <qihui.mo@verisilicon.com> Cc: Zhange Jian <zhang_jian5@dahuatech.com> Signed-off-by: Sasha Levin <sashal@kernel.org> --- arch/csky/mm/init.c | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/csky/mm/init.c b/arch/csky/mm/init.c index d4c2292ea46bc..00e96278b3776 100644 --- a/arch/csky/mm/init.c +++ b/arch/csky/mm/init.c @@ -31,6 +31,7 @@ pgd_t swapper_pg_dir[PTRS_PER_PGD] __page_aligned_bss; pte_t invalid_pte_table[PTRS_PER_PTE] __page_aligned_bss; +EXPORT_SYMBOL(invalid_pte_table); unsigned long empty_zero_page[PAGE_SIZE / sizeof(unsigned long)] __page_aligned_bss; EXPORT_SYMBOL(empty_zero_page); -- 2.20.1 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH AUTOSEL 5.4 53/58] csky: Set regs->usp to kernel sp, when the exception is from kernel [not found] <20200303024740.9511-1-sashal@kernel.org> 2020-03-03 2:47 ` [PATCH AUTOSEL 5.4 52/58] csky/mm: Fixup export invalid_pte_table symbol Sasha Levin @ 2020-03-03 2:47 ` Sasha Levin 2020-03-03 2:47 ` [PATCH AUTOSEL 5.4 54/58] csky/smp: Fixup boot failed when CONFIG_SMP Sasha Levin ` (3 subsequent siblings) 5 siblings, 0 replies; 6+ messages in thread From: Sasha Levin @ 2020-03-03 2:47 UTC (permalink / raw) To: linux-kernel, stable; +Cc: Guo Ren, Sasha Levin, linux-csky From: Guo Ren <guoren@linux.alibaba.com> [ Upstream commit f8e17c17b81070f38062dce79ca7f4541851dadd ] In the past, we didn't care about kernel sp when saving pt_reg. But in some cases, we still need pt_reg->usp to represent the kernel stack before enter exception. For cmpxhg in atomic.S, we need save and restore usp for above. Signed-off-by: Guo Ren <guoren@linux.alibaba.com> Signed-off-by: Sasha Levin <sashal@kernel.org> --- arch/csky/abiv1/inc/abi/entry.h | 19 ++++++++++++++----- arch/csky/abiv2/inc/abi/entry.h | 11 +++++++++++ arch/csky/kernel/atomic.S | 8 ++++++-- 3 files changed, 31 insertions(+), 7 deletions(-) diff --git a/arch/csky/abiv1/inc/abi/entry.h b/arch/csky/abiv1/inc/abi/entry.h index 7ab78bd0f3b13..f35a9f3315ee6 100644 --- a/arch/csky/abiv1/inc/abi/entry.h +++ b/arch/csky/abiv1/inc/abi/entry.h @@ -16,14 +16,16 @@ #define LSAVE_A4 40 #define LSAVE_A5 44 +#define usp ss1 + .macro USPTOKSP - mtcr sp, ss1 + mtcr sp, usp mfcr sp, ss0 .endm .macro KSPTOUSP mtcr sp, ss0 - mfcr sp, ss1 + mfcr sp, usp .endm .macro SAVE_ALL epc_inc @@ -45,7 +47,13 @@ add lr, r13 stw lr, (sp, 8) + mov lr, sp + addi lr, 32 + addi lr, 32 + addi lr, 16 + bt 2f mfcr lr, ss1 +2: stw lr, (sp, 16) stw a0, (sp, 20) @@ -79,9 +87,10 @@ ldw a0, (sp, 12) mtcr a0, epsr btsti a0, 31 + bt 1f ldw a0, (sp, 16) mtcr a0, ss1 - +1: ldw a0, (sp, 24) ldw a1, (sp, 28) ldw a2, (sp, 32) @@ -102,9 +111,9 @@ addi sp, 32 addi sp, 8 - bt 1f + bt 2f KSPTOUSP -1: +2: rte .endm diff --git a/arch/csky/abiv2/inc/abi/entry.h b/arch/csky/abiv2/inc/abi/entry.h index 9897a16b45e5d..94a7a58765dff 100644 --- a/arch/csky/abiv2/inc/abi/entry.h +++ b/arch/csky/abiv2/inc/abi/entry.h @@ -31,7 +31,13 @@ mfcr lr, epsr stw lr, (sp, 12) + btsti lr, 31 + bf 1f + addi lr, sp, 152 + br 2f +1: mfcr lr, usp +2: stw lr, (sp, 16) stw a0, (sp, 20) @@ -64,8 +70,10 @@ mtcr a0, epc ldw a0, (sp, 12) mtcr a0, epsr + btsti a0, 31 ldw a0, (sp, 16) mtcr a0, usp + mtcr a0, ss0 #ifdef CONFIG_CPU_HAS_HILO ldw a0, (sp, 140) @@ -86,6 +94,9 @@ addi sp, 40 ldm r16-r30, (sp) addi sp, 72 + bf 1f + mfcr sp, ss0 +1: rte .endm diff --git a/arch/csky/kernel/atomic.S b/arch/csky/kernel/atomic.S index 5b84f11485aeb..3821ef9b75672 100644 --- a/arch/csky/kernel/atomic.S +++ b/arch/csky/kernel/atomic.S @@ -17,10 +17,12 @@ ENTRY(csky_cmpxchg) mfcr a3, epc addi a3, TRAP0_SIZE - subi sp, 8 + subi sp, 16 stw a3, (sp, 0) mfcr a3, epsr stw a3, (sp, 4) + mfcr a3, usp + stw a3, (sp, 8) psrset ee #ifdef CONFIG_CPU_HAS_LDSTEX @@ -47,7 +49,9 @@ ENTRY(csky_cmpxchg) mtcr a3, epc ldw a3, (sp, 4) mtcr a3, epsr - addi sp, 8 + ldw a3, (sp, 8) + mtcr a3, usp + addi sp, 16 KSPTOUSP rte END(csky_cmpxchg) -- 2.20.1 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH AUTOSEL 5.4 54/58] csky/smp: Fixup boot failed when CONFIG_SMP [not found] <20200303024740.9511-1-sashal@kernel.org> 2020-03-03 2:47 ` [PATCH AUTOSEL 5.4 52/58] csky/mm: Fixup export invalid_pte_table symbol Sasha Levin 2020-03-03 2:47 ` [PATCH AUTOSEL 5.4 53/58] csky: Set regs->usp to kernel sp, when the exception is from kernel Sasha Levin @ 2020-03-03 2:47 ` Sasha Levin 2020-03-03 2:47 ` [PATCH AUTOSEL 5.4 55/58] csky: Fixup ftrace modify panic Sasha Levin ` (2 subsequent siblings) 5 siblings, 0 replies; 6+ messages in thread From: Sasha Levin @ 2020-03-03 2:47 UTC (permalink / raw) To: linux-kernel, stable; +Cc: Guo Ren, Sasha Levin, linux-csky From: Guo Ren <guoren@linux.alibaba.com> [ Upstream commit c9492737b25ca32679ba3163609d938c9abfd508 ] If we use a non-ipi-support interrupt controller, it will cause panic here. We should let cpu up and work with CONFIG_SMP, when we use a non-ipi intc. Signed-off-by: Guo Ren <guoren@linux.alibaba.com> Signed-off-by: Sasha Levin <sashal@kernel.org> --- arch/csky/kernel/smp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/csky/kernel/smp.c b/arch/csky/kernel/smp.c index b753d382e4cef..0bb0954d55709 100644 --- a/arch/csky/kernel/smp.c +++ b/arch/csky/kernel/smp.c @@ -120,7 +120,7 @@ void __init setup_smp_ipi(void) int rc; if (ipi_irq == 0) - panic("%s IRQ mapping failed\n", __func__); + return; rc = request_percpu_irq(ipi_irq, handle_ipi, "IPI Interrupt", &ipi_dummy_dev); -- 2.20.1 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH AUTOSEL 5.4 55/58] csky: Fixup ftrace modify panic [not found] <20200303024740.9511-1-sashal@kernel.org> ` (2 preceding siblings ...) 2020-03-03 2:47 ` [PATCH AUTOSEL 5.4 54/58] csky/smp: Fixup boot failed when CONFIG_SMP Sasha Levin @ 2020-03-03 2:47 ` Sasha Levin 2020-03-03 2:47 ` [PATCH AUTOSEL 5.4 56/58] csky: Fixup compile warning for three unimplemented syscalls Sasha Levin 2020-03-03 2:47 ` [PATCH AUTOSEL 5.4 57/58] arch/csky: fix some Kconfig typos Sasha Levin 5 siblings, 0 replies; 6+ messages in thread From: Sasha Levin @ 2020-03-03 2:47 UTC (permalink / raw) To: linux-kernel, stable; +Cc: Guo Ren, Sasha Levin, linux-csky From: Guo Ren <guoren@linux.alibaba.com> [ Upstream commit 359ae00d12589c31cf103894d0f32588d523ca83 ] During ftrace init, linux will replace all function prologues (call_mcout) with nops, but it need flush_dcache and invalidate_icache to make it work. So flush_cache functions couldn't be nested called by ftrace framework. Signed-off-by: Guo Ren <guoren@linux.alibaba.com> Signed-off-by: Sasha Levin <sashal@kernel.org> --- arch/csky/mm/Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/csky/mm/Makefile b/arch/csky/mm/Makefile index c94ef64810986..efb7ebab342b3 100644 --- a/arch/csky/mm/Makefile +++ b/arch/csky/mm/Makefile @@ -1,8 +1,10 @@ # SPDX-License-Identifier: GPL-2.0-only ifeq ($(CONFIG_CPU_HAS_CACHEV2),y) obj-y += cachev2.o +CFLAGS_REMOVE_cachev2.o = $(CC_FLAGS_FTRACE) else obj-y += cachev1.o +CFLAGS_REMOVE_cachev1.o = $(CC_FLAGS_FTRACE) endif obj-y += dma-mapping.o -- 2.20.1 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH AUTOSEL 5.4 56/58] csky: Fixup compile warning for three unimplemented syscalls [not found] <20200303024740.9511-1-sashal@kernel.org> ` (3 preceding siblings ...) 2020-03-03 2:47 ` [PATCH AUTOSEL 5.4 55/58] csky: Fixup ftrace modify panic Sasha Levin @ 2020-03-03 2:47 ` Sasha Levin 2020-03-03 2:47 ` [PATCH AUTOSEL 5.4 57/58] arch/csky: fix some Kconfig typos Sasha Levin 5 siblings, 0 replies; 6+ messages in thread From: Sasha Levin @ 2020-03-03 2:47 UTC (permalink / raw) To: linux-kernel, stable; +Cc: Guo Ren, Sasha Levin, linux-csky From: Guo Ren <guoren@linux.alibaba.com> [ Upstream commit 2305f60b76110cb3e8658a4ae85d1f7eb0c66a5b ] Implement fstat64, fstatat64, clone3 syscalls to fixup checksyscalls.sh compile warnings. Signed-off-by: Guo Ren <guoren@linux.alibaba.com> Signed-off-by: Sasha Levin <sashal@kernel.org> --- arch/csky/include/uapi/asm/unistd.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/arch/csky/include/uapi/asm/unistd.h b/arch/csky/include/uapi/asm/unistd.h index 211c983c7282d..ba40189297338 100644 --- a/arch/csky/include/uapi/asm/unistd.h +++ b/arch/csky/include/uapi/asm/unistd.h @@ -1,7 +1,10 @@ /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ // Copyright (C) 2018 Hangzhou C-SKY Microsystems co.,ltd. +#define __ARCH_WANT_STAT64 +#define __ARCH_WANT_NEW_STAT #define __ARCH_WANT_SYS_CLONE +#define __ARCH_WANT_SYS_CLONE3 #define __ARCH_WANT_SET_GET_RLIMIT #define __ARCH_WANT_TIME32_SYSCALLS #include <asm-generic/unistd.h> -- 2.20.1 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH AUTOSEL 5.4 57/58] arch/csky: fix some Kconfig typos [not found] <20200303024740.9511-1-sashal@kernel.org> ` (4 preceding siblings ...) 2020-03-03 2:47 ` [PATCH AUTOSEL 5.4 56/58] csky: Fixup compile warning for three unimplemented syscalls Sasha Levin @ 2020-03-03 2:47 ` Sasha Levin 5 siblings, 0 replies; 6+ messages in thread From: Sasha Levin @ 2020-03-03 2:47 UTC (permalink / raw) To: linux-kernel, stable Cc: Randy Dunlap, Guo Ren, Guo Ren, Sasha Levin, linux-csky From: Randy Dunlap <rdunlap@infradead.org> [ Upstream commit bebd26ab623616728d6e72b5c74a47bfff5287d8 ] Fix wording in help text for the CPU_HAS_LDSTEX symbol. Signed-off-by: Randy Dunlap <rdunlap@infradead.org> Signed-off-by: Guo Ren <guoren@kernel.org> Signed-off-by: Guo Ren <guoren@linux.alibaba.com> Signed-off-by: Sasha Levin <sashal@kernel.org> --- arch/csky/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/csky/Kconfig b/arch/csky/Kconfig index 3973847b5f42e..25de20e526e50 100644 --- a/arch/csky/Kconfig +++ b/arch/csky/Kconfig @@ -74,7 +74,7 @@ config CPU_HAS_TLBI config CPU_HAS_LDSTEX bool help - For SMP, CPU needs "ldex&stex" instrcutions to atomic operations. + For SMP, CPU needs "ldex&stex" instructions for atomic operations. config CPU_NEED_TLBSYNC bool -- 2.20.1 ^ permalink raw reply related [flat|nested] 6+ messages in thread
end of thread, other threads:[~2020-03-03 2:56 UTC | newest] Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <20200303024740.9511-1-sashal@kernel.org> 2020-03-03 2:47 ` [PATCH AUTOSEL 5.4 52/58] csky/mm: Fixup export invalid_pte_table symbol Sasha Levin 2020-03-03 2:47 ` [PATCH AUTOSEL 5.4 53/58] csky: Set regs->usp to kernel sp, when the exception is from kernel Sasha Levin 2020-03-03 2:47 ` [PATCH AUTOSEL 5.4 54/58] csky/smp: Fixup boot failed when CONFIG_SMP Sasha Levin 2020-03-03 2:47 ` [PATCH AUTOSEL 5.4 55/58] csky: Fixup ftrace modify panic Sasha Levin 2020-03-03 2:47 ` [PATCH AUTOSEL 5.4 56/58] csky: Fixup compile warning for three unimplemented syscalls Sasha Levin 2020-03-03 2:47 ` [PATCH AUTOSEL 5.4 57/58] arch/csky: fix some Kconfig typos Sasha Levin
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).