Print this page
5045 use atomic_{inc,dec}_* instead of atomic_add_*
*** 2253,2271 ****
minor_t minor;
/*
* Grab a value from the arena.
*/
! atomic_add_32(&minor_count, 1);
if (sleep)
minor = (uint_t)id_alloc(minor_ids);
else
minor = (uint_t)id_alloc_nosleep(minor_ids);
if (minor == 0) {
! atomic_add_32(&minor_count, -1);
return (0);
}
return (minor);
}
--- 2253,2271 ----
minor_t minor;
/*
* Grab a value from the arena.
*/
! atomic_inc_32(&minor_count);
if (sleep)
minor = (uint_t)id_alloc(minor_ids);
else
minor = (uint_t)id_alloc_nosleep(minor_ids);
if (minor == 0) {
! atomic_dec_32(&minor_count);
return (0);
}
return (minor);
}
*** 2278,2288 ****
{
/*
* Return the value to the arena.
*/
id_free(minor_ids, minor);
! atomic_add_32(&minor_count, -1);
}
uint32_t
mac_no_notification(mac_handle_t mh)
{
--- 2278,2288 ----
{
/*
* Return the value to the arena.
*/
id_free(minor_ids, minor);
! atomic_dec_32(&minor_count);
}
uint32_t
mac_no_notification(mac_handle_t mh)
{