Lines Matching refs:prov

308 	pool_knl_connection_t *prov = (pool_knl_connection_t *)conf->pc_prov;  in load_group()  local
326 if ((old_elem = dict_get(prov->pkc_elements, elem)) != NULL) { in load_group()
332 if (dict_put(prov->pkc_elements, elem, elem) != NULL) { in load_group()
352 if (eo->eo_item.ei_uint64 > prov->pkc_lotime) { in load_group()
353 if (eo->eo_item.ei_uint64 > prov->pkc_ltime) in load_group()
354 prov->pkc_ltime = eo->eo_item.ei_uint64; in load_group()
388 elem->pke_ltime = prov->pkc_ltime; in load_group()
405 if ((old_elem = dict_get(prov->pkc_elements, elem)) != in load_group()
412 if (dict_put(prov->pkc_elements, elem, elem) != in load_group()
445 if ((old_elem = dict_get(prov->pkc_elements, elem)) != in load_group()
452 if (dict_put(prov->pkc_elements, elem, elem) != in load_group()
478 if ((old_elem = dict_get(prov->pkc_elements, elem)) != in load_group()
486 if (dict_put(prov->pkc_elements, elem, elem) != in load_group()
640 pool_knl_connection_t *prov = (pool_knl_connection_t *)conf->pc_prov; in pool_knl_close() local
642 if (close(prov->pkc_fd) < 0) { in pool_knl_close()
656 pool_knl_connection_free(prov); in pool_knl_close()
671 pool_knl_connection_t *prov = (pool_knl_connection_t *)conf->pc_prov; in remove_dead_elems() local
673 assert(dict_remove(prov->pkc_elements, pke) != NULL); in remove_dead_elems()
693 pool_knl_connection_t *prov = (pool_knl_connection_t *)conf->pc_prov; in find_dead_elems() local
696 if (pke->pke_ltime < prov->pkc_ltime) in find_dead_elems()
714 pool_knl_connection_t *prov = (pool_knl_connection_t *)conf->pc_prov; in pool_knl_update() local
724 if (log_size(prov->pkc_log) != 0) { in pool_knl_update()
735 if (ioctl(prov->pkc_fd, POOL_QUERY, &query) < 0) { in pool_knl_update()
745 if (ioctl(prov->pkc_fd, POOL_QUERY, &query) < 0) { in pool_knl_update()
766 prov->pkc_lotime = prov->pkc_ltime; in pool_knl_update()
784 dict_map(prov->pkc_elements, find_dead_elems, dead_map); in pool_knl_update()
812 pool_knl_connection_t *prov = (pool_knl_connection_t *)conf->pc_prov; in pool_knl_commit() local
818 if (ioctl(prov->pkc_fd, POOL_COMMIT, lock) < 0) { in pool_knl_commit()
827 if (prov->pkc_log->l_state == LS_FAIL) { in pool_knl_commit()
835 assert(ioctl(prov->pkc_fd, POOL_COMMIT, lock) >= 0); in pool_knl_commit()
841 if (log_walk(prov->pkc_log, log_item_commit) != PO_SUCCESS) { in pool_knl_commit()
848 assert(ioctl(prov->pkc_fd, POOL_COMMIT, lock) >= 0); in pool_knl_commit()
857 assert(ioctl(prov->pkc_fd, POOL_COMMIT, lock) >= 0); in pool_knl_commit()
861 (void) log_walk(prov->pkc_log, log_item_release); in pool_knl_commit()
862 log_empty(prov->pkc_log); in pool_knl_commit()
1206 pool_knl_connection_t *prov = (pool_knl_connection_t *)conf->pc_prov; in pool_knl_recover() local
1208 prov->pkc_log->l_state = LS_RECOVER; in pool_knl_recover()
1209 if (log_reverse_walk(prov->pkc_log, log_item_undo) != PO_SUCCESS) { in pool_knl_recover()
1211 prov->pkc_log->l_state = LS_FAIL; in pool_knl_recover()
1215 prov->pkc_log->l_state = LS_DO; in pool_knl_recover()
1225 pool_knl_connection_t *prov = (pool_knl_connection_t *)conf->pc_prov; in pool_knl_rollback() local
1227 prov->pkc_log->l_state = LS_UNDO; in pool_knl_rollback()
1228 if (log_reverse_walk(prov->pkc_log, log_item_undo) != PO_SUCCESS) { in pool_knl_rollback()
1230 (void) log_walk(prov->pkc_log, log_item_release); in pool_knl_rollback()
1231 log_empty(prov->pkc_log); in pool_knl_rollback()
1232 prov->pkc_log->l_state = LS_FAIL; in pool_knl_rollback()
1236 (void) log_walk(prov->pkc_log, log_item_release); in pool_knl_rollback()
1237 log_empty(prov->pkc_log); in pool_knl_rollback()
1238 prov->pkc_log->l_state = LS_DO; in pool_knl_rollback()
1318 pool_knl_connection_t *prov = (pool_knl_connection_t *)conf->pc_prov; in pool_knl_exec_query() local
1370 dict_map(prov->pkc_elements, build_result_set, &qo); in pool_knl_exec_query()
1433 pool_knl_connection_t *prov = (pool_knl_connection_t *)conf->pc_prov; in pool_knl_get_binding() local
1446 if (ioctl(prov->pkc_fd, POOL_BINDQ, &bindq) < 0) { in pool_knl_get_binding()
1489 pool_knl_connection_t *prov = (pool_knl_connection_t *)conf->pc_prov; in pool_knl_set_binding() local
1501 while ((ret = ioctl(prov->pkc_fd, POOL_BIND, &bind)) < 0 && in pool_knl_set_binding()
1520 pool_knl_connection_t *prov = (pool_knl_connection_t *)conf->pc_prov; in pool_knl_get_resource_binding() local
1533 if (ioctl(prov->pkc_fd, POOL_BINDQ, &bindq) < 0) { in pool_knl_get_resource_binding()
1682 pool_knl_connection_t *prov = (pool_knl_connection_t *)conf->pc_prov; in pool_knl_elem_create() local
1738 if (dict_put(prov->pkc_elements, elem, elem) != NULL) { in pool_knl_elem_create()
1744 if (prov->pkc_log->l_state != LS_DO) in pool_knl_elem_create()
1778 if (log_append(prov->pkc_log, POOL_CREATE, (void *)create) != in pool_knl_elem_create()
1793 pool_knl_connection_t *prov; in pool_knl_elem_remove() local
1796 prov = (pool_knl_connection_t *)(TO_CONF(pe))->pc_prov; in pool_knl_elem_remove()
1798 if (dict_remove(prov->pkc_elements, pe) == NULL) { in pool_knl_elem_remove()
1802 if (prov->pkc_log->l_state != LS_DO) { in pool_knl_elem_remove()
1826 if (log_append(prov->pkc_log, POOL_DESTROY, (void *)destroy) != in pool_knl_elem_remove()
1867 pool_knl_connection_t *prov = in pool_knl_res_xtransfer() local
1870 if (prov->pkc_log->l_state != LS_DO) { in pool_knl_res_xtransfer()
1923 if (log_append(prov->pkc_log, POOL_XTRANSFER, (void *)xtransfer) != in pool_knl_res_xtransfer()
1988 pool_knl_connection_t *prov; in pool_knl_pool_associate() local
2002 prov = (pool_knl_connection_t *)(TO_CONF(TO_ELEM(pool)))->pc_prov; in pool_knl_pool_associate()
2004 if (prov->pkc_log->l_state != LS_DO) { in pool_knl_pool_associate()
2023 if (log_append(prov->pkc_log, POOL_ASSOC, (void *)assoc) != in pool_knl_pool_associate()
2042 pool_knl_connection_t *prov; in pool_knl_pool_dissociate() local
2050 prov = (pool_knl_connection_t *)(TO_CONF(TO_ELEM(pool)))->pc_prov; in pool_knl_pool_dissociate()
2052 if (prov->pkc_log->l_state != LS_DO) { in pool_knl_pool_dissociate()
2070 if (log_append(prov->pkc_log, POOL_DISSOC, (void *)dissoc) != in pool_knl_pool_dissociate()
2096 pool_knl_connection_t *prov; in pool_knl_connection_alloc() local
2098 if ((prov = malloc(sizeof (pool_knl_connection_t))) == NULL) { in pool_knl_connection_alloc()
2102 (void) memset(prov, 0, sizeof (pool_knl_connection_t)); in pool_knl_connection_alloc()
2106 prov->pc_name = strdup("kernel"); in pool_knl_connection_alloc()
2107 prov->pc_store_type = KERNEL_DATA_STORE; in pool_knl_connection_alloc()
2108 prov->pc_oflags = oflags; in pool_knl_connection_alloc()
2112 prov->pc_close = pool_knl_close; in pool_knl_connection_alloc()
2113 prov->pc_validate = pool_knl_validate; in pool_knl_connection_alloc()
2114 prov->pc_commit = pool_knl_commit; in pool_knl_connection_alloc()
2115 prov->pc_export = pool_knl_export; in pool_knl_connection_alloc()
2116 prov->pc_rollback = pool_knl_rollback; in pool_knl_connection_alloc()
2117 prov->pc_exec_query = pool_knl_exec_query; in pool_knl_connection_alloc()
2118 prov->pc_elem_create = pool_knl_elem_create; in pool_knl_connection_alloc()
2119 prov->pc_remove = pool_knl_remove; in pool_knl_connection_alloc()
2120 prov->pc_res_xfer = pool_knl_res_transfer; in pool_knl_connection_alloc()
2121 prov->pc_res_xxfer = pool_knl_res_xtransfer; in pool_knl_connection_alloc()
2122 prov->pc_get_binding = pool_knl_get_binding; in pool_knl_connection_alloc()
2123 prov->pc_set_binding = pool_knl_set_binding; in pool_knl_connection_alloc()
2124 prov->pc_get_resource_binding = pool_knl_get_resource_binding; in pool_knl_connection_alloc()
2128 conf->pc_prov = (pool_connection_t *)prov; in pool_knl_connection_alloc()
2138 if ((prov->pkc_fd = blocking_open(pool_dynamic_location(), in pool_knl_connection_alloc()
2140 free(prov); in pool_knl_connection_alloc()
2146 if ((prov->pkc_fd = open(pool_info_location, O_RDWR)) < 0) { in pool_knl_connection_alloc()
2147 free(prov); in pool_knl_connection_alloc()
2156 if ((prov->pkc_elements = dict_new((int (*)(const void *, const void *)) in pool_knl_connection_alloc()
2158 (void) close(prov->pkc_fd); in pool_knl_connection_alloc()
2159 free(prov); in pool_knl_connection_alloc()
2165 if ((prov->pkc_leaks = dict_new(NULL, NULL)) == NULL) { in pool_knl_connection_alloc()
2166 dict_free(&prov->pkc_elements); in pool_knl_connection_alloc()
2167 (void) close(prov->pkc_fd); in pool_knl_connection_alloc()
2168 free(prov); in pool_knl_connection_alloc()
2177 if ((prov->pkc_log = log_alloc(conf)) == NULL) { in pool_knl_connection_alloc()
2179 dict_free(&prov->pkc_leaks); in pool_knl_connection_alloc()
2181 dict_free(&prov->pkc_elements); in pool_knl_connection_alloc()
2182 (void) close(prov->pkc_fd); in pool_knl_connection_alloc()
2183 free(prov); in pool_knl_connection_alloc()
2198 dict_free(&prov->pkc_leaks); in pool_knl_connection_alloc()
2200 dict_free(&prov->pkc_elements); in pool_knl_connection_alloc()
2201 (void) close(prov->pkc_fd); in pool_knl_connection_alloc()
2202 free(prov); in pool_knl_connection_alloc()
2271 pool_knl_connection_free(pool_knl_connection_t *prov) in pool_knl_connection_free() argument
2273 if (prov->pkc_log != NULL) { in pool_knl_connection_free()
2274 (void) log_walk(prov->pkc_log, log_item_release); in pool_knl_connection_free()
2275 log_free(prov->pkc_log); in pool_knl_connection_free()
2277 if (prov->pkc_elements != NULL) { in pool_knl_connection_free()
2278 dict_map(prov->pkc_elements, pool_knl_elem_free_cb, NULL); in pool_knl_connection_free()
2280 dprintf("dict length is %llu\n", dict_length(prov->pkc_leaks)); in pool_knl_connection_free()
2281 dict_map(prov->pkc_leaks, pool_knl_elem_printf_cb, in pool_knl_connection_free()
2282 prov->pkc_elements); in pool_knl_connection_free()
2283 assert(dict_length(prov->pkc_leaks) == 0); in pool_knl_connection_free()
2284 dict_free(&prov->pkc_leaks); in pool_knl_connection_free()
2286 dict_free(&prov->pkc_elements); in pool_knl_connection_free()
2288 free((void *)prov->pc_name); in pool_knl_connection_free()
2289 free(prov); in pool_knl_connection_free()
2336 pool_knl_connection_t *prov; in pool_knl_get_dynamic_property() local
2356 prov = (pool_knl_connection_t *)(TO_CONF(pe))->pc_prov; in pool_knl_get_dynamic_property()
2357 if (ioctl(prov->pkc_fd, POOL_PROPGET, &propget) < 0) { in pool_knl_get_dynamic_property()
2395 pool_knl_connection_t *prov = in pool_knl_put_property() local
2417 if (prov->pkc_log->l_state != LS_DO) { in pool_knl_put_property()
2470 if (log_append(prov->pkc_log, POOL_PROPPUT, (void *)propput) != in pool_knl_put_property()
2489 pool_knl_connection_t *prov = in pool_knl_rm_property() local
2506 if (prov->pkc_log->l_state != LS_DO) { in pool_knl_rm_property()
2531 if (log_append(prov->pkc_log, POOL_PROPRM, (void *)proprm) != in pool_knl_rm_property()
2782 pool_knl_connection_t *prov = in log_item_commit() local
2816 (void) dict_remove(prov->pkc_elements, in log_item_commit()
2819 if (ioctl(prov->pkc_fd, POOL_CREATE, &create->pcu_ioctl) < 0) { in log_item_commit()
2836 assert(dict_put(prov->pkc_elements, create->pcu_elem, in log_item_commit()
2860 (void) dict_remove(prov->pkc_elements, in log_item_commit()
2862 while ((ret = ioctl(prov->pkc_fd, POOL_DESTROY, in log_item_commit()
2882 while ((ret = ioctl(prov->pkc_fd, POOL_ASSOC, in log_item_commit()
2897 while ((ret = ioctl(prov->pkc_fd, POOL_DISSOC, in log_item_commit()
2933 ioctl(prov->pkc_fd, POOL_XTRANSFER, in log_item_commit()
2958 if (ioctl(prov->pkc_fd, POOL_PROPPUT, in log_item_commit()
2973 if (ioctl(prov->pkc_fd, POOL_PROPRM, &proprm->pru_ioctl) < 0) { in log_item_commit()
3002 pool_knl_connection_t *prov = in log_item_undo() local
3029 (void) dict_remove(prov->pkc_elements, create->pcu_elem); in log_item_undo()
3042 assert(dict_put(prov->pkc_elements, destroy->pdu_elem, in log_item_undo()
3154 while ((ret = ioctl(prov->pkc_fd, POOL_DESTROY, in log_item_undo()
3169 if (ioctl(prov->pkc_fd, POOL_CREATE, &u_create) < 0) { in log_item_undo()
3186 if (dict_put(prov->pkc_elements, destroy->pdu_elem, in log_item_undo()
3221 if (ioctl(prov->pkc_fd, POOL_PROPPUT, &u_propput) < 0) { in log_item_undo()
3243 if (ioctl(prov->pkc_fd, POOL_ASSOC, &u_assoc) < 0) { in log_item_undo()
3257 while ((ret = ioctl(prov->pkc_fd, POOL_ASSOC, &u_assoc)) < 0 && in log_item_undo()
3273 while ((ret = ioctl(prov->pkc_fd, POOL_ASSOC, &u_assoc)) < 0 && in log_item_undo()
3294 if (ioctl(prov->pkc_fd, POOL_XTRANSFER, &u_xtransfer) < 0) { in log_item_undo()
3317 if (ioctl(prov->pkc_fd, POOL_PROPPUT, in log_item_undo()
3346 if (ioctl(prov->pkc_fd, POOL_PROPRM, in log_item_undo()
3387 if (ioctl(prov->pkc_fd, POOL_PROPPUT, &u_propput) < 0) { in log_item_undo()