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 */