debug: fail to show active cpu stacks [1/1]
authorJiamin Ma <jiamin.ma@amlogic.com>
Thu, 31 Jan 2019 08:41:15 +0000 (16:41 +0800)
committerLuan Yuan <luan.yuan@amlogic.com>
Fri, 15 Mar 2019 04:17:41 +0000 (12:17 +0800)
PD#SWPL-4718

Problem:
The task stack address is not saved to irq_stack_ptr-0x08,
so when switching from irq stack to task stack, we can not
obtain the right task stack address

Solution:
save task stack address to irq_stack_ptr-0x08

Verify:
Locally on Ampere

Change-Id: I8ad9a45cee33681cc00de3a0bb264dbd9f1b859f
Signed-off-by: Jiamin Ma <jiamin.ma@amlogic.com>
arch/arm64/kernel/entry.S

index 8c07515..dc3f26d 100644 (file)
@@ -329,10 +329,8 @@ alternative_insn eret, nop, ARM64_UNMAP_KERNEL_AT_EL0
         * Add a dummy stack frame, this non-standard format is fixed up
         * by unwind_frame()
         */
-#ifndef CONFIG_AMLOGIC_VMAP /* we need get right stack of el1_preempt */
        stp     x29, x19, [sp, #-16]!
        mov     x29, sp
-#endif /* !CONFIG_AMLOGIC_VMAP */
 
 9998:
        .endm