* [PATCH AUTOSEL 5.5 60/66] csky/mm: Fixup export invalid_pte_table symbol
[not found] <20200303024615.8889-1-sashal@kernel.org>
@ 2020-03-03 2:46 ` Sasha Levin
2020-03-03 2:46 ` [PATCH AUTOSEL 5.5 61/66] 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:46 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.5 61/66] csky: Set regs->usp to kernel sp, when the exception is from kernel
[not found] <20200303024615.8889-1-sashal@kernel.org>
2020-03-03 2:46 ` [PATCH AUTOSEL 5.5 60/66] csky/mm: Fixup export invalid_pte_table symbol Sasha Levin
@ 2020-03-03 2:46 ` Sasha Levin
2020-03-03 2:46 ` [PATCH AUTOSEL 5.5 62/66] 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:46 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.5 62/66] csky/smp: Fixup boot failed when CONFIG_SMP
[not found] <20200303024615.8889-1-sashal@kernel.org>
2020-03-03 2:46 ` [PATCH AUTOSEL 5.5 60/66] csky/mm: Fixup export invalid_pte_table symbol Sasha Levin
2020-03-03 2:46 ` [PATCH AUTOSEL 5.5 61/66] csky: Set regs->usp to kernel sp, when the exception is from kernel Sasha Levin
@ 2020-03-03 2:46 ` Sasha Levin
2020-03-03 2:46 ` [PATCH AUTOSEL 5.5 63/66] 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:46 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.5 63/66] csky: Fixup ftrace modify panic
[not found] <20200303024615.8889-1-sashal@kernel.org>
` (2 preceding siblings ...)
2020-03-03 2:46 ` [PATCH AUTOSEL 5.5 62/66] csky/smp: Fixup boot failed when CONFIG_SMP Sasha Levin
@ 2020-03-03 2:46 ` Sasha Levin
2020-03-03 2:46 ` [PATCH AUTOSEL 5.5 64/66] csky: Fixup compile warning for three unimplemented syscalls Sasha Levin
2020-03-03 2:46 ` [PATCH AUTOSEL 5.5 65/66] arch/csky: fix some Kconfig typos Sasha Levin
5 siblings, 0 replies; 6+ messages in thread
From: Sasha Levin @ 2020-03-03 2:46 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.5 64/66] csky: Fixup compile warning for three unimplemented syscalls
[not found] <20200303024615.8889-1-sashal@kernel.org>
` (3 preceding siblings ...)
2020-03-03 2:46 ` [PATCH AUTOSEL 5.5 63/66] csky: Fixup ftrace modify panic Sasha Levin
@ 2020-03-03 2:46 ` Sasha Levin
2020-03-03 2:46 ` [PATCH AUTOSEL 5.5 65/66] arch/csky: fix some Kconfig typos Sasha Levin
5 siblings, 0 replies; 6+ messages in thread
From: Sasha Levin @ 2020-03-03 2:46 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.5 65/66] arch/csky: fix some Kconfig typos
[not found] <20200303024615.8889-1-sashal@kernel.org>
` (4 preceding siblings ...)
2020-03-03 2:46 ` [PATCH AUTOSEL 5.5 64/66] csky: Fixup compile warning for three unimplemented syscalls Sasha Levin
@ 2020-03-03 2:46 ` Sasha Levin
5 siblings, 0 replies; 6+ messages in thread
From: Sasha Levin @ 2020-03-03 2:46 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 da09c884cc305..2265227b7df8f 100644
--- a/arch/csky/Kconfig
+++ b/arch/csky/Kconfig
@@ -75,7 +75,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:59 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <20200303024615.8889-1-sashal@kernel.org>
2020-03-03 2:46 ` [PATCH AUTOSEL 5.5 60/66] csky/mm: Fixup export invalid_pte_table symbol Sasha Levin
2020-03-03 2:46 ` [PATCH AUTOSEL 5.5 61/66] csky: Set regs->usp to kernel sp, when the exception is from kernel Sasha Levin
2020-03-03 2:46 ` [PATCH AUTOSEL 5.5 62/66] csky/smp: Fixup boot failed when CONFIG_SMP Sasha Levin
2020-03-03 2:46 ` [PATCH AUTOSEL 5.5 63/66] csky: Fixup ftrace modify panic Sasha Levin
2020-03-03 2:46 ` [PATCH AUTOSEL 5.5 64/66] csky: Fixup compile warning for three unimplemented syscalls Sasha Levin
2020-03-03 2:46 ` [PATCH AUTOSEL 5.5 65/66] 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).