From 23fa9b16b34c033d8ef8dfb6a3dbb6a7f860e025 Mon Sep 17 00:00:00 2001 From: wangchengdong Date: Tue, 13 Jan 2026 09:38:50 +0800 Subject: [PATCH] arch/mips: Add support to disable signals actions related data struct Add support to disable signals actions related struct Co-authored-by: guoshichao Signed-off-by: Chengdong Wang --- arch/mips/include/mips32/irq.h | 2 ++ arch/mips/src/pic32mx/Make.defs | 7 +++++-- arch/mips/src/pic32mz/Make.defs | 7 +++++-- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/arch/mips/include/mips32/irq.h b/arch/mips/include/mips32/irq.h index 9cbe1b5c7cf..1efe20ba783 100644 --- a/arch/mips/include/mips32/irq.h +++ b/arch/mips/include/mips32/irq.h @@ -323,6 +323,7 @@ struct xcpt_syscall_s struct xcptcontext { +#ifdef CONFIG_ENABLE_ALL_SIGNALS /* These additional register save locations are used to implement the * signal delivery trampoline. * @@ -334,6 +335,7 @@ struct xcptcontext uint32_t saved_epc; /* Trampoline PC */ uint32_t saved_status; /* Status with interrupts disabled. */ +#endif /* CONFIG_ENABLE_ALL_SIGNALS */ #ifdef CONFIG_BUILD_KERNEL /* This is the saved address to use when returning from a user-space diff --git a/arch/mips/src/pic32mx/Make.defs b/arch/mips/src/pic32mx/Make.defs index 9c0c82d5a19..d396754ca98 100644 --- a/arch/mips/src/pic32mx/Make.defs +++ b/arch/mips/src/pic32mx/Make.defs @@ -32,12 +32,15 @@ CMN_CSRCS += mips_doirq.c mips_exit.c mips_getintstack.c mips_initialize.c CMN_CSRCS += mips_initialstate.c mips_irq.c mips_lowputs.c CMN_CSRCS += mips_modifyreg8.c mips_modifyreg16.c mips_modifyreg32.c CMN_CSRCS += mips_nputs.c mips_releasestack.c mips_registerdump.c -CMN_CSRCS += mips_schedulesigaction.c mips_sigdeliver.c mips_swint0.c CMN_CSRCS += mips_stackframe.c mips_switchcontext.c mips_saveusercontext.c -CMN_CSRCS += mips_usestack.c mips_fork.c +CMN_CSRCS += mips_usestack.c mips_fork.c mips_swint0.c # Configuration dependent common files +ifeq ($(CONFIG_ENABLE_ALL_SIGNALS),y) +CMN_CSRCS += mips_schedulesigaction.c mips_sigdeliver.c +endif + ifneq ($(CONFIG_ARCH_IDLE_CUSTOM),y) CMN_CSRCS += mips_idle.c endif diff --git a/arch/mips/src/pic32mz/Make.defs b/arch/mips/src/pic32mz/Make.defs index 0fafb6de69a..b3af91a8bf7 100644 --- a/arch/mips/src/pic32mz/Make.defs +++ b/arch/mips/src/pic32mz/Make.defs @@ -32,12 +32,15 @@ CMN_CSRCS += mips_doirq.c mips_exit.c mips_getintstack.c mips_initialize.c CMN_CSRCS += mips_initialstate.c mips_irq.c mips_lowputs.c CMN_CSRCS += mips_modifyreg8.c mips_modifyreg16.c mips_modifyreg32.c CMN_CSRCS += mips_nputs.c mips_releasestack.c mips_registerdump.c -CMN_CSRCS += mips_schedulesigaction.c mips_sigdeliver.c mips_swint0.c CMN_CSRCS += mips_stackframe.c mips_switchcontext.c mips_saveusercontext.c -CMN_CSRCS += mips_usestack.c mips_fork.c +CMN_CSRCS += mips_usestack.c mips_fork.c mips_swint0.c # Configuration dependent common files +ifeq ($(CONFIG_ENABLE_ALL_SIGNALS),y) +CMN_CSRCS += mips_schedulesigaction.c mips_sigdeliver.c +endif + ifneq ($(CONFIG_ARCH_IDLE_CUSTOM),y) CMN_CSRCS += mips_idle.c endif