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

*** 169,181 **** return; if (dtrace_probe_lookup(profile_id, NULL, NULL, name) != 0) return; ! atomic_add_32(&profile_total, 1); if (profile_total > profile_max) { ! atomic_add_32(&profile_total, -1); return; } prof = kmem_zalloc(sizeof (profile_probe_t), KM_SLEEP); (void) strcpy(prof->prof_name, name); --- 169,181 ---- return; if (dtrace_probe_lookup(profile_id, NULL, NULL, name) != 0) return; ! atomic_inc_32(&profile_total); if (profile_total > profile_max) { ! atomic_dec_32(&profile_total); return; } prof = kmem_zalloc(sizeof (profile_probe_t), KM_SLEEP); (void) strcpy(prof->prof_name, name);
*** 326,336 **** ASSERT(prof->prof_cyclic == CYCLIC_NONE); kmem_free(prof, sizeof (profile_probe_t)); ASSERT(profile_total >= 1); ! atomic_add_32(&profile_total, -1); } /*ARGSUSED*/ static void profile_online(void *arg, cpu_t *cpu, cyc_handler_t *hdlr, cyc_time_t *when) --- 326,336 ---- ASSERT(prof->prof_cyclic == CYCLIC_NONE); kmem_free(prof, sizeof (profile_probe_t)); ASSERT(profile_total >= 1); ! atomic_dec_32(&profile_total); } /*ARGSUSED*/ static void profile_online(void *arg, cpu_t *cpu, cyc_handler_t *hdlr, cyc_time_t *when)