diff options
Diffstat (limited to 'cpukit/score/src/userextremoveset.c')
-rw-r--r-- | cpukit/score/src/userextremoveset.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/cpukit/score/src/userextremoveset.c b/cpukit/score/src/userextremoveset.c index 5b3fdd1aea..b25cc344b4 100644 --- a/cpukit/score/src/userextremoveset.c +++ b/cpukit/score/src/userextremoveset.c @@ -20,16 +20,21 @@ #endif #include <rtems/score/userextimpl.h> -#include <rtems/score/objectimpl.h> #include <rtems/score/percpu.h> void _User_extensions_Remove_set ( User_extensions_Control *the_extension ) { - _Assert( _Objects_Allocator_is_owner() ); + ISR_lock_Context lock_context; + _User_extensions_Acquire( &lock_context ); + _Chain_Iterator_registry_update( + &_User_extensions_List.Iterators, + &the_extension->Node + ); _Chain_Extract_unprotected( &the_extension->Node ); + _User_extensions_Release( &lock_context ); /* * If a switch handler is present, remove it. |