Print this page
5045 use atomic_{inc,dec}_* instead of atomic_add_*
@@ -166,13 +166,13 @@
* for comparison.
*/
if (slc != NULL) {
int64_t now;
- if (atomic_add_32_nv(&slc->slc_cnt, 1) > slc->slc_max + 1) {
+ if (atomic_inc_32_nv(&slc->slc_cnt) > slc->slc_max + 1) {
now = ddi_get_lbolt64();
- atomic_add_32(&slc->slc_cnt, -1);
+ atomic_dec_32(&slc->slc_cnt);
SCTP_KSTAT(sctps, sctp_listen_cnt_drop);
slc->slc_drop++;
if (now - slc->slc_report_time >
MSEC_TO_TICK(SCTP_SLC_REPORT_INTERVAL)) {
zcmn_err(connp->conn_zoneid, CE_WARN,
@@ -187,11 +187,11 @@
slc_set = B_TRUE;
}
if ((eager = sctp_create_eager(sctp)) == NULL) {
if (slc_set)
- atomic_add_32(&slc->slc_cnt, -1);
+ atomic_dec_32(&slc->slc_cnt);
return (NULL);
}
econnp = eager->sctp_connp;
if (connp->conn_policy != NULL) {