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

*** 2651,2661 **** ASSERT(qflag & (QPERMOD | QMTOUTPERIM)); rw_enter(&perdm_rwlock, RW_READER); for (p = perdm_list; p != NULL; p = p->dm_next) { if (p->dm_str == str) { /* found one */ ! atomic_add_32(&(p->dm_ref), 1); rw_exit(&perdm_rwlock); return (p); } } rw_exit(&perdm_rwlock); --- 2651,2661 ---- ASSERT(qflag & (QPERMOD | QMTOUTPERIM)); rw_enter(&perdm_rwlock, RW_READER); for (p = perdm_list; p != NULL; p = p->dm_next) { if (p->dm_str == str) { /* found one */ ! atomic_inc_32(&(p->dm_ref)); rw_exit(&perdm_rwlock); return (p); } } rw_exit(&perdm_rwlock);