WRITE_ONCE
WRITE_ONCE(prev->next, next);
WRITE_ONCE(v->counter, i);
WRITE_ONCE(v->counter, i);
#define smp_store_mb(x, v) do { WRITE_ONCE(x, v); smp_mb(); } while (0)
#define smp_store_release(p, v) do { smp_mb(); WRITE_ONCE(*p, v); } while (0)
WRITE_ONCE(*(_type *)((_ism)->vaddr + (_off)), val); \
WRITE_ONCE(prev->next, next);
WRITE_ONCE(*(n->pprev), n->next);
WRITE_ONCE(h->first, n);
WRITE_ONCE(*(n->pprev), n);
WRITE_ONCE(prev->next, n);
WRITE_ONCE(*pprev, next);
WRITE_ONCE(new->prev, prev);
WRITE_ONCE(new->next, next);
WRITE_ONCE(((struct sk_buff_head_l *)next)->prev, new);
WRITE_ONCE(((struct sk_buff_head_l *)prev)->next, new);
WRITE_ONCE(q->qlen, q->qlen + 1);
WRITE_ONCE(q->qlen, q->qlen - 1);
WRITE_ONCE(n->prev, p);
WRITE_ONCE(p->next, n);
WRITE_ONCE(b->prev, p);
WRITE_ONCE(((struct sk_buff_head_l *)p)->next, b);
WRITE_ONCE(e->next, n);
WRITE_ONCE(((struct sk_buff_head_l *)n)->prev, e);
WRITE_ONCE(*(volatile u_int *)&(ts)->tasklet_state, new)
WRITE_ONCE(IRDMA_RING_CURRENT_TAIL(_ring), (_pos) % IRDMA_RING_SIZE(_ring))
WRITE_ONCE(cqp_request->request_done, true);
WRITE_ONCE(rf->cq_table[cq_num], iwcq);
WRITE_ONCE(cqp_request->request_done, false);
WRITE_ONCE(cqp_request->request_done, true);
WRITE_ONCE(rf->cq_table[iwcq->cq_num], NULL);
WRITE_ONCE(iq->running, 1);
WRITE_ONCE(iq->running, 0);
WRITE_ONCE(sq->running, 1);
WRITE_ONCE(sq->running, 0);
WRITE_ONCE(sq->running, 1);
WRITE_ONCE(sq->running, 1);
WRITE_ONCE(doorbell_cseg, NULL);