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

*** 77,93 **** } void ksiddomain_hold(ksiddomain_t *kd) { ! atomic_add_32(&kd->kd_ref, 1); } void ksiddomain_rele(ksiddomain_t *kd) { ! if (atomic_add_32_nv(&kd->kd_ref, -1) == 0) { /* * The kd reference can only be incremented from 0 when * the sid_lock is held; so we lock and then check need to * check for 0 again. */ --- 77,93 ---- } void ksiddomain_hold(ksiddomain_t *kd) { ! atomic_inc_32(&kd->kd_ref); } void ksiddomain_rele(ksiddomain_t *kd) { ! if (atomic_dec_32_nv(&kd->kd_ref) == 0) { /* * The kd reference can only be incremented from 0 when * the sid_lock is held; so we lock and then check need to * check for 0 again. */
*** 102,118 **** } void ksidlist_hold(ksidlist_t *ksl) { ! atomic_add_32(&ksl->ksl_ref, 1); } void ksidlist_rele(ksidlist_t *ksl) { ! if (atomic_add_32_nv(&ksl->ksl_ref, -1) == 0) { int i; for (i = 0; i < ksl->ksl_nsid; i++) ksid_rele(&ksl->ksl_sids[i]); --- 102,118 ---- } void ksidlist_hold(ksidlist_t *ksl) { ! atomic_inc_32(&ksl->ksl_ref); } void ksidlist_rele(ksidlist_t *ksl) { ! if (atomic_dec_32_nv(&ksl->ksl_ref) == 0) { int i; for (i = 0; i < ksl->ksl_nsid; i++) ksid_rele(&ksl->ksl_sids[i]);
*** 259,275 **** } void kcrsid_hold(credsid_t *kcr) { ! atomic_add_32(&kcr->kr_ref, 1); } void kcrsid_rele(credsid_t *kcr) { ! if (atomic_add_32_nv(&kcr->kr_ref, -1) == 0) { ksid_index_t i; for (i = 0; i < KSID_COUNT; i++) ksid_rele(&kcr->kr_sidx[i]); --- 259,275 ---- } void kcrsid_hold(credsid_t *kcr) { ! atomic_inc_32(&kcr->kr_ref); } void kcrsid_rele(credsid_t *kcr) { ! if (atomic_dec_32_nv(&kcr->kr_ref) == 0) { ksid_index_t i; for (i = 0; i < KSID_COUNT; i++) ksid_rele(&kcr->kr_sidx[i]);