Print this page
5045 use atomic_{inc,dec}_* instead of atomic_add_*
@@ -22,12 +22,10 @@
/*
* Copyright 2005 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <sys/types.h>
#include <sys/atomic.h>
#include <sys/pattr.h>
#include <netinet/in.h>
#include <netinet/ip6.h>
@@ -66,35 +64,35 @@
if ((mp->b_cont != NULL) &&
(mp->b_cont->b_datap->db_type == M_DATA)) {
mp = mp->b_cont;
} else {
dscpmk0dbg(("dscpmk_process: no data\n"));
- atomic_add_64(&dscpmk_data->epackets, 1);
+ atomic_inc_64(&dscpmk_data->epackets);
return (EINVAL);
}
}
/* Pull-up needed? */
if ((mp->b_wptr - mp->b_rptr) < IP_SIMPLE_HDR_LENGTH) {
if (!pullupmsg(mp, IP_SIMPLE_HDR_LENGTH)) {
dscpmk0dbg(("dscpmk_process: pullup failed\n"));
- atomic_add_64(&dscpmk_data->epackets, 1);
+ atomic_inc_64(&dscpmk_data->epackets);
return (EINVAL);
}
}
ipha = (ipha_t *)mp->b_rptr;
/* Update global stats */
- atomic_add_64(&dscpmk_data->npackets, 1);
+ atomic_inc_64(&dscpmk_data->npackets);
/*
* This should only be called for outgoing packets. For inbound packets
* proceed with the next action.
*/
if ((proc == IPP_LOCAL_IN) || (proc == IPP_FWD_IN)) {
dscpmk2dbg(("dscpmk_process: cannot mark incoming packets\n"));
- atomic_add_64(&dscpmk_data->ipackets, 1);
+ atomic_inc_64(&dscpmk_data->ipackets);
return (0);
}
/* Figure out the ToS or the Traffic Class from the message */
if (IPH_HDR_VERSION(ipha) == IPV4_VERSION) {
@@ -112,25 +110,25 @@
* 6-bit DSCP value.
*/
new_dscp = dscpmk_data->dscp_map[dscp >> 2];
/* Update stats for this new_dscp */
- atomic_add_64(&dscpmk_data->dscp_stats[new_dscp].npackets, 1);
+ atomic_inc_64(&dscpmk_data->dscp_stats[new_dscp].npackets);
/*
* if new_dscp is same as the original, update stats and
* return.
*/
if (new_dscp == (dscp >> 2)) {
- atomic_add_64(&dscpmk_data->unchanged, 1);
+ atomic_inc_64(&dscpmk_data->unchanged);
return (0);
}
/* Get back the ECN/CU value from the original dscp */
new_dscp = (new_dscp << 2) | (dscp & 0x3);
- atomic_add_64(&dscpmk_data->changed, 1);
+ atomic_inc_64(&dscpmk_data->changed);
/*
* IPv4 : ToS structure -- RFC 791
*
* 0 1 2 3 4 5 6 7
* +---+---+---+---+---+---+---+---+