diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2014-03-04 13:02:18 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2014-03-06 09:43:59 +0100 |
commit | 825cb1f1963df792957c552251df9f69453b8014 (patch) | |
tree | 5ac582e61bde01ee2041e63634f53508da78095d /cpukit | |
parent | tmtests/tm26: Fix deadlock for SMP configurations (diff) | |
download | rtems-825cb1f1963df792957c552251df9f69453b8014.tar.bz2 |
score: Delete _Thread_Dispatch_set_disable_level()
This function was only used in some tests and can be replaced with other
functions.
Diffstat (limited to 'cpukit')
-rw-r--r-- | cpukit/score/include/rtems/score/threaddispatch.h | 20 | ||||
-rw-r--r-- | cpukit/score/src/threaddispatchdisablelevel.c | 40 |
2 files changed, 0 insertions, 60 deletions
diff --git a/cpukit/score/include/rtems/score/threaddispatch.h b/cpukit/score/include/rtems/score/threaddispatch.h index cf9b801af8..54786eb62b 100644 --- a/cpukit/score/include/rtems/score/threaddispatch.h +++ b/cpukit/score/include/rtems/score/threaddispatch.h @@ -121,14 +121,6 @@ RTEMS_INLINE_ROUTINE void _Thread_Dispatch_initialization( void ) void _Giant_Drop( uint32_t self_cpu ); /** - * @brief Sets thread dispatch level to the value passed in. - * - * This routine sets thread dispatch level to the - * value passed in. - */ - uint32_t _Thread_Dispatch_set_disable_level(uint32_t value); - - /** * @brief Increments the thread dispatch level. * * This rountine increments the thread dispatch level @@ -143,18 +135,6 @@ RTEMS_INLINE_ROUTINE void _Thread_Dispatch_initialization( void ) uint32_t _Thread_Dispatch_decrement_disable_level(void); #else /* RTEMS_SMP */ /** - * @brief Set thread dispatch disable level. - * - * This routine sets thread dispatch level to the - * value passed in. - */ - RTEMS_INLINE_ROUTINE uint32_t _Thread_Dispatch_set_disable_level(uint32_t value) - { - _Thread_Dispatch_disable_level = value; - return value; - } - - /** * @brief Increase thread dispatch disable level. * * This rountine increments the thread dispatch level diff --git a/cpukit/score/src/threaddispatchdisablelevel.c b/cpukit/score/src/threaddispatchdisablelevel.c index ec5ac813d5..b6eb49f48a 100644 --- a/cpukit/score/src/threaddispatchdisablelevel.c +++ b/cpukit/score/src/threaddispatchdisablelevel.c @@ -118,46 +118,6 @@ uint32_t _Thread_Dispatch_decrement_disable_level( void ) return disable_level; } - -/* - * Note this method is taking a heavy handed approach to - * setting the dispatch level. This may be optimized at a - * later timee, but it must be in such a way that the nesting - * level is decremented by the same number as the dispatch level. - * This approach is safest until we are sure the nested spinlock - * is successfully working with smp isr source code. - */ - -uint32_t _Thread_Dispatch_set_disable_level(uint32_t value) -{ - ISR_Level isr_level; - uint32_t disable_level; - - _ISR_Disable_without_giant( isr_level ); - disable_level = _Thread_Dispatch_disable_level; - _ISR_Enable_without_giant( isr_level ); - - /* - * If we need the dispatch level to go higher - * call increment method the desired number of times. - */ - - while ( value > disable_level ) { - disable_level = _Thread_Dispatch_increment_disable_level(); - } - - /* - * If we need the dispatch level to go lower - * call increment method the desired number of times. - */ - - while ( value < disable_level ) { - disable_level = _Thread_Dispatch_decrement_disable_level(); - } - - return value; -} - void _Giant_Acquire( void ) { ISR_Level isr_level; |