/illumos-gate/usr/src/lib/udapl/udapl_tavor/common/ |
H A D | dapl_cno_util.c | 62 DAPL_CNO *cno_ptr; in dapl_cno_alloc() local 64 cno_ptr = (DAPL_CNO *) dapl_os_alloc(sizeof (DAPL_CNO)); in dapl_cno_alloc() 65 if (!cno_ptr) { in dapl_cno_alloc() 70 (void) dapl_os_memzero(cno_ptr, sizeof (DAPL_CNO)); in dapl_cno_alloc() 75 cno_ptr->header.provider = ia_ptr->header.provider; in dapl_cno_alloc() 76 cno_ptr->header.magic = DAPL_MAGIC_CNO; in dapl_cno_alloc() 77 cno_ptr->header.handle_type = DAT_HANDLE_TYPE_CNO; in dapl_cno_alloc() 78 cno_ptr->header.owner_ia = ia_ptr; in dapl_cno_alloc() 79 cno_ptr->header.user_context.as_64 = 0; in dapl_cno_alloc() 80 cno_ptr->header.user_context.as_ptr = NULL; in dapl_cno_alloc() [all …]
|
H A D | dapl_cno_wait.c | 73 DAPL_CNO *cno_ptr; in dapl_cno_wait() local 84 cno_ptr = (DAPL_CNO *) cno_handle; in dapl_cno_wait() 86 if (cno_ptr->cno_state == DAPL_CNO_STATE_DEAD) { in dapl_cno_wait() 92 dapl_os_lock(&cno_ptr->header.lock); in dapl_cno_wait() 93 if (dapl_llist_is_empty(&cno_ptr->evd_list_head)) { in dapl_cno_wait() 94 dapl_os_unlock(&cno_ptr->header.lock); in dapl_cno_wait() 100 dapl_llist_next_entry(&cno_ptr->evd_list_head, NULL); in dapl_cno_wait() 118 dapl_llist_next_entry(&cno_ptr->evd_list_head, in dapl_cno_wait() 127 dapl_llist_remove_head(&cno_ptr->evd_list_head); in dapl_cno_wait() 129 dapl_llist_add_tail(&cno_ptr->evd_list_head, in dapl_cno_wait() [all …]
|
H A D | dapl_cno_free.c | 69 DAPL_CNO *cno_ptr; in dapl_cno_free() local 73 cno_ptr = (DAPL_CNO *)cno_handle; in dapl_cno_free() 81 if (cno_ptr->cno_ref_count != 0 || cno_ptr->cno_waiters != 0) { in dapl_cno_free() 87 dapl_os_lock(&cno_ptr->header.lock); in dapl_cno_free() 88 if (!dapl_llist_is_empty(&cno_ptr->evd_list_head)) { in dapl_cno_free() 91 dapl_os_unlock(&cno_ptr->header.lock); in dapl_cno_free() 96 dapl_os_unlock(&cno_ptr->header.lock); in dapl_cno_free() 98 dat_status = dapls_ib_cno_free(cno_ptr); in dapl_cno_free() 103 dapl_ia_unlink_cno(cno_ptr->header.owner_ia, cno_ptr); in dapl_cno_free() 104 dapl_cno_dealloc(cno_ptr); in dapl_cno_free()
|
H A D | dapl_evd_modify_cno.c | 71 DAPL_CNO *cno_ptr; in dapl_evd_modify_cno() local 76 cno_ptr = (DAPL_CNO *)cno_handle; in dapl_evd_modify_cno() 93 if (cno_ptr == evd_ptr->cno_ptr) { in dapl_evd_modify_cno() 98 if (dapls_ib_modify_cno(evd_ptr, cno_ptr) != DAT_SUCCESS) { in dapl_evd_modify_cno() 104 old_cno_ptr = evd_ptr->cno_ptr; in dapl_evd_modify_cno() 105 evd_ptr->cno_ptr = cno_ptr; in dapl_evd_modify_cno() 121 if (cno_ptr) { in dapl_evd_modify_cno() 122 dapl_os_lock(&(cno_ptr->header.lock)); in dapl_evd_modify_cno() 123 dapl_llist_add_head(&cno_ptr->evd_list_head, in dapl_evd_modify_cno() 126 dapl_os_atomic_inc(&(cno_ptr->cno_ref_count)); in dapl_evd_modify_cno() [all …]
|
H A D | dapl_cno_create.c | 75 DAPL_CNO *cno_ptr; in dapl_cno_create() local 79 cno_ptr = NULL; in dapl_cno_create() 88 cno_ptr = dapl_cno_alloc(ia_ptr, wait_agent); in dapl_cno_create() 90 if (!cno_ptr) { in dapl_cno_create() 96 cno_ptr->cno_state = DAPL_CNO_STATE_UNTRIGGERED; in dapl_cno_create() 98 dat_status = dapls_ib_cno_alloc(ia_ptr, cno_ptr); in dapl_cno_create() 103 dapl_ia_link_cno(ia_ptr, cno_ptr); in dapl_cno_create() 105 *cno_handle = cno_ptr; in dapl_cno_create() 108 if (dat_status != DAT_SUCCESS && cno_ptr != NULL) { in dapl_cno_create() 109 dapl_cno_dealloc(cno_ptr); in dapl_cno_create()
|
H A D | dapl_cno_modify_agent.c | 68 DAPL_CNO *cno_ptr; in dapl_cno_modify_agent() local 78 cno_ptr = (DAPL_CNO *) cno_handle; in dapl_cno_modify_agent() 79 dapl_os_lock(&cno_ptr->header.lock); in dapl_cno_modify_agent() 80 cno_ptr->cno_wait_agent = prx_agent; in dapl_cno_modify_agent() 81 dapl_os_unlock(&cno_ptr->header.lock); in dapl_cno_modify_agent()
|
H A D | dapl_cno_query.c | 70 DAPL_CNO *cno_ptr; in dapl_cno_query() local 92 cno_ptr = (DAPL_CNO *)cno_handle; in dapl_cno_query() 93 cno_param->ia_handle = cno_ptr->header.owner_ia; in dapl_cno_query() 94 cno_param->agent = cno_ptr->cno_wait_agent; in dapl_cno_query()
|
H A D | dapl_evd_util.c | 68 IN DAPL_CNO *cno_ptr, 96 DAPL_CNO *cno_ptr, in dapls_evd_internal_create() argument 110 cno_ptr, in dapls_evd_internal_create() 134 evd_ptr, cno_ptr, &cq_len); in dapls_evd_internal_create() 166 dat_status = dapli_evd_event_alloc(evd_ptr, cno_ptr, cq_len); in dapls_evd_internal_create() 204 IN DAPL_CNO *cno_ptr, in dapls_evd_alloc() argument 275 IN DAPL_CNO *cno_ptr, in dapli_evd_event_alloc() argument 315 if (cno_ptr != NULL) { in dapli_evd_event_alloc() 316 dapl_os_lock(&cno_ptr->header.lock); in dapli_evd_event_alloc() 317 dapl_llist_add_head(&cno_ptr->evd_list_head, in dapli_evd_event_alloc() [all …]
|
H A D | dapl_ia_util.c | 145 DAPL_CNO *cno_ptr, *next_cno_ptr; in dapl_ia_abrupt_close() local 291 cno_ptr = (dapl_llist_is_empty(&ia_ptr->cno_list_head) in dapl_ia_abrupt_close() 293 while (cno_ptr != NULL) { in dapl_ia_abrupt_close() 295 &cno_ptr->header.ia_list_entry); in dapl_ia_abrupt_close() 296 dat_status = dapl_cno_free(cno_ptr); in dapl_ia_abrupt_close() 300 cno_ptr, in dapl_ia_abrupt_close() 303 cno_ptr = next_cno_ptr; in dapl_ia_abrupt_close() 820 IN DAPL_CNO *cno_ptr) in dapl_ia_link_cno() argument 824 &cno_ptr->header.ia_list_entry, in dapl_ia_link_cno() 825 cno_ptr); in dapl_ia_link_cno() [all …]
|
H A D | dapl_evd_create.c | 89 DAPL_CNO *cno_ptr; in dapl_evd_create() local 107 cno_ptr = (DAPL_CNO *)cno_handle; in dapl_evd_create() 162 cno_ptr, in dapl_evd_create()
|
H A D | dapl_evd_dto_callb.c | 118 DAPL_CNO *cno = evd_ptr->cno_ptr; in dapl_evd_dto_callback() 119 if (evd_ptr->evd_enabled && (evd_ptr->cno_ptr != NULL)) { in dapl_evd_dto_callback()
|
H A D | dapl_evd_enable.c | 82 if (evd_ptr->cno_ptr != NULL && in dapl_evd_enable()
|
H A D | dapl_evd_query.c | 115 evd_param->cno_handle = (DAT_CNO_HANDLE) evd_ptr->cno_ptr; in dapl_evd_query()
|
/illumos-gate/usr/src/lib/udapl/udapl_tavor/tavor/ |
H A D | dapl_tavor_ibtf_util.c | 71 IN DAPL_CNO *cno_ptr, in dapls_ib_cq_alloc() argument 99 if (cno_ptr != NULL) { in dapls_ib_cq_alloc() 101 (uint64_t)cno_ptr->ib_cno_handle; in dapls_ib_cq_alloc() 1800 IN DAPL_CNO *cno_ptr) in dapls_ib_modify_cno() argument 1810 if (cno_ptr) { in dapls_ib_modify_cno() 1811 evmc_msg.evmc_cno_hkey = (uint64_t)cno_ptr->ib_cno_handle; in dapls_ib_modify_cno() 1818 evd_ptr, evmc_msg.evmc_hkey, cno_ptr, evmc_msg.evmc_cno_hkey); in dapls_ib_modify_cno() 1827 evd_ptr, cno_ptr, retval, strerror(errno)); in dapls_ib_modify_cno() 1836 IN DAPL_CNO *cno_ptr, in dapls_ib_cno_wait() argument 1843 args.cnw_hkey = (uint64_t)cno_ptr->ib_cno_handle; in dapls_ib_cno_wait() [all …]
|
/illumos-gate/usr/src/lib/udapl/udapl_tavor/include/ |
H A D | dapl_cno_util.h | 57 IN DAPL_CNO *cno_ptr); 61 IN DAPL_CNO *cno_ptr,
|
H A D | dapl_adapter_util.h | 144 IN DAPL_CNO *cno_ptr, 284 IN DAPL_CNO *cno_ptr); 287 IN DAPL_CNO *cno_ptr, 293 IN DAPL_CNO *cno_ptr); 296 IN DAPL_CNO *cno_ptr);
|
H A D | dapl_evd_util.h | 53 IN DAPL_CNO *cno_ptr, 61 IN DAPL_CNO *cno_ptr,
|
H A D | dapl.h | 462 DAPL_CNO *cno_ptr; member
|