shithub: riscv

Download patch

ref: fd8597ac315b3be5f5bdb85445345a7ba4627c15
parent: 58dc03cec0df3cf569f73ea90d71f17e6a3dc84d
author: cinap_lenrek <cinap_lenrek@felloff.net>
date: Thu Jun 18 00:35:46 EDT 2015

zynq: fix barriers

unlock()/iunlock():

we need to place the coherence() *before* "l->key = 0", so that any
stores that where done while holding the lock become observable
*before* other processors see the lock released.

cas()/tas():

place memory barrier before successfull return to prevent reordering.