Lines Matching defs:ioc
1036 ibdma_ioc_t *ioc;
1078 ioc = &hca->ih_ioc[hdl_impl->ih_ioc_ndx];
1081 if (ioc->ii_slot > IBDMA_MAX_IOC) {
1088 rw_enter(&ioc->ii_hcap->ih_iou_rwlock, RW_WRITER);
1089 if (ioc->ii_inuse == 0) {
1090 rw_exit(&ioc->ii_hcap->ih_iou_rwlock);
1093 ioc->ii_slot+1);
1097 ASSERT(ioc->ii_srvcs != NULL);
1099 slot = ioc->ii_slot;
1100 hca = ioc->ii_hcap;
1101 kmem_free(ioc->ii_srvcs, sizeof (ib_dm_srv_t) *
1102 ioc->ii_profile.ioc_service_entries);
1103 bzero(ioc, sizeof (ibdma_ioc_t));
1120 ibdma_ioc_t *ioc;
1162 ioc = &hca->ih_ioc[hdl_impl->ih_ioc_ndx];
1164 if (ioc->ii_slot >= IBDMA_MAX_IOC || ioc->ii_hcap == NULL) {
1171 rw_enter(&ioc->ii_hcap->ih_iou_rwlock, RW_WRITER);
1172 if (ioc->ii_inuse == 0) {
1173 rw_exit(&ioc->ii_hcap->ih_iou_rwlock);
1176 ioc->ii_slot+1);
1180 ASSERT(ioc->ii_srvcs != NULL);
1182 kmem_free(ioc->ii_srvcs, ioc->ii_profile.ioc_service_entries *
1184 ioc->ii_srvcs = kmem_zalloc(profile->ioc_service_entries *
1187 bcopy(profile, &ioc->ii_profile, sizeof (ib_dm_ioc_ctrl_profile_t));
1188 bcopy(services, ioc->ii_srvcs, sizeof (ib_dm_srv_t) *
1195 profile->ioc_vendorid |= h2b32(ioc->ii_slot);
1196 ibdma_set_ioc_state(ioc->ii_hcap, ioc->ii_slot, IBDMA_IOC_PRESENT);
1197 rw_exit(&ioc->ii_hcap->ih_iou_rwlock);