Lines Matching defs:irb
228 irb_t *irb;
245 irb = &rt->rt_irb;
246 if (irb->irb_ire_cnt == 0)
249 rw_enter(&irb->irb_lock, RW_READER);
250 ire = irb->irb_ire;
252 rw_exit(&irb->irb_lock);
258 rw_exit(&irb->irb_lock);
265 rw_exit(&irb->irb_lock);
411 irb_t *irb = NULL;
438 irb = &rt->rt_irb;
439 irb->irb_marks |= IRB_MARK_DYNAMIC; /* dynamically allocated/freed */
440 irb->irb_ipst = ipst;
441 rw_init(&irb->irb_lock, NULL, RW_DEFAULT, NULL);
449 irb = NULL;
459 irb = &rt->rt_irb;
460 irb_refhold(irb);
463 return (irb);
711 irb_refrele_ftable(irb_t *irb)
714 rw_enter(&irb->irb_lock, RW_WRITER);
715 ASSERT(irb->irb_refcnt != 0);
716 if (irb->irb_refcnt != 1) {
721 irb->irb_refcnt--;
722 rw_exit(&irb->irb_lock);
731 if (irb->irb_marks & IRB_MARK_CONDEMNED) {
734 ire_list = ire_unlink(irb);
735 rw_exit(&irb->irb_lock);
751 if (irb->irb_nire != 0) {
756 irb->irb_refcnt--;
757 rw_exit(&irb->irb_lock);
768 rw_exit(&irb->irb_lock);
769 if (irb_inactive(irb))
772 * irb_inactive could not free the irb.