Lines Matching refs:idp
961 cyclic_omni_start(cyc_id_t *idp, cyc_cpu_t *cpu)
963 cyc_omni_handler_t *omni = &idp->cyi_omni_hdlr;
969 ASSERT(idp->cyi_cpu == NULL);
985 ocpu->cyo_next = idp->cyi_omni_list;
986 idp->cyi_omni_list = ocpu;
990 cyclic_omni_stop(cyc_id_t *idp, cyc_cpu_t *cpu)
992 cyc_omni_handler_t *omni = &idp->cyi_omni_hdlr;
993 cyc_omni_cpu_t *ocpu = idp->cyi_omni_list, *prev = NULL;
996 ASSERT(idp->cyi_cpu == NULL);
1012 idp->cyi_omni_list = ocpu->cyo_next;
1032 cyc_id_t *idp;
1036 idp = kmem_cache_alloc(cyclic_id_cache, KM_SLEEP);
1045 idp->cyi_cpu = NULL;
1046 idp->cyi_ndx = 0;
1048 idp->cyi_next = cyclic_id_head;
1049 idp->cyi_prev = NULL;
1050 idp->cyi_omni_list = NULL;
1054 cyclic_id_head->cyi_prev = idp;
1057 cyclic_id_head = idp;
1059 return (idp);
1138 cyc_id_t *idp = cyclic_new_id();
1144 idp->cyi_cpu = c->cpu_cyclic;
1145 idp->cyi_ndx = cyclic_add_here(idp->cyi_cpu, hdlr, when, 0);
1147 return ((uintptr_t)idp);
1235 cyc_id_t *idp = cyclic_new_id();
1243 idp->cyi_omni_hdlr = *omni;
1250 cyclic_omni_start(idp, cpu);
1257 ASSERT(idp->cyi_omni_list != NULL);
1258 ASSERT(idp->cyi_cpu == NULL);
1260 return ((uintptr_t)idp);
1296 cyc_id_t *idp = (cyc_id_t *)id;
1297 cyc_id_t *prev = idp->cyi_prev, *next = idp->cyi_next;
1298 cyc_cpu_t *cpu = idp->cyi_cpu;
1303 (void) cyclic_remove_here(cpu, idp->cyi_ndx, NULL, CY_WAIT);
1305 ASSERT(idp->cyi_omni_list != NULL);
1306 while (idp->cyi_omni_list != NULL)
1307 cyclic_omni_stop(idp, idp->cyi_omni_list->cyo_cpu);
1311 ASSERT(cyclic_id_head != idp);
1314 ASSERT(cyclic_id_head == idp);
1321 kmem_cache_free(cyclic_id_cache, idp);