forked from Imagelibrary/rtems
score: Make _Once_Lock() and _Once_Unlock() static
These two functions are no longer used outside of _Once().
This commit is contained in:
@@ -57,22 +57,6 @@ extern "C" {
|
||||
*/
|
||||
int _Once( unsigned char *once_state, void ( *init_routine )( void ) );
|
||||
|
||||
/**
|
||||
* @brief Locks the Once_Information_Mutex and returns the thread life state.
|
||||
*
|
||||
* @return The thread life state (THREAD_LIFE_PROTECTED).
|
||||
*/
|
||||
Thread_Life_state _Once_Lock( void );
|
||||
|
||||
/**
|
||||
* @brief Unlocks the Once_Information_Mutex and sets the thread life
|
||||
* protection to thread_life_state.
|
||||
*
|
||||
* @param thread_life_state The thread life state to set the thread life
|
||||
* protection to.
|
||||
*/
|
||||
void _Once_Unlock( Thread_Life_state thread_life_state );
|
||||
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
@@ -59,6 +59,22 @@ static Once_Control _Once_Information = {
|
||||
.State = RTEMS_CONDITION_VARIABLE_INITIALIZER( "_Once" )
|
||||
};
|
||||
|
||||
static Thread_Life_state _Once_Lock( void )
|
||||
{
|
||||
Thread_Life_state thread_life_state;
|
||||
|
||||
thread_life_state = _Thread_Set_life_protection( THREAD_LIFE_PROTECTED );
|
||||
rtems_mutex_lock( &_Once_Information.Mutex );
|
||||
|
||||
return thread_life_state;
|
||||
}
|
||||
|
||||
static void _Once_Unlock( Thread_Life_state thread_life_state )
|
||||
{
|
||||
rtems_mutex_unlock( &_Once_Information.Mutex );
|
||||
_Thread_Set_life_protection( thread_life_state );
|
||||
}
|
||||
|
||||
int _Once( unsigned char *once_state, void ( *init_routine )( void ) )
|
||||
{
|
||||
_Atomic_Fence( ATOMIC_ORDER_ACQUIRE );
|
||||
@@ -90,19 +106,3 @@ int _Once( unsigned char *once_state, void ( *init_routine )( void ) )
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
Thread_Life_state _Once_Lock( void )
|
||||
{
|
||||
Thread_Life_state thread_life_state;
|
||||
|
||||
thread_life_state = _Thread_Set_life_protection( THREAD_LIFE_PROTECTED );
|
||||
rtems_mutex_lock( &_Once_Information.Mutex );
|
||||
|
||||
return thread_life_state;
|
||||
}
|
||||
|
||||
void _Once_Unlock( Thread_Life_state thread_life_state )
|
||||
{
|
||||
rtems_mutex_unlock( &_Once_Information.Mutex );
|
||||
_Thread_Set_life_protection( thread_life_state );
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user