SMP: ISR disable/enable vs. mutual exclustion

Gedare Bloom gedare at rtems.org
Mon Aug 26 16:00:37 UTC 2013


On Mon, Aug 26, 2013 at 11:52 AM, Sebastian Huber
<sebastian.huber at embedded-brains.de> wrote:
> On 2013-08-20 14:59, Sebastian Huber wrote:
>>
>>
>> One big issue are the RTEMS chains:
>>
>>
>> http://www.rtems.org/onlinedocs/doxygen/cpukit/html/group__ClassicChains.html
>>
>> To make them SMP ready we have two options.
>>
>> 1. Instead of ISR disable/enable use ISR locks.  Advantage: not interface
>> change.  Disadvantage: space overhead for user which only use the
>> unprotected
>> routines.
>>
>> 2. Add a new chain API, e.g. new structure rtems_chain_with_lock which
>> provides
>> a chain + ISR lock.  Advantage: you get what you need.  Disadvantage: API
>> duplication.
>
>
> The RTEMS Red-Black-Tree API suffers from the same problem.
>
> http://www.rtems.org/onlinedocs/doxygen/cpukit/html/rbtree_8h.html
>
Yes, but for different functions, primarily the iterators and the "find header".

>
> --
> Sebastian Huber, embedded brains GmbH
>
> Address : Dornierstr. 4, D-82178 Puchheim, Germany
> Phone   : +49 89 189 47 41-16
> Fax     : +49 89 189 47 41-09
> E-Mail  : sebastian.huber at embedded-brains.de
> PGP     : Public key available on request.
>
> Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
> _______________________________________________
> rtems-devel mailing list
> rtems-devel at rtems.org
> http://www.rtems.org/mailman/listinfo/rtems-devel




More information about the devel mailing list