• Soby Mathew's avatar
    Move bakery algorithm implementation out of coherent memory · 8c5fe0b5
    Soby Mathew authored
    This patch moves the bakery locks out of coherent memory to normal memory.
    This implies that the lock information needs to be placed on a separate cache
    line for each cpu. Hence the bakery_lock_info_t structure is allocated in the
    per-cpu data so as to minimize memory wastage. A similar platform per-cpu
    data is introduced for the platform locks.
    
    As a result of the above changes, the bakery lock api is completely changed.
    Earlier, a reference to the lock structure was passed to the lock implementation.
    Now a unique-id (essentially an index into the per-cpu data array) and an offset
    into the per-cpu data for bakery_info_t needs to be passed to the lock
    implementation.
    
    Change-Id: I1e76216277448713c6c98b4c2de4fb54198b39e0
    8c5fe0b5
bakery_lock_normal.c 7.28 KB