Print this page
5045 use atomic_{inc,dec}_* instead of atomic_add_*
@@ -98,18 +98,18 @@
* Release a reference on ip_xmit_attr.
* The reference is acquired by conn_get_ixa()
*/
#define IXA_REFRELE(ixa) \
{ \
- if (atomic_add_32_nv(&(ixa)->ixa_refcnt, -1) == 0) \
+ if (atomic_dec_32_nv(&(ixa)->ixa_refcnt) == 0) \
ixa_inactive(ixa); \
}
#define IXA_REFHOLD(ixa) \
{ \
ASSERT((ixa)->ixa_refcnt != 0); \
- atomic_add_32(&(ixa)->ixa_refcnt, 1); \
+ atomic_inc_32(&(ixa)->ixa_refcnt); \
}
/*
* When we need to handle a transmit side asynchronous operation, then we need
* to save sufficient information so that we can call the fragment and postfrag
@@ -752,11 +752,11 @@
mutex_enter(&connp->conn_lock);
ixa = connp->conn_ixa;
/* At least one references for the conn_t */
ASSERT(ixa->ixa_refcnt >= 1);
- if (atomic_add_32_nv(&ixa->ixa_refcnt, 1) == 2) {
+ if (atomic_inc_32_nv(&ixa->ixa_refcnt) == 2) {
/* No other thread using conn_ixa */
mutex_exit(&connp->conn_lock);
return (ixa);
}
ixa = kmem_alloc(sizeof (*ixa), kmflag);
@@ -854,11 +854,11 @@
/* At least one references for the conn_t */
ASSERT(ixa->ixa_refcnt >= 1);
/* Make sure conn_ixa doesn't disappear while we copy it */
- atomic_add_32(&ixa->ixa_refcnt, 1);
+ atomic_inc_32(&ixa->ixa_refcnt);
ixa = kmem_alloc(sizeof (*ixa), KM_NOSLEEP);
if (ixa == NULL) {
mutex_exit(&connp->conn_lock);
ixa_refrele(connp->conn_ixa);