Changeset 865f110b in rtems


Ignore:
Timestamp:
Mar 22, 2016, 6:58:41 AM (4 years ago)
Author:
Sebastian Huber <sebastian.huber@…>
Branches:
master
Children:
9e2acee
Parents:
c61431f9
git-author:
Sebastian Huber <sebastian.huber@…> (03/22/16 06:58:41)
git-committer:
Sebastian Huber <sebastian.huber@…> (03/22/16 07:05:28)
Message:

score: Fix for RTEMS_DEBUG

The rtems_extension_create() no longer uses the Giant lock. Ensure that
we call _User_extensions_Add_set() only in the right context.

Update #2555.

Location:
cpukit/score
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • cpukit/score/include/rtems/score/percpu.h

    rc61431f9 r865f110b  
    522522    uint32_t ncpus = _SMP_Get_processor_count(); \
    523523    uint32_t cpu; \
    524     _ISR_Disable( isr_cookie ); \
     524    _ISR_Disable_without_giant( isr_cookie ); \
    525525    for ( cpu = 0 ; cpu < ncpus ; ++cpu ) { \
    526526      _Per_CPU_Acquire( _Per_CPU_Get_by_index( cpu ) ); \
     
    540540      _Per_CPU_Release( _Per_CPU_Get_by_index( cpu ) ); \
    541541    } \
    542     _ISR_Enable( isr_cookie ); \
     542    _ISR_Enable_without_giant( isr_cookie ); \
    543543  } while ( 0 )
    544544#else
  • cpukit/score/src/userextaddset.c

    rc61431f9 r865f110b  
    2121
    2222#include <rtems/score/userextimpl.h>
     23#include <rtems/score/objectimpl.h>
    2324#include <rtems/score/percpu.h>
     25#include <rtems/score/sysstate.h>
    2426
    2527void _User_extensions_Add_set(
     
    2729)
    2830{
    29   _Chain_Append( &_User_extensions_List, &the_extension->Node );
     31  _Assert(
     32    _Objects_Allocator_is_owner()
     33      || _System_state_Is_before_multitasking( _System_state_Get() )
     34  );
     35
     36  _Chain_Append_unprotected( &_User_extensions_List, &the_extension->Node );
    3037
    3138  /*
Note: See TracChangeset for help on using the changeset viewer.