X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=kernel%2Farch%2Fia64%2Finclude%2Fasm%2Fbarrier.h;h=df896a1c41d348e60641bb0f89aece2d5ba95f93;hb=e09b41010ba33a20a87472ee821fa407a5b8da36;hp=f6769eb2bbf9b5ff8774017ac0eb332fcc7309d9;hpb=f93b97fd65072de626c074dbe099a1fff05ce060;p=kvmfornfv.git diff --git a/kernel/arch/ia64/include/asm/barrier.h b/kernel/arch/ia64/include/asm/barrier.h index f6769eb2b..df896a1c4 100644 --- a/kernel/arch/ia64/include/asm/barrier.h +++ b/kernel/arch/ia64/include/asm/barrier.h @@ -66,23 +66,18 @@ do { \ compiletime_assert_atomic_type(*p); \ barrier(); \ - ACCESS_ONCE(*p) = (v); \ + WRITE_ONCE(*p, v); \ } while (0) #define smp_load_acquire(p) \ ({ \ - typeof(*p) ___p1 = ACCESS_ONCE(*p); \ + typeof(*p) ___p1 = READ_ONCE(*p); \ compiletime_assert_atomic_type(*p); \ barrier(); \ ___p1; \ }) -/* - * XXX check on this ---I suspect what Linus really wants here is - * acquire vs release semantics but we can't discuss this stuff with - * Linus just yet. Grrr... - */ -#define set_mb(var, value) do { (var) = (value); mb(); } while (0) +#define smp_store_mb(var, value) do { WRITE_ONCE(var, value); mb(); } while (0) /* * The group barrier in front of the rsm & ssm are necessary to ensure