Changes between Version 1 and Version 2 of kernel_locks


Ignore:
Timestamp:
Oct 9, 2014, 12:50:17 PM (10 years ago)
Author:
alain
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • kernel_locks

    v1 v2  
    1010
    1111 === void _get_lock( giet_lock_t lock ) ===
    12 Takes a lock with a blocking ll/sc atomic access. If the cache coherence is granted by the hardware,
    13 the first read is a standard (cacheable) lw, as the local copy can be polled when the lock is already taken by another task, reducing trafic on the interconnect. When the lock is released by the owner task, the local copy is updated or invalidated by the coherence protocol. If there is no hardware cache coherence a pseudo random delay is introduced between two successive retry.
     12Takes a lock with a blocking ll/sc atomic access.
     13 * If the cache coherence is granted by the hardware,
     14the first read is a standard (cacheable) lw, as the local copy can be polled when the lock is already taken by another task, reducing trafic on the interconnect. When the lock is released by the owner task, the local copy is updated or invalidated by the coherence protocol.
     15 * If there is no hardware cache coherence a pseudo random delay is introduced between two successive retry.
    1416
    1517 === void _release_lock( giet_lock_t lock ) ===