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);