diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2014-03-27 14:16:12 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2014-03-31 08:29:44 +0200 |
commit | 23fec9f0e18dc4913fab818118f836af150b98f3 (patch) | |
tree | 66228f23bbf654117a33e28db7a017eea21fb785 /cpukit/score/src/objectshrinkinformation.c | |
parent | score: Use thread life protection for API mutexes (diff) | |
download | rtems-23fec9f0e18dc4913fab818118f836af150b98f3.tar.bz2 |
score: PR2152: Use allocator mutex for objects
Use allocator mutex for objects allocate/free. This prevents that the
thread dispatch latency depends on the workspace/heap fragmentation.
Diffstat (limited to 'cpukit/score/src/objectshrinkinformation.c')
-rw-r--r-- | cpukit/score/src/objectshrinkinformation.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/cpukit/score/src/objectshrinkinformation.c b/cpukit/score/src/objectshrinkinformation.c index 9731c2179d..2f64cd2502 100644 --- a/cpukit/score/src/objectshrinkinformation.c +++ b/cpukit/score/src/objectshrinkinformation.c @@ -19,6 +19,7 @@ #endif #include <rtems/score/objectimpl.h> +#include <rtems/score/assert.h> #include <rtems/score/chainimpl.h> #include <rtems/score/wkspace.h> @@ -30,6 +31,8 @@ void _Objects_Shrink_information( uint32_t block; uint32_t index_base; + _Assert( _Debug_Is_owner_of_allocator() ); + /* * Search the list to find block or chunk with all objects inactive. */ @@ -55,7 +58,7 @@ void _Objects_Shrink_information( node = _Chain_Next( node ); if ( index >= index_base && index < index_end ) { - _Chain_Extract( &object->Node ); + _Chain_Extract_unprotected( &object->Node ); } } |