mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2026-02-26 19:52:06 +01:00
MEDIUM: xref: Use the new _HA_ATOMIC_* macros.
Use the new _HA_ATOMIC_* macros and add barriers where needed.
This commit is contained in:
parent
a2735340fb
commit
8beb27e9ce
@ -31,7 +31,7 @@ static inline struct xref *xref_get_peer_and_lock(struct xref *xref)
|
||||
while (1) {
|
||||
|
||||
/* Get the local pointer to the peer. */
|
||||
local = HA_ATOMIC_XCHG(&xref->peer, XREF_BUSY);
|
||||
local = _HA_ATOMIC_XCHG(&xref->peer, XREF_BUSY);
|
||||
__ha_barrier_atomic_store();
|
||||
|
||||
/* If the local pointer is NULL, the peer no longer exists. */
|
||||
@ -49,7 +49,7 @@ static inline struct xref *xref_get_peer_and_lock(struct xref *xref)
|
||||
/* We are locked, the peer cant disapear, try to acquire
|
||||
* the pper's lock. Note that remote can't be NULL.
|
||||
*/
|
||||
remote = HA_ATOMIC_XCHG(&local->peer, XREF_BUSY);
|
||||
remote = _HA_ATOMIC_XCHG(&local->peer, XREF_BUSY);
|
||||
|
||||
/* The remote lock is BUSY, We retry the process. */
|
||||
if (remote == XREF_BUSY) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user