Revert "Reduce the size of tcb by four bytes."

This reverts commit 893c5e92c2.
This commit is contained in:
wangzhi16
2025-05-27 10:56:42 +08:00
committed by Xiang Xiao
parent 17476346d1
commit 35a62b7d5e
70 changed files with 267 additions and 369 deletions
@@ -34,7 +34,6 @@
#include <nuttx/arch.h>
#include "sched/sched.h"
#include "signal/signal.h"
#include "sparc_internal.h"
/****************************************************************************
@@ -94,8 +93,8 @@ void up_schedule_sigaction(struct tcb_s *tcb)
{
/* In this case just deliver the signal now. */
nxsig_deliver(tcb);
tcb->flags &= ~TCB_FLAG_SIGDELIVER;
(tcb->sigdeliver)(tcb);
tcb->sigdeliver = NULL;
}
/* CASE 2: We are in an interrupt handler AND the
@@ -193,8 +192,8 @@ void up_schedule_sigaction(struct tcb_s *tcb)
* REVISIT: Signal handler will run in a critical section!
*/
nxsig_deliver(tcb);
tcb->flags &= ~TCB_FLAG_SIGDELIVER;
(tcb->sigdeliver)(tcb);
tcb->sigdeliver = NULL;
}
/* CASE 2: The task that needs to receive the signal is running.
@@ -38,7 +38,6 @@
#include <arch/board/board.h>
#include "sched/sched.h"
#include "signal/signal.h"
#include "sparc_internal.h"
/****************************************************************************
@@ -79,9 +78,9 @@ void sparc_sigdeliver(void)
board_autoled_on(LED_SIGNAL);
sinfo("rtcb=%p sigpendactionq.head=%p\n",
rtcb, rtcb->sigpendactionq.head);
DEBUGASSERT((rtcb->flags & TCB_FLAG_SIGDELIVER) != 0);
sinfo("rtcb=%p sigdeliver=%p sigpendactionq.head=%p\n",
rtcb, rtcb->sigdeliver, rtcb->sigpendactionq.head);
DEBUGASSERT(rtcb->sigdeliver != NULL);
/* Save the return state on the stack. */
@@ -117,7 +116,7 @@ retry:
/* Deliver the signal */
nxsig_deliver(rtcb);
(rtcb->sigdeliver)(rtcb);
/* Output any debug messages BEFORE restoring errno (because they may
* alter errno), then disable interrupts again and restore the original
@@ -169,7 +168,7 @@ retry:
regs[REG_PC] = rtcb->xcp.saved_pc;
regs[REG_NPC] = rtcb->xcp.saved_npc;
regs[REG_PSR] = rtcb->xcp.saved_status;
rtcb->flags &= ~TCB_FLAG_SIGDELIVER;
rtcb->sigdeliver = NULL; /* Allows next handler to be scheduled */
#ifdef CONFIG_SMP
/* Restore the saved 'irqcount' and recover the critical section