Print this page
5045 use atomic_{inc,dec}_* instead of atomic_add_*

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/io/mac/mac_bcast.c
          +++ new/usr/src/uts/common/io/mac/mac_bcast.c
↓ open down ↓ 365 lines elided ↑ open up ↑
 366  366                  bzero(&flow_desc, sizeof (flow_desc));
 367  367                  bcopy(addr, &flow_desc.fd_dst_mac, addr_len);
 368  368                  flow_desc.fd_mac_len = (uint32_t)addr_len;
 369  369  
 370  370                  flow_desc.fd_mask = FLOW_LINK_DST;
 371  371                  if (vid != 0) {
 372  372                          flow_desc.fd_vid = vid;
 373  373                          flow_desc.fd_mask |= FLOW_LINK_VID;
 374  374                  }
 375  375  
 376      -                grp->mbg_id = atomic_add_32_nv(&mac_bcast_id, 1);
      376 +                grp->mbg_id = atomic_inc_32_nv(&mac_bcast_id);
 377  377                  (void) sprintf(flow_name,
 378  378                      "mac/%s/mcast%d", mip->mi_name, grp->mbg_id);
 379  379  
 380  380                  rc = mac_flow_create(&flow_desc, NULL, flow_name,
 381  381                      grp, FLOW_MCAST, &grp->mbg_flow_ent);
 382  382                  if (rc != 0) {
 383  383                          kmem_free(grp->mbg_addr, addr_len);
 384  384                          kmem_cache_free(mac_bcast_grp_cache, grp);
 385  385                          goto fail;
 386  386                  }
↓ open down ↓ 291 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX