Rename prvGetCurrentTaskTCB to prvGetCurrentTCB

This commit is contained in:
Ching-Hsin,Lee 2024-07-08 17:25:04 +08:00
parent e43f7d808b
commit 926224e7fd

94
tasks.c
View file

@ -86,7 +86,7 @@
#define taskYIELD_ANY_CORE_IF_USING_PREEMPTION( pxTCB ) \ #define taskYIELD_ANY_CORE_IF_USING_PREEMPTION( pxTCB ) \
do { \ do { \
if( ( prvGetCurrentTaskTCBUnsafe()->uxPriority ) < ( pxTCB )->uxPriority ) \ if( ( prvGetCurrentTCBUnsafe()->uxPriority ) < ( pxTCB )->uxPriority ) \
{ \ { \
portYIELD_WITHIN_API(); \ portYIELD_WITHIN_API(); \
} \ } \
@ -188,7 +188,7 @@
\ \
/* listGET_OWNER_OF_NEXT_ENTRY indexes through the list, so the tasks of \ /* listGET_OWNER_OF_NEXT_ENTRY indexes through the list, so the tasks of \
* the same priority get an equal share of the processor time. */ \ * the same priority get an equal share of the processor time. */ \
listGET_OWNER_OF_NEXT_ENTRY( prvGetCurrentTaskTCBUnsafe(), &( pxReadyTasksLists[ uxTopPriority ] ) ); \ listGET_OWNER_OF_NEXT_ENTRY( prvGetCurrentTCBUnsafe(), &( pxReadyTasksLists[ uxTopPriority ] ) ); \
uxTopReadyPriority = uxTopPriority; \ uxTopReadyPriority = uxTopPriority; \
} while( 0 ) /* taskSELECT_HIGHEST_PRIORITY_TASK */ } while( 0 ) /* taskSELECT_HIGHEST_PRIORITY_TASK */
#else /* if ( configNUMBER_OF_CORES == 1 ) */ #else /* if ( configNUMBER_OF_CORES == 1 ) */
@ -223,7 +223,7 @@
/* Find the highest priority list that contains ready tasks. */ \ /* Find the highest priority list that contains ready tasks. */ \
portGET_HIGHEST_PRIORITY( uxTopPriority, uxTopReadyPriority ); \ portGET_HIGHEST_PRIORITY( uxTopPriority, uxTopReadyPriority ); \
configASSERT( listCURRENT_LIST_LENGTH( &( pxReadyTasksLists[ uxTopPriority ] ) ) > 0 ); \ configASSERT( listCURRENT_LIST_LENGTH( &( pxReadyTasksLists[ uxTopPriority ] ) ) > 0 ); \
listGET_OWNER_OF_NEXT_ENTRY( prvGetCurrentTaskTCBUnsafe(), &( pxReadyTasksLists[ uxTopPriority ] ) ); \ listGET_OWNER_OF_NEXT_ENTRY( prvGetCurrentTCBUnsafe(), &( pxReadyTasksLists[ uxTopPriority ] ) ); \
} while( 0 ) } while( 0 )
/*-----------------------------------------------------------*/ /*-----------------------------------------------------------*/
@ -280,7 +280,7 @@
* task should be used in place of the parameter. This macro simply checks to * task should be used in place of the parameter. This macro simply checks to
* see if the parameter is NULL and returns a pointer to the appropriate TCB. * see if the parameter is NULL and returns a pointer to the appropriate TCB.
*/ */
#define prvGetTCBFromHandle( pxHandle ) ( ( ( pxHandle ) == NULL ) ? prvGetCurrentTaskTCB() : ( pxHandle ) ) #define prvGetTCBFromHandle( pxHandle ) ( ( ( pxHandle ) == NULL ) ? prvGetCurrentTCB() : ( pxHandle ) )
/* The item value of the event list item is normally used to hold the priority /* The item value of the event list item is normally used to hold the priority
* of the task to which it belongs (coded to allow it to be held in reverse * of the task to which it belongs (coded to allow it to be held in reverse
@ -306,8 +306,8 @@
/* Returns pdTRUE if the task is actively running and not scheduled to yield. */ /* Returns pdTRUE if the task is actively running and not scheduled to yield. */
#if ( configNUMBER_OF_CORES == 1 ) #if ( configNUMBER_OF_CORES == 1 )
#define taskTASK_IS_RUNNING( pxTCB ) ( ( ( pxTCB ) == prvGetCurrentTaskTCBUnsafe() ) ? ( pdTRUE ) : ( pdFALSE ) ) #define taskTASK_IS_RUNNING( pxTCB ) ( ( ( pxTCB ) == prvGetCurrentTCBUnsafe() ) ? ( pdTRUE ) : ( pdFALSE ) )
#define taskTASK_IS_RUNNING_OR_SCHEDULED_TO_YIELD( pxTCB ) ( ( ( pxTCB ) == prvGetCurrentTaskTCBUnsafe() ) ? ( pdTRUE ) : ( pdFALSE ) ) #define taskTASK_IS_RUNNING_OR_SCHEDULED_TO_YIELD( pxTCB ) ( ( ( pxTCB ) == prvGetCurrentTCBUnsafe() ) ? ( pdTRUE ) : ( pdFALSE ) )
#else #else
#define taskTASK_IS_RUNNING( pxTCB ) ( ( ( ( pxTCB )->xTaskRunState >= ( BaseType_t ) 0 ) && ( ( pxTCB )->xTaskRunState < ( BaseType_t ) configNUMBER_OF_CORES ) ) ? ( pdTRUE ) : ( pdFALSE ) ) #define taskTASK_IS_RUNNING( pxTCB ) ( ( ( ( pxTCB )->xTaskRunState >= ( BaseType_t ) 0 ) && ( ( pxTCB )->xTaskRunState < ( BaseType_t ) configNUMBER_OF_CORES ) ) ? ( pdTRUE ) : ( pdFALSE ) )
#define taskTASK_IS_RUNNING_OR_SCHEDULED_TO_YIELD( pxTCB ) ( ( ( pxTCB )->xTaskRunState != taskTASK_NOT_RUNNING ) ? ( pdTRUE ) : ( pdFALSE ) ) #define taskTASK_IS_RUNNING_OR_SCHEDULED_TO_YIELD( pxTCB ) ( ( ( pxTCB )->xTaskRunState != taskTASK_NOT_RUNNING ) ? ( pdTRUE ) : ( pdFALSE ) )
@ -317,10 +317,10 @@
#define taskATTRIBUTE_IS_IDLE ( UBaseType_t ) ( 1U << 0U ) #define taskATTRIBUTE_IS_IDLE ( UBaseType_t ) ( 1U << 0U )
#if ( ( configNUMBER_OF_CORES > 1 ) && ( portCRITICAL_NESTING_IN_TCB == 1 ) ) #if ( ( configNUMBER_OF_CORES > 1 ) && ( portCRITICAL_NESTING_IN_TCB == 1 ) )
#define portGET_CRITICAL_NESTING_COUNT() ( prvGetCurrentTaskTCBUnsafe()->uxCriticalNesting ) #define portGET_CRITICAL_NESTING_COUNT() ( prvGetCurrentTCBUnsafe()->uxCriticalNesting )
#define portSET_CRITICAL_NESTING_COUNT( x ) ( prvGetCurrentTaskTCBUnsafe()->uxCriticalNesting = ( x ) ) #define portSET_CRITICAL_NESTING_COUNT( x ) ( prvGetCurrentTCBUnsafe()->uxCriticalNesting = ( x ) )
#define portINCREMENT_CRITICAL_NESTING_COUNT() ( prvGetCurrentTaskTCBUnsafe()->uxCriticalNesting++ ) #define portINCREMENT_CRITICAL_NESTING_COUNT() ( prvGetCurrentTCBUnsafe()->uxCriticalNesting++ )
#define portDECREMENT_CRITICAL_NESTING_COUNT() ( prvGetCurrentTaskTCBUnsafe()->uxCriticalNesting-- ) #define portDECREMENT_CRITICAL_NESTING_COUNT() ( prvGetCurrentTCBUnsafe()->uxCriticalNesting-- )
#endif /* #if ( ( configNUMBER_OF_CORES > 1 ) && ( portCRITICAL_NESTING_IN_TCB == 1 ) ) */ #endif /* #if ( ( configNUMBER_OF_CORES > 1 ) && ( portCRITICAL_NESTING_IN_TCB == 1 ) ) */
#define taskBITS_PER_BYTE ( ( size_t ) 8 ) #define taskBITS_PER_BYTE ( ( size_t ) 8 )
@ -350,17 +350,17 @@
#endif /* #if ( configNUMBER_OF_CORES > 1 ) */ #endif /* #if ( configNUMBER_OF_CORES > 1 ) */
#if ( configNUMBER_OF_CORES == 1 ) #if ( configNUMBER_OF_CORES == 1 )
#define prvGetCurrentTaskTCB() pxCurrentTCB #define prvGetCurrentTCB() pxCurrentTCB
#define prvGetCurrentTaskTCBUnsafe() pxCurrentTCB #define prvGetCurrentTCBUnsafe() pxCurrentTCB
#else #else
/* Retrieving the current task TCB in a multi-core environment involves two steps: /* Retrieving the current task TCB in a multi-core environment involves two steps:
* 1. Obtaining the core ID. * 1. Obtaining the core ID.
* 2. Using the core ID to index the pxCurrentTCBs array. * 2. Using the core ID to index the pxCurrentTCBs array.
* If these two steps are not performed atomically, a race condition may occur. * If these two steps are not performed atomically, a race condition may occur.
* To ensure atomicity, prvGetCurrentTaskTCBUnsafe() should be called in a context where * To ensure atomicity, prvGetCurrentTCBUnsafe() should be called in a context where
* the core executing the task remains fixed until the operation is completed. */ * the core executing the task remains fixed until the operation is completed. */
#define prvGetCurrentTaskTCBUnsafe() pxCurrentTCBs[ portGET_CORE_ID() ] #define prvGetCurrentTCBUnsafe() pxCurrentTCBs[ portGET_CORE_ID() ]
#endif /* if ( configNUMBER_OF_CORES == 1 ) */ #endif /* if ( configNUMBER_OF_CORES == 1 ) */
/*-----------------------------------------------------------*/ /*-----------------------------------------------------------*/
@ -551,7 +551,7 @@ static BaseType_t prvCreateIdleTasks( void );
* The race condition safe version to get the current task TCB in multiple cores * The race condition safe version to get the current task TCB in multiple cores
* environment. * environment.
*/ */
static TCB_t * prvGetCurrentTaskTCB( void ); static TCB_t * prvGetCurrentTCB( void );
#endif /* #if ( configNUMBER_OF_CORES > 1 ) */ #endif /* #if ( configNUMBER_OF_CORES > 1 ) */
#if ( configNUMBER_OF_CORES > 1 ) #if ( configNUMBER_OF_CORES > 1 )
@ -827,14 +827,14 @@ static void prvAddNewTaskToReadyList( TCB_t * pxNewTCB ) PRIVILEGED_FUNCTION;
#if ( configNUMBER_OF_CORES > 1 ) #if ( configNUMBER_OF_CORES > 1 )
static TCB_t * prvGetCurrentTaskTCB( void ) static TCB_t * prvGetCurrentTCB( void )
{ {
TCB_t * pxTCB; TCB_t * pxTCB;
UBaseType_t uxSavedInterruptStatus; UBaseType_t uxSavedInterruptStatus;
uxSavedInterruptStatus = portSET_INTERRUPT_MASK(); uxSavedInterruptStatus = portSET_INTERRUPT_MASK();
{ {
pxTCB = prvGetCurrentTaskTCBUnsafe(); pxTCB = prvGetCurrentTCBUnsafe();
} }
portCLEAR_INTERRUPT_MASK( uxSavedInterruptStatus ); portCLEAR_INTERRUPT_MASK( uxSavedInterruptStatus );
@ -855,7 +855,7 @@ static void prvAddNewTaskToReadyList( TCB_t * pxNewTCB ) PRIVILEGED_FUNCTION;
/* This function is always called with interrupts disabled /* This function is always called with interrupts disabled
* so this is safe. */ * so this is safe. */
pxThisTCB = prvGetCurrentTaskTCBUnsafe(); pxThisTCB = prvGetCurrentTCBUnsafe();
while( pxThisTCB->xTaskRunState == taskTASK_SCHEDULED_TO_YIELD ) while( pxThisTCB->xTaskRunState == taskTASK_SCHEDULED_TO_YIELD )
{ {
@ -1013,7 +1013,7 @@ static void prvAddNewTaskToReadyList( TCB_t * pxNewTCB ) PRIVILEGED_FUNCTION;
#if ( configRUN_MULTIPLE_PRIORITIES == 0 ) #if ( configRUN_MULTIPLE_PRIORITIES == 0 )
{ {
TCB_t * const pxConstCurrentTCB = prvGetCurrentTaskTCBUnsafe(); TCB_t * const pxConstCurrentTCB = prvGetCurrentTCBUnsafe();
/* Verify that the calling core always yields to higher priority tasks. */ /* Verify that the calling core always yields to higher priority tasks. */
if( ( ( pxConstCurrentTCB->uxTaskAttributes & taskATTRIBUTE_IS_IDLE ) == 0U ) && if( ( ( pxConstCurrentTCB->uxTaskAttributes & taskATTRIBUTE_IS_IDLE ) == 0U ) &&
@ -2075,7 +2075,7 @@ static void prvInitialiseNewTask( TaskFunction_t pxTaskCode,
uxCurrentNumberOfTasks = ( UBaseType_t ) ( uxCurrentNumberOfTasks + 1U ); uxCurrentNumberOfTasks = ( UBaseType_t ) ( uxCurrentNumberOfTasks + 1U );
/* Invoking a function in a condition here for performance consideration. */ /* Invoking a function in a condition here for performance consideration. */
if( prvGetCurrentTaskTCBUnsafe() == NULL ) if( prvGetCurrentTCBUnsafe() == NULL )
{ {
/* There are no other tasks, or all the other tasks are in /* There are no other tasks, or all the other tasks are in
* the suspended state - make this the current task. */ * the suspended state - make this the current task. */
@ -2869,7 +2869,7 @@ static void prvInitialiseNewTask( TaskFunction_t pxTaskCode,
/* The priority of a task other than the currently /* The priority of a task other than the currently
* running task is being raised. Is the priority being * running task is being raised. Is the priority being
* raised above that of the running task? */ * raised above that of the running task? */
if( uxNewPriority > prvGetCurrentTaskTCBUnsafe()->uxPriority ) if( uxNewPriority > prvGetCurrentTCBUnsafe()->uxPriority )
{ {
xYieldRequired = pdTRUE; xYieldRequired = pdTRUE;
} }
@ -3506,7 +3506,7 @@ static void prvInitialiseNewTask( TaskFunction_t pxTaskCode,
{ {
/* Ready lists can be accessed so move the task from the /* Ready lists can be accessed so move the task from the
* suspended list to the ready list directly. */ * suspended list to the ready list directly. */
if( pxTCB->uxPriority > prvGetCurrentTaskTCBUnsafe()->uxPriority ) if( pxTCB->uxPriority > prvGetCurrentTCBUnsafe()->uxPriority )
{ {
xYieldRequired = pdTRUE; xYieldRequired = pdTRUE;
@ -3764,7 +3764,7 @@ void vTaskStartScheduler( void )
{ {
/* Switch C-Runtime's TLS Block to point to the TLS /* Switch C-Runtime's TLS Block to point to the TLS
* block specific to the task that will run first. */ * block specific to the task that will run first. */
configSET_TLS_BLOCK( prvGetCurrentTaskTCBUnsafe()->xTLSBlock ); configSET_TLS_BLOCK( prvGetCurrentTCBUnsafe()->xTLSBlock );
} }
#endif #endif
@ -3948,7 +3948,7 @@ void vTaskSuspendAll( void )
{ {
TickType_t xReturn; TickType_t xReturn;
BaseType_t xHigherPriorityReadyTasks = pdFALSE; BaseType_t xHigherPriorityReadyTasks = pdFALSE;
TCB_t * const pxConstCurrentTCB = prvGetCurrentTaskTCB(); TCB_t * const pxConstCurrentTCB = prvGetCurrentTCB();
/* xHigherPriorityReadyTasks takes care of the case where /* xHigherPriorityReadyTasks takes care of the case where
* configUSE_PREEMPTION is 0, so there may be tasks above the idle priority * configUSE_PREEMPTION is 0, so there may be tasks above the idle priority
@ -4055,7 +4055,7 @@ BaseType_t xTaskResumeAll( void )
{ {
/* If the moved task has a priority higher than the current /* If the moved task has a priority higher than the current
* task then a yield must be performed. */ * task then a yield must be performed. */
if( pxTCB->uxPriority > prvGetCurrentTaskTCBUnsafe()->uxPriority ) if( pxTCB->uxPriority > prvGetCurrentTCBUnsafe()->uxPriority )
{ {
xYieldPendings[ xCoreID ] = pdTRUE; xYieldPendings[ xCoreID ] = pdTRUE;
} }
@ -4132,7 +4132,7 @@ BaseType_t xTaskResumeAll( void )
#if ( configNUMBER_OF_CORES == 1 ) #if ( configNUMBER_OF_CORES == 1 )
{ {
taskYIELD_TASK_CORE_IF_USING_PREEMPTION( prvGetCurrentTaskTCBUnsafe() ); taskYIELD_TASK_CORE_IF_USING_PREEMPTION( prvGetCurrentTCBUnsafe() );
} }
#endif /* #if ( configNUMBER_OF_CORES == 1 ) */ #endif /* #if ( configNUMBER_OF_CORES == 1 ) */
} }
@ -4682,7 +4682,7 @@ BaseType_t xTaskCatchUpTicks( TickType_t xTicksToCatchUp )
/* Preemption is on, but a context switch should only be /* Preemption is on, but a context switch should only be
* performed if the unblocked task has a priority that is * performed if the unblocked task has a priority that is
* higher than the currently executing task. */ * higher than the currently executing task. */
if( pxTCB->uxPriority > prvGetCurrentTaskTCB()->uxPriority ) if( pxTCB->uxPriority > prvGetCurrentTCB()->uxPriority )
{ {
/* Pend the yield to be performed when the scheduler /* Pend the yield to be performed when the scheduler
* is unsuspended. */ * is unsuspended. */
@ -4829,7 +4829,7 @@ BaseType_t xTaskIncrementTick( void )
{ {
#if ( configNUMBER_OF_CORES == 1 ) #if ( configNUMBER_OF_CORES == 1 )
{ {
TCB_t * const pxConstCurrentTCB = prvGetCurrentTaskTCBUnsafe(); TCB_t * const pxConstCurrentTCB = prvGetCurrentTCBUnsafe();
/* Preemption is on, but a context switch should /* Preemption is on, but a context switch should
* only be performed if the unblocked task's * only be performed if the unblocked task's
@ -4866,7 +4866,7 @@ BaseType_t xTaskIncrementTick( void )
{ {
#if ( configNUMBER_OF_CORES == 1 ) #if ( configNUMBER_OF_CORES == 1 )
{ {
if( listCURRENT_LIST_LENGTH( &( pxReadyTasksLists[ prvGetCurrentTaskTCBUnsafe()->uxPriority ] ) ) > 1U ) if( listCURRENT_LIST_LENGTH( &( pxReadyTasksLists[ prvGetCurrentTCBUnsafe()->uxPriority ] ) ) > 1U )
{ {
xSwitchRequired = pdTRUE; xSwitchRequired = pdTRUE;
} }
@ -5255,7 +5255,7 @@ BaseType_t xTaskIncrementTick( void )
/* Macro to inject port specific behaviour immediately after /* Macro to inject port specific behaviour immediately after
* switching tasks, such as setting an end of stack watchpoint * switching tasks, such as setting an end of stack watchpoint
* or reconfiguring the MPU. */ * or reconfiguring the MPU. */
portTASK_SWITCH_HOOK( prvGetCurrentTaskTCBUnsafe() ); portTASK_SWITCH_HOOK( prvGetCurrentTCBUnsafe() );
/* After the new task is switched in, update the global errno. */ /* After the new task is switched in, update the global errno. */
#if ( configUSE_POSIX_ERRNO == 1 ) #if ( configUSE_POSIX_ERRNO == 1 )
@ -5302,7 +5302,7 @@ void vTaskPlaceOnEventList( List_t * const pxEventList,
* *
* The queue that contains the event list is locked, preventing * The queue that contains the event list is locked, preventing
* simultaneous access from interrupts. */ * simultaneous access from interrupts. */
vListInsert( pxEventList, &( prvGetCurrentTaskTCBUnsafe()->xEventListItem ) ); vListInsert( pxEventList, &( prvGetCurrentTCBUnsafe()->xEventListItem ) );
prvAddCurrentTaskToDelayedList( xTicksToWait, pdTRUE ); prvAddCurrentTaskToDelayedList( xTicksToWait, pdTRUE );
@ -5314,7 +5314,7 @@ void vTaskPlaceOnUnorderedEventList( List_t * pxEventList,
const TickType_t xItemValue, const TickType_t xItemValue,
const TickType_t xTicksToWait ) const TickType_t xTicksToWait )
{ {
TCB_t * const pxConstCurrentTCB = prvGetCurrentTaskTCBUnsafe(); TCB_t * const pxConstCurrentTCB = prvGetCurrentTCBUnsafe();
traceENTER_vTaskPlaceOnUnorderedEventList( pxEventList, xItemValue, xTicksToWait ); traceENTER_vTaskPlaceOnUnorderedEventList( pxEventList, xItemValue, xTicksToWait );
@ -5362,7 +5362,7 @@ void vTaskPlaceOnUnorderedEventList( List_t * pxEventList,
* In this case it is assume that this is the only task that is going to * In this case it is assume that this is the only task that is going to
* be waiting on this event list, so the faster vListInsertEnd() function * be waiting on this event list, so the faster vListInsertEnd() function
* can be used in place of vListInsert. */ * can be used in place of vListInsert. */
listINSERT_END( pxEventList, &( prvGetCurrentTaskTCBUnsafe()->xEventListItem ) ); listINSERT_END( pxEventList, &( prvGetCurrentTCBUnsafe()->xEventListItem ) );
/* If the task should block indefinitely then set the block time to a /* If the task should block indefinitely then set the block time to a
* value that will be recognised as an indefinite delay inside the * value that will be recognised as an indefinite delay inside the
@ -5436,7 +5436,7 @@ BaseType_t xTaskRemoveFromEventList( const List_t * const pxEventList )
#if ( configNUMBER_OF_CORES == 1 ) #if ( configNUMBER_OF_CORES == 1 )
{ {
if( pxUnblockedTCB->uxPriority > prvGetCurrentTaskTCBUnsafe()->uxPriority ) if( pxUnblockedTCB->uxPriority > prvGetCurrentTCBUnsafe()->uxPriority )
{ {
/* Return true if the task removed from the event list has a higher /* Return true if the task removed from the event list has a higher
* priority than the calling task. This allows the calling task to know if * priority than the calling task. This allows the calling task to know if
@ -5519,7 +5519,7 @@ void vTaskRemoveFromUnorderedEventList( ListItem_t * pxEventListItem,
#if ( configNUMBER_OF_CORES == 1 ) #if ( configNUMBER_OF_CORES == 1 )
{ {
if( pxUnblockedTCB->uxPriority > prvGetCurrentTaskTCBUnsafe()->uxPriority ) if( pxUnblockedTCB->uxPriority > prvGetCurrentTCBUnsafe()->uxPriority )
{ {
/* The unblocked task has a priority above that of the calling task, so /* The unblocked task has a priority above that of the calling task, so
* a context switch is required. This function is called with the * a context switch is required. This function is called with the
@ -5580,7 +5580,7 @@ BaseType_t xTaskCheckForTimeOut( TimeOut_t * const pxTimeOut,
BaseType_t xReturn; BaseType_t xReturn;
#if ( INCLUDE_xTaskAbortDelay == 1 ) #if ( INCLUDE_xTaskAbortDelay == 1 )
TCB_t * const pxConstCurrentTCB = prvGetCurrentTaskTCBUnsafe(); TCB_t * const pxConstCurrentTCB = prvGetCurrentTCBUnsafe();
#endif #endif
traceENTER_xTaskCheckForTimeOut( pxTimeOut, pxTicksToWait ); traceENTER_xTaskCheckForTimeOut( pxTimeOut, pxTicksToWait );
@ -6535,7 +6535,7 @@ static void prvResetNextTaskUnblockTime( void )
/* In SMP environment, interrupt must be disabled to get the current /* In SMP environment, interrupt must be disabled to get the current
* task TCB. */ * task TCB. */
xReturn = prvGetCurrentTaskTCB(); xReturn = prvGetCurrentTCB();
traceRETURN_xTaskGetCurrentTaskHandle( xReturn ); traceRETURN_xTaskGetCurrentTaskHandle( xReturn );
@ -6612,7 +6612,7 @@ static void prvResetNextTaskUnblockTime( void )
TCB_t * const pxMutexHolderTCB = pxMutexHolder; TCB_t * const pxMutexHolderTCB = pxMutexHolder;
BaseType_t xReturn = pdFALSE; BaseType_t xReturn = pdFALSE;
TCB_t * const pxConstCurrentTCB = prvGetCurrentTaskTCBUnsafe(); TCB_t * const pxConstCurrentTCB = prvGetCurrentTCBUnsafe();
traceENTER_xTaskPriorityInherit( pxMutexHolder ); traceENTER_xTaskPriorityInherit( pxMutexHolder );
@ -6959,7 +6959,7 @@ static void prvResetNextTaskUnblockTime( void )
if( xSchedulerRunning != pdFALSE ) if( xSchedulerRunning != pdFALSE )
{ {
TCB_t * const pxConstCurrentTCB = prvGetCurrentTaskTCBUnsafe(); TCB_t * const pxConstCurrentTCB = prvGetCurrentTCBUnsafe();
( pxConstCurrentTCB->uxCriticalNesting )++; ( pxConstCurrentTCB->uxCriticalNesting )++;
@ -7071,7 +7071,7 @@ static void prvResetNextTaskUnblockTime( void )
void vTaskExitCritical( void ) void vTaskExitCritical( void )
{ {
TCB_t * const pxConstCurrentTCB = prvGetCurrentTaskTCBUnsafe(); TCB_t * const pxConstCurrentTCB = prvGetCurrentTCBUnsafe();
traceENTER_vTaskExitCritical(); traceENTER_vTaskExitCritical();
@ -7606,7 +7606,7 @@ TickType_t uxTaskResetEventItemValue( void )
{ {
TickType_t uxReturn; TickType_t uxReturn;
TCB_t * const pxConstCurrentTCB = prvGetCurrentTaskTCBUnsafe(); TCB_t * const pxConstCurrentTCB = prvGetCurrentTCBUnsafe();
traceENTER_uxTaskResetEventItemValue(); traceENTER_uxTaskResetEventItemValue();
@ -7631,7 +7631,7 @@ TickType_t uxTaskResetEventItemValue( void )
traceENTER_pvTaskIncrementMutexHeldCount(); traceENTER_pvTaskIncrementMutexHeldCount();
/* This API should be called in critical section only. */ /* This API should be called in critical section only. */
pxTCB = prvGetCurrentTaskTCBUnsafe(); pxTCB = prvGetCurrentTCBUnsafe();
/* If xSemaphoreCreateMutex() is called before any tasks have been created /* If xSemaphoreCreateMutex() is called before any tasks have been created
* then pxCurrentTCB will be NULL. */ * then pxCurrentTCB will be NULL. */
@ -7656,7 +7656,7 @@ TickType_t uxTaskResetEventItemValue( void )
{ {
uint32_t ulReturn; uint32_t ulReturn;
BaseType_t xAlreadyYielded, xShouldBlock = pdFALSE; BaseType_t xAlreadyYielded, xShouldBlock = pdFALSE;
TCB_t * const pxConstCurrentTCB = prvGetCurrentTaskTCB(); TCB_t * const pxConstCurrentTCB = prvGetCurrentTCB();
traceENTER_ulTaskGenericNotifyTake( uxIndexToWaitOn, xClearCountOnExit, xTicksToWait ); traceENTER_ulTaskGenericNotifyTake( uxIndexToWaitOn, xClearCountOnExit, xTicksToWait );
@ -7761,7 +7761,7 @@ TickType_t uxTaskResetEventItemValue( void )
TickType_t xTicksToWait ) TickType_t xTicksToWait )
{ {
BaseType_t xReturn, xAlreadyYielded, xShouldBlock = pdFALSE; BaseType_t xReturn, xAlreadyYielded, xShouldBlock = pdFALSE;
TCB_t * const pxConstCurrentTCB = prvGetCurrentTaskTCB(); TCB_t * const pxConstCurrentTCB = prvGetCurrentTCB();
traceENTER_xTaskGenericNotifyWait( uxIndexToWaitOn, ulBitsToClearOnEntry, ulBitsToClearOnExit, pulNotificationValue, xTicksToWait ); traceENTER_xTaskGenericNotifyWait( uxIndexToWaitOn, ulBitsToClearOnEntry, ulBitsToClearOnExit, pulNotificationValue, xTicksToWait );
@ -8106,7 +8106,7 @@ TickType_t uxTaskResetEventItemValue( void )
#if ( configNUMBER_OF_CORES == 1 ) #if ( configNUMBER_OF_CORES == 1 )
{ {
if( pxTCB->uxPriority > prvGetCurrentTaskTCBUnsafe()->uxPriority ) if( pxTCB->uxPriority > prvGetCurrentTCBUnsafe()->uxPriority )
{ {
/* The notified task has a priority above the currently /* The notified task has a priority above the currently
* executing task so a yield is required. */ * executing task so a yield is required. */
@ -8224,7 +8224,7 @@ TickType_t uxTaskResetEventItemValue( void )
#if ( configNUMBER_OF_CORES == 1 ) #if ( configNUMBER_OF_CORES == 1 )
{ {
TCB_t * const pxConstCurrentTCB = prvGetCurrentTaskTCBUnsafe(); TCB_t * const pxConstCurrentTCB = prvGetCurrentTCBUnsafe();
if( pxTCB->uxPriority > pxConstCurrentTCB->uxPriority ) if( pxTCB->uxPriority > pxConstCurrentTCB->uxPriority )
{ {
@ -8462,7 +8462,7 @@ static void prvAddCurrentTaskToDelayedList( TickType_t xTicksToWait,
const TickType_t xConstTickCount = xTickCount; const TickType_t xConstTickCount = xTickCount;
List_t * const pxDelayedList = pxDelayedTaskList; List_t * const pxDelayedList = pxDelayedTaskList;
List_t * const pxOverflowDelayedList = pxOverflowDelayedTaskList; List_t * const pxOverflowDelayedList = pxOverflowDelayedTaskList;
TCB_t * const pxConstCurrentTCB = prvGetCurrentTaskTCBUnsafe(); TCB_t * const pxConstCurrentTCB = prvGetCurrentTCBUnsafe();
#if ( INCLUDE_xTaskAbortDelay == 1 ) #if ( INCLUDE_xTaskAbortDelay == 1 )
{ {