Print this page
5045 use atomic_{inc,dec}_* instead of atomic_add_*
*** 315,325 ****
int i;
int startidx;
uchar_t vectmask;
if (irqno <= MAX_ISA_IRQ)
! atomic_add_16(&uppc_irq_shared_table[irqno], 1);
if (ipl != min_ipl)
return (0);
if (irqno > 7) {
--- 315,325 ----
int i;
int startidx;
uchar_t vectmask;
if (irqno <= MAX_ISA_IRQ)
! atomic_inc_16(&uppc_irq_shared_table[irqno]);
if (ipl != min_ipl)
return (0);
if (irqno > 7) {
*** 358,368 ****
struct standard_pic *pp;
int i;
uchar_t vectmask;
if (irqno <= MAX_ISA_IRQ)
! atomic_add_16(&uppc_irq_shared_table[irqno], -1);
/*
* skip if we are not deleting the last handler
* and the ipl is higher than minimum
*/
--- 358,368 ----
struct standard_pic *pp;
int i;
uchar_t vectmask;
if (irqno <= MAX_ISA_IRQ)
! atomic_dec_16(&uppc_irq_shared_table[irqno]);
/*
* skip if we are not deleting the last handler
* and the ipl is higher than minimum
*/