Lines Matching defs:ino_p

278 ib_intr_dist(ib_t *ib_p, ib_ino_info_t *ino_p)
280 uint32_t cpu_id = ino_p->ino_cpuid;
281 ib_ino_t ino = ino_p->ino_ino;
338 ib_ino_info_t *ino_p;
358 for (ino_p = ib_p->ib_ino_lst; ino_p;
359 ino_p = ino_p->ino_next_p) {
368 ino_p->ino_established = 0;
376 ino_p->ino_intr_weight = 0;
378 for (ipil_p = ino_p->ino_ipil_p; ipil_p;
386 ino_p->ino_intr_weight +=
393 for (ino_p = ib_p->ib_ino_lst; ino_p; ino_p = ino_p->ino_next_p) {
404 if ((weight == ino_p->ino_intr_weight) ||
406 (ino_p->ino_intr_weight >= weight_max))) {
408 orig_cpuid = ino_p->ino_cpuid;
411 ino_p->ino_cpuid = pci_intr_dist_cpuid(ib_p, ino_p);
412 ino_p->ino_established = 1;
415 for (ipil_p = ino_p->ino_ipil_p; ipil_p;
424 ino_p->ino_cpuid, ih_lst->ih_dip,
450 ib_intr_dist(ib_p, ino_p);
528 ib_ino_info_t *ino_p = ib_p->ib_ino_lst;
531 for (; ino_p && ino_p->ino_ino != ino_num; ino_p = ino_p->ino_next_p)
533 return (ino_p);
542 ib_ino_info_t *ino_p;
544 if ((ino_p = ib_locate_ino(ib_p, ino_num)) == NULL) {
545 ino_p = kmem_zalloc(sizeof (ib_ino_info_t), KM_SLEEP);
547 ino_p->ino_next_p = ib_p->ib_ino_lst;
548 ib_p->ib_ino_lst = ino_p;
550 ino_p->ino_ino = ino_num;
551 ino_p->ino_slot_no = IB_INO_TO_SLOT(ino_num);
552 ino_p->ino_ib_p = ib_p;
553 ino_p->ino_clr_reg = ib_clear_intr_reg_addr(ib_p, ino_num);
554 ino_p->ino_map_reg = ib_intr_map_reg_addr(ib_p, ino_num);
555 ino_p->ino_unclaimed_intrs = 0;
556 ino_p->ino_lopil = pil;
565 ipil_p->ipil_ino_p = ino_p;
567 ipil_p->ipil_next_p = ino_p->ino_ipil_p;
568 ino_p->ino_ipil_p = ipil_p;
569 ino_p->ino_ipil_size++;
571 if (ino_p->ino_lopil > pil)
572 ino_p->ino_lopil = pil;
580 ib_ino_info_t *ino_p = ipil_p->ipil_ino_p;
586 if (ino_p->ino_ipil_p == ipil_p)
587 ino_p->ino_ipil_p = ipil_p->ipil_next_p;
589 for (prev = next = ino_p->ino_ipil_p; next != ipil_p;
599 if ((--ino_p->ino_ipil_size) && (ino_p->ino_lopil == pil)) {
600 for (next = ino_p->ino_ipil_p, pil = next->ipil_pil;
609 ino_p->ino_lopil = pil;
612 if (ino_p->ino_ipil_size)
615 if (ib_p->ib_ino_lst == ino_p)
616 ib_p->ib_ino_lst = ino_p->ino_next_p;
620 for (; list->ino_next_p != ino_p; list = list->ino_next_p)
622 list->ino_next_p = ino_p->ino_next_p;
630 ib_ino_info_t *ino_p = ib_p->ib_ino_lst;
633 while (ino_p) {
634 next = ino_p->ino_next_p;
635 kmem_free(ino_p, sizeof (ib_ino_info_t));
636 ino_p = next;
641 * Locate ib_ino_pil_t structure on ino_p->ino_ipil_p according to ino#
645 ib_ino_locate_ipil(ib_ino_info_t *ino_p, uint_t pil)
647 ib_ino_pil_t *ipil_p = ino_p->ino_ipil_p;
658 ib_ino_info_t *ino_p = ipil_p->ipil_ino_p;
659 ib_ino_t ino = ino_p->ino_ino;
660 ib_t *ib_p = ino_p->ino_ib_p;
668 IB_INO_INTR_OFF(ino_p->ino_map_reg);
669 *ino_p->ino_map_reg;
680 while ((ino_p->ino_unclaimed_intrs <= pci_unclaimed_intr_max) &&
704 if (ino_p->ino_unclaimed_intrs > pci_unclaimed_intr_max) {
709 ino_p->ino_ino);
710 ino_p->ino_unclaimed_intrs = 0;
711 IB_INO_INTR_CLEAR(ino_p->ino_clr_reg);
715 IB_INO_INTR_ON(ino_p->ino_map_reg);
716 *ino_p->ino_map_reg;
729 ib_ino_info_t *ino_p = ipil_p->ipil_ino_p;
731 ib_ino_t ino = ino_p->ino_ino;
734 IB_INO_INTR_STATE_REG(ino_p->ino_ib_p, ino);
737 ASSERT(MUTEX_HELD(&ino_p->ino_ib_p->ib_ino_lst_mutex));
739 IB_INO_INTR_OFF(ino_p->ino_map_reg);
740 *ino_p->ino_map_reg;
751 while ((ino_p->ino_unclaimed_intrs <= pci_unclaimed_intr_max) &&
765 /* no need to set head/tail as ino_p will be freed */
774 if (ino_p->ino_unclaimed_intrs > pci_unclaimed_intr_max) {
779 ino_p->ino_ino);
780 ino_p->ino_unclaimed_intrs = 0;
781 IB_INO_INTR_CLEAR(ino_p->ino_clr_reg);
809 DEBUG2(DBG_R_INTX, ino_p->ino_ib_p->ib_pci_p->pci_dip,
810 "ino_p=%x does not have ih_p=%x\n", ino_p, ih_p);
856 ib_ino_info_t *ino_p;
883 ino_p = ib_locate_ino(ib_p, IB_MONDO_TO_INO(mondo));
884 if (ino_p && (ipil_p = ib_ino_locate_ipil(ino_p, hdlp->ih_pri))) {
1023 ib_ino_info_t *ino_p;
1030 ino_p = ib_locate_ino(ib_p, ino);
1031 if (ino_p != NULL) {
1032 for (j = 0, ipil_p = ino_p->ino_ipil_p; ipil_p;
1058 ib_ino_info_t *ino_p;
1066 ino_p = ib_locate_ino(ib_p, ino);
1067 if (ino_p != NULL) {
1070 ino_p->ino_cpuid = new_cpu_id;
1072 for (ipil_p = ino_p->ino_ipil_p; ipil_p;