xchg
if (xchg(&engine->heartbeat.blocked, serial) == serial)
old = xchg(&engine->props.heartbeat_interval_ms, delay);
for (port = xchg(&execlists->active, execlists->pending); *port; port++)
old = xchg(&fence->vma, NULL);
if (!xchg(&node->age, 0))
struct intel_timeline *tl = xchg(&engine->retire, NULL);
struct intel_timeline *next = xchg(&tl->retire, NULL);
prev_hang = xchg(&file_priv->hang_timestamp, jiffies);
timeslice = xchg(&engine->props.timeslice_duration_ms, 1);
timeslice = xchg(&engine->props.timeslice_duration_ms, 1);
xchg(&engine->props.timeslice_duration_ms, timeslice);
error = xchg(&global->first_error, (void *)-1);
xchg(&global->first_error, error);
tl = xchg(&state->history[idx], tl);
config = xchg(&stream->oa_config, config);
rq = xchg(rsvd, NULL);
fence = xchg(&cb->base.fence, NULL);
fence = xchg(&cb->base.fence, NULL);
if (xchg(&domain->active, false))
if (xchg(&domain->active, false))
wakeref = xchg(&wf->wakeref, NULL);
wakeref = xchg(&wf->wakeref, NULL);
wakeref = xchg(&wf->wakeref, NULL);
fence = xchg(__active_fence_slot(active), NULL);
#define smp_store_mb(var, value) do { (void)xchg(&var, value); } while (0)
#define smp_store_mb(var, value) do { (void)xchg(&var, value); } while (0)
xchg(ip6->ip6_dst, ip6->ip6_src, struct in6_addr);
xchg(ip->ip_dst.s_addr, ip->ip_src.s_addr, u_int32_t);
xchg(th->th_dport, th->th_sport, u_int16_t);