Changeset 618d02a in mainline


Ignore:
Timestamp:
2012-11-19T21:11:00Z (11 years ago)
Author:
Adam Hraska <adam.hraska+hos@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
657ddbd
Parents:
fbe6b65
Message:

Added architecture independent local cpu atomic exchange operation (it is atomic only wrt to interrupts and not other cpus).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/include/atomic.h

    rfbe6b65 r618d02a  
    5353}
    5454
     55
     56/*
     57 * If the architecture does not provide operations that are atomic
     58 * only with respect to the local cpu (eg exception handlers) and
     59 * not other cpus, implement these cpu local atomic operations with
     60 * full blown smp-safe atomics.
     61 */
     62#ifndef local_atomic_exchange
     63#define local_atomic_exchange(var_addr, new_val) \
     64        __atomic_exchange_n((var_addr), (new_val), __ATOMIC_RELAXED)
     65#endif
     66
     67
     68
    5569#endif
    5670
Note: See TracChangeset for help on using the changeset viewer.