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) {
dbgtb.tb_ptr->cse_slpdata = otp->p_common;
dbgtb.tb_ptr->cse_wtobjp = otp->p_wtobjp;
#ifdef CH_USE_SYSTEMTIME
dbgtb.tb_ptr->cse_time = chSysGetTime();
#else

View File

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

View File

@ -53,6 +53,10 @@ struct Thread {
* thread in the system.
*/
union {
#ifdef CH_USE_TRACE
/** Kernel object where the thread is waiting on.*/
void *p_wtobjp;
#endif
#ifdef CH_USE_SEMAPHORES
/** Semaphore where the thread is waiting on (only in \p PRWTSEM state).*/
Semaphore *p_wtsemp;
@ -84,10 +88,7 @@ struct Thread {
/** Machine dependent processor context.*/
Context p_ctx;
/*
* Start of the optional fields. Note, the null thread may also let its
* 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.
* Start of the optional fields.
*/
#ifdef CH_USE_WAITEXIT
/** The list of the threads waiting for this thread termination.*/