[RFC] [PATCH] powerpc: Fix missing barriers in atomic_exchange_and_add_{acq,rel}
Adhemerval Zanella
azanella@linux.vnet.ibm.com
Thu Nov 20 11:07:00 GMT 2014
On 20-11-2014 09:04, Torvald Riegel wrote:
> On Tue, 2014-10-21 at 21:54 +0200, Torvald Riegel wrote:
>> On powerpc, atomic_exchange_and_add is implemented without any barriers.
>> However, atomic_exchange_and_add_acq and atomic_exchange_and_add_rel
>> (which supposedly should have acquire / release barrier semantics) both
>> fall back to atomic_exchange_and_add if they are not defined (see
>> include/atomic.h). I have not reviewed existing code to see whether
>> this would indeed cause a bug, but this lack of barriers likely is a
>> (future) fault, and prevents any use of
>> atomic_exchange_and_add_{acq,rel} that actually rely on the barrier
>> semantics. Therefore, this patch defines
>> atomic_exchange_and_add_{acq,rel} using atomic_read_barrier /
>> atomic_write_barrier.
>>
>> I have NOT tested this. Can somebody who cares about powerpc please
>> have a look and test this? Thanks!
> Ping.
>
>
Sorry, I missed it on my radar. I will review and test today, thanks.
More information about the Libc-alpha
mailing list