git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@171 35acf78f-673a-0410-8e92-d51de3d6d3f4

master
gdisirio 2008-01-08 18:56:16 +00:00
parent ba030d32c3
commit 82054b1941
3 changed files with 7 additions and 6 deletions

View File

@ -58,7 +58,7 @@ TraceBuffer dbgtb;
*/ */
void chDbgTrace(Thread *otp, Thread *ntp) { void chDbgTrace(Thread *otp, Thread *ntp) {
dbgtb.tb_ptr->cse_slpdata = otp->p_common; dbgtb.tb_ptr->cse_wtobjp = otp->p_wtobjp;
#ifdef CH_USE_SYSTEMTIME #ifdef CH_USE_SYSTEMTIME
dbgtb.tb_ptr->cse_time = chSysGetTime(); dbgtb.tb_ptr->cse_time = chSysGetTime();
#else #else

View File

@ -37,7 +37,7 @@
#define MEM_FILL_PATTERN 0x55 #define MEM_FILL_PATTERN 0x55
typedef struct { typedef struct {
void *cse_slpdata; void *cse_wtobjp;
t_time cse_time; t_time cse_time;
UWORD16 cse_state: 4; UWORD16 cse_state: 4;
UWORD16 cse_tid: 12; UWORD16 cse_tid: 12;

View File

@ -53,6 +53,10 @@ struct Thread {
* thread in the system. * thread in the system.
*/ */
union { union {
#ifdef CH_USE_TRACE
/** Kernel object where the thread is waiting on.*/
void *p_wtobjp;
#endif
#ifdef CH_USE_SEMAPHORES #ifdef CH_USE_SEMAPHORES
/** Semaphore where the thread is waiting on (only in \p PRWTSEM state).*/ /** Semaphore where the thread is waiting on (only in \p PRWTSEM state).*/
Semaphore *p_wtsemp; Semaphore *p_wtsemp;
@ -84,10 +88,7 @@ struct Thread {
/** Machine dependent processor context.*/ /** Machine dependent processor context.*/
Context p_ctx; Context p_ctx;
/* /*
* Start of the optional fields. Note, the null thread may also let its * Start of the optional fields.
* stack overwrite the following fields since it never uses semaphores,
* events, messages, exit etc, this can save some space on RAM starved
* systems, be caruful in doing so.
*/ */
#ifdef CH_USE_WAITEXIT #ifdef CH_USE_WAITEXIT
/** The list of the threads waiting for this thread termination.*/ /** The list of the threads waiting for this thread termination.*/