From c6d712df0e8b95e9fc24d4f8dfdb1b8031d6082c Mon Sep 17 00:00:00 2001 From: xuxingliang Date: Fri, 28 Jun 2024 16:50:59 +0800 Subject: [PATCH] sched: move nxsched_dumponexit() to task_exithook So the tcb->group still exists to dump files. Signed-off-by: xuxingliang --- arch/arm/src/common/arm_exit.c | 2 -- arch/arm64/src/common/arm64_exit.c | 2 -- arch/avr/src/common/avr_exit.c | 2 -- arch/hc/src/common/hc_exit.c | 2 -- arch/mips/src/common/mips_exit.c | 2 -- arch/misoc/src/lm32/lm32_exit.c | 2 -- arch/misoc/src/minerva/minerva_exit.c | 2 -- arch/or1k/src/common/or1k_exit.c | 2 -- arch/renesas/src/common/renesas_exit.c | 2 -- arch/risc-v/src/common/riscv_exit.c | 2 -- arch/sparc/src/common/sparc_exit.c | 2 -- arch/tricore/src/common/tricore_exit.c | 2 -- arch/x86/src/common/x86_exit.c | 2 -- arch/x86_64/src/common/x86_64_exit.c | 2 -- arch/xtensa/src/common/xtensa_exit.c | 2 -- arch/z16/src/common/z16_exit.c | 2 -- arch/z80/src/common/z80_exit.c | 2 -- sched/task/task_exithook.c | 2 ++ 18 files changed, 2 insertions(+), 34 deletions(-) diff --git a/arch/arm/src/common/arm_exit.c b/arch/arm/src/common/arm_exit.c index 0f12c17600..b8189f3d8e 100644 --- a/arch/arm/src/common/arm_exit.c +++ b/arch/arm/src/common/arm_exit.c @@ -62,8 +62,6 @@ void up_exit(int status) enter_critical_section(); - nxsched_dumponexit(); - /* Destroy the task at the head of the ready to run list. */ nxtask_exit(); diff --git a/arch/arm64/src/common/arm64_exit.c b/arch/arm64/src/common/arm64_exit.c index 7b3c8d6fd0..0052adac94 100644 --- a/arch/arm64/src/common/arm64_exit.c +++ b/arch/arm64/src/common/arm64_exit.c @@ -66,8 +66,6 @@ void up_exit(int status) enter_critical_section(); - nxsched_dumponexit(); - /* Destroy the task at the head of the ready to run list. */ #ifdef CONFIG_ARCH_FPU arm64_destory_fpu(tcb); diff --git a/arch/avr/src/common/avr_exit.c b/arch/avr/src/common/avr_exit.c index 99da35aecd..8b7e34af07 100644 --- a/arch/avr/src/common/avr_exit.c +++ b/arch/avr/src/common/avr_exit.c @@ -61,8 +61,6 @@ void up_exit(int status) enter_critical_section(); - nxsched_dumponexit(); - /* Destroy the task at the head of the ready to run list. */ nxtask_exit(); diff --git a/arch/hc/src/common/hc_exit.c b/arch/hc/src/common/hc_exit.c index 7f5c454da2..a2c2b6a3b2 100644 --- a/arch/hc/src/common/hc_exit.c +++ b/arch/hc/src/common/hc_exit.c @@ -60,8 +60,6 @@ void up_exit(int status) enter_critical_section(); - nxsched_dumponexit(); - /* Destroy the task at the head of the ready to run list. */ nxtask_exit(); diff --git a/arch/mips/src/common/mips_exit.c b/arch/mips/src/common/mips_exit.c index ea0b36cc98..f4520d5c81 100644 --- a/arch/mips/src/common/mips_exit.c +++ b/arch/mips/src/common/mips_exit.c @@ -62,8 +62,6 @@ void up_exit(int status) enter_critical_section(); - nxsched_dumponexit(); - /* Destroy the task at the head of the ready to run list. */ nxtask_exit(); diff --git a/arch/misoc/src/lm32/lm32_exit.c b/arch/misoc/src/lm32/lm32_exit.c index 455d25dc0d..2fb3aed55b 100644 --- a/arch/misoc/src/lm32/lm32_exit.c +++ b/arch/misoc/src/lm32/lm32_exit.c @@ -62,8 +62,6 @@ void up_exit(int status) enter_critical_section(); - nxsched_dumponexit(); - /* Destroy the task at the head of the ready to run list. */ nxtask_exit(); diff --git a/arch/misoc/src/minerva/minerva_exit.c b/arch/misoc/src/minerva/minerva_exit.c index f3d6c17898..0723be57be 100644 --- a/arch/misoc/src/minerva/minerva_exit.c +++ b/arch/misoc/src/minerva/minerva_exit.c @@ -62,8 +62,6 @@ void up_exit(int status) enter_critical_section(); - nxsched_dumponexit(); - /* Destroy the task at the head of the ready to run list. */ nxtask_exit(); diff --git a/arch/or1k/src/common/or1k_exit.c b/arch/or1k/src/common/or1k_exit.c index eef1a01c30..854976a333 100644 --- a/arch/or1k/src/common/or1k_exit.c +++ b/arch/or1k/src/common/or1k_exit.c @@ -62,8 +62,6 @@ void up_exit(int status) enter_critical_section(); - nxsched_dumponexit(); - /* Destroy the task at the head of the ready to run list. */ nxtask_exit(); diff --git a/arch/renesas/src/common/renesas_exit.c b/arch/renesas/src/common/renesas_exit.c index 27abbdd009..8b8a81fe55 100644 --- a/arch/renesas/src/common/renesas_exit.c +++ b/arch/renesas/src/common/renesas_exit.c @@ -60,8 +60,6 @@ void up_exit(int status) enter_critical_section(); - nxsched_dumponexit(); - /* Destroy the task at the head of the ready to run list. */ nxtask_exit(); diff --git a/arch/risc-v/src/common/riscv_exit.c b/arch/risc-v/src/common/riscv_exit.c index 86619cb3f5..5c747e58e0 100644 --- a/arch/risc-v/src/common/riscv_exit.c +++ b/arch/risc-v/src/common/riscv_exit.c @@ -62,8 +62,6 @@ void up_exit(int status) enter_critical_section(); - nxsched_dumponexit(); - /* Destroy the task at the head of the ready to run list. */ nxtask_exit(); diff --git a/arch/sparc/src/common/sparc_exit.c b/arch/sparc/src/common/sparc_exit.c index c81a5a381e..aee2dcb0fc 100644 --- a/arch/sparc/src/common/sparc_exit.c +++ b/arch/sparc/src/common/sparc_exit.c @@ -62,8 +62,6 @@ void up_exit(int status) (void)enter_critical_section(); - nxsched_dumponexit(); - /* Update scheduler parameters */ nxsched_suspend_scheduler(tcb); diff --git a/arch/tricore/src/common/tricore_exit.c b/arch/tricore/src/common/tricore_exit.c index 9243021ba8..a3bff634fb 100644 --- a/arch/tricore/src/common/tricore_exit.c +++ b/arch/tricore/src/common/tricore_exit.c @@ -62,8 +62,6 @@ void up_exit(int status) enter_critical_section(); - nxsched_dumponexit(); - /* Destroy the task at the head of the ready to run list. */ nxtask_exit(); diff --git a/arch/x86/src/common/x86_exit.c b/arch/x86/src/common/x86_exit.c index a26e3914af..2bb9359941 100644 --- a/arch/x86/src/common/x86_exit.c +++ b/arch/x86/src/common/x86_exit.c @@ -61,8 +61,6 @@ void up_exit(int status) enter_critical_section(); - nxsched_dumponexit(); - /* Destroy the task at the head of the ready to run list. */ nxtask_exit(); diff --git a/arch/x86_64/src/common/x86_64_exit.c b/arch/x86_64/src/common/x86_64_exit.c index 867937ec3c..9c2c86d37f 100644 --- a/arch/x86_64/src/common/x86_64_exit.c +++ b/arch/x86_64/src/common/x86_64_exit.c @@ -60,8 +60,6 @@ void up_exit(int status) enter_critical_section(); - nxsched_dumponexit(); - /* Destroy the task at the head of the ready to run list. */ nxtask_exit(); diff --git a/arch/xtensa/src/common/xtensa_exit.c b/arch/xtensa/src/common/xtensa_exit.c index 47f7024aa0..2b79b5047e 100644 --- a/arch/xtensa/src/common/xtensa_exit.c +++ b/arch/xtensa/src/common/xtensa_exit.c @@ -62,8 +62,6 @@ void up_exit(int status) enter_critical_section(); - nxsched_dumponexit(); - /* Destroy the task at the head of the ready to run list. */ nxtask_exit(); diff --git a/arch/z16/src/common/z16_exit.c b/arch/z16/src/common/z16_exit.c index 85d274bf34..ecd8353674 100644 --- a/arch/z16/src/common/z16_exit.c +++ b/arch/z16/src/common/z16_exit.c @@ -60,8 +60,6 @@ void up_exit(int status) enter_critical_section(); - nxsched_dumponexit(); - /* Destroy the task at the head of the ready to run list. */ nxtask_exit(); diff --git a/arch/z80/src/common/z80_exit.c b/arch/z80/src/common/z80_exit.c index 9acbee62c3..300ce5027f 100644 --- a/arch/z80/src/common/z80_exit.c +++ b/arch/z80/src/common/z80_exit.c @@ -62,8 +62,6 @@ void up_exit(int status) enter_critical_section(); - nxsched_dumponexit(); - /* Destroy the task at the head of the ready to run list. */ nxtask_exit(); diff --git a/sched/task/task_exithook.c b/sched/task/task_exithook.c index 0a586f8908..a0f4537387 100644 --- a/sched/task/task_exithook.c +++ b/sched/task/task_exithook.c @@ -432,6 +432,8 @@ void nxtask_exithook(FAR struct tcb_s *tcb, int status) return; } + nxsched_dumponexit(); + /* If the task was terminated by another task, it may be in an unknown * state. Make some feeble effort to recover the state. */