Print this page
5045 use atomic_{inc,dec}_* instead of atomic_add_*
*** 179,196 ****
void
dphold(devplcy_t *dp)
{
ASSERT(dp->dp_ref != 0xdeadbeef && dp->dp_ref != 0);
! atomic_add_32(&dp->dp_ref, 1);
}
void
dpfree(devplcy_t *dp)
{
ASSERT(dp->dp_ref != 0xdeadbeef && dp->dp_ref != 0);
! if (atomic_add_32_nv(&dp->dp_ref, -1) == 0)
kmem_free(dp, sizeof (*dp));
}
/*
* Find the policy that matches this device.
--- 179,196 ----
void
dphold(devplcy_t *dp)
{
ASSERT(dp->dp_ref != 0xdeadbeef && dp->dp_ref != 0);
! atomic_inc_32(&dp->dp_ref);
}
void
dpfree(devplcy_t *dp)
{
ASSERT(dp->dp_ref != 0xdeadbeef && dp->dp_ref != 0);
! if (atomic_dec_32_nv(&dp->dp_ref) == 0)
kmem_free(dp, sizeof (*dp));
}
/*
* Find the policy that matches this device.