ugni_module 304 opal/mca/btl/ugni/btl_ugni.h static inline uint32_t mca_btl_ugni_ep_get_device_index (mca_btl_ugni_module_t *ugni_module) ugni_module 315 opal/mca/btl/ugni/btl_ugni.h static inline mca_btl_ugni_device_t *mca_btl_ugni_ep_get_device (mca_btl_ugni_module_t *ugni_module) ugni_module 317 opal/mca/btl/ugni/btl_ugni.h return ugni_module->devices + mca_btl_ugni_ep_get_device_index (ugni_module); ugni_module 475 opal/mca/btl/ugni/btl_ugni.h int mca_btl_ugni_module_init (mca_btl_ugni_module_t *ugni_module); ugni_module 508 opal/mca/btl/ugni/btl_ugni.h void mca_btl_ugni_handle_rdma_completions (mca_btl_ugni_module_t *ugni_module, mca_btl_ugni_device_t *device, ugni_module 561 opal/mca/btl/ugni/btl_ugni.h static inline intptr_t mca_btl_ugni_device_serialize_any (mca_btl_ugni_module_t *ugni_module, ugni_module 568 opal/mca/btl/ugni/btl_ugni.h return fn (ugni_module->devices, arg); ugni_module 580 opal/mca/btl/ugni/btl_ugni.h device_local = device = mca_btl_ugni_ep_get_device (ugni_module); ugni_module 587 opal/mca/btl/ugni/btl_ugni.h uint32_t device_index = mca_btl_ugni_ep_get_device_index (ugni_module); ugni_module 591 opal/mca/btl/ugni/btl_ugni.h device = ugni_module->devices + ((device_index + i) % device_count); ugni_module 600 opal/mca/btl/ugni/btl_ugni.h device = mca_btl_ugni_ep_get_device (ugni_module); ugni_module 26 opal/mca/btl/ugni/btl_ugni_add_procs.c mca_btl_ugni_setup_mpools (mca_btl_ugni_module_t *ugni_module); ugni_module 28 opal/mca/btl/ugni/btl_ugni_add_procs.c mca_btl_ugni_module_set_max_reg (mca_btl_ugni_module_t *ugni_module, int nlocal_procs); ugni_module 35 opal/mca/btl/ugni/btl_ugni_add_procs.c mca_btl_ugni_module_t *ugni_module = (mca_btl_ugni_module_t *) btl; ugni_module 40 opal/mca/btl/ugni/btl_ugni_add_procs.c if (false == ugni_module->initialized) { ugni_module 44 opal/mca/btl/ugni/btl_ugni_add_procs.c rc = opal_pointer_array_init (&ugni_module->endpoints, INITIAL_GNI_EPS, 1 << 24, 512); ugni_module 54 opal/mca/btl/ugni/btl_ugni_add_procs.c rc = opal_hash_table_init (&ugni_module->id_to_endpoint, INITIAL_GNI_EPS); ugni_module 68 opal/mca/btl/ugni/btl_ugni_add_procs.c ugni_module->local_ep = peers[i]; ugni_module 77 opal/mca/btl/ugni/btl_ugni_add_procs.c mca_btl_ugni_module_set_max_reg (ugni_module, ugni_module->nlocal_procs); ugni_module 79 opal/mca/btl/ugni/btl_ugni_add_procs.c if (false == ugni_module->initialized) { ugni_module 81 opal/mca/btl/ugni/btl_ugni_add_procs.c mca_btl_ugni_device_t *device = ugni_module->devices + i; ugni_module 106 opal/mca/btl/ugni/btl_ugni_add_procs.c rc = GNI_CqCreate (ugni_module->devices[0].dev_handle, mca_btl_ugni_component.remote_cq_size, ugni_module 107 opal/mca/btl/ugni/btl_ugni_add_procs.c 0, GNI_CQ_NOBLOCK, NULL, NULL, &ugni_module->smsg_remote_cq); ugni_module 114 opal/mca/btl/ugni/btl_ugni_add_procs.c rc = GNI_CqCreate (ugni_module->devices[0].dev_handle, mca_btl_ugni_component.remote_cq_size, ugni_module 115 opal/mca/btl/ugni/btl_ugni_add_procs.c 0, GNI_CQ_BLOCKING, NULL, NULL, &ugni_module->smsg_remote_irq_cq); ugni_module 122 opal/mca/btl/ugni/btl_ugni_add_procs.c rc = mca_btl_ugni_setup_mpools (ugni_module); ugni_module 128 opal/mca/btl/ugni/btl_ugni_add_procs.c rc = mca_btl_ugni_smsg_init (ugni_module); ugni_module 149 opal/mca/btl/ugni/btl_ugni_add_procs.c rc = GNI_MemRegister(ugni_module->devices[0].dev_handle, ugni_module 152 opal/mca/btl/ugni/btl_ugni_add_procs.c ugni_module->smsg_remote_irq_cq, ugni_module 155 opal/mca/btl/ugni/btl_ugni_add_procs.c &ugni_module->devices[0].smsg_irq_mhndl); ugni_module 160 opal/mca/btl/ugni/btl_ugni_add_procs.c opal_event_evtimer_add (&ugni_module->connection_event, &tv); ugni_module 162 opal/mca/btl/ugni/btl_ugni_add_procs.c ugni_module->initialized = true; ugni_module 171 opal/mca/btl/ugni/btl_ugni_add_procs.c mca_btl_ugni_module_t *ugni_module = (mca_btl_ugni_module_t *) btl; ugni_module 173 opal/mca/btl/ugni/btl_ugni_add_procs.c OPAL_THREAD_LOCK(&ugni_module->endpoint_lock); ugni_module 181 opal/mca/btl/ugni/btl_ugni_add_procs.c (void) opal_hash_table_get_value_uint64 (&ugni_module->id_to_endpoint, proc_id, (void **) &ep); ugni_module 187 opal/mca/btl/ugni/btl_ugni_add_procs.c --ugni_module->endpoint_count; ugni_module 191 opal/mca/btl/ugni/btl_ugni_add_procs.c --ugni_module->nlocal_procs; ugni_module 195 opal/mca/btl/ugni/btl_ugni_add_procs.c opal_hash_table_set_value_uint64 (&ugni_module->id_to_endpoint, proc_id, NULL); ugni_module 198 opal/mca/btl/ugni/btl_ugni_add_procs.c OPAL_THREAD_UNLOCK(&ugni_module->endpoint_lock); ugni_module 200 opal/mca/btl/ugni/btl_ugni_add_procs.c mca_btl_ugni_module_set_max_reg (ugni_module, ugni_module->nlocal_procs); ugni_module 208 opal/mca/btl/ugni/btl_ugni_add_procs.c mca_btl_ugni_module_t *ugni_module = (mca_btl_ugni_module_t *) module; ugni_module 213 opal/mca/btl/ugni/btl_ugni_add_procs.c OPAL_THREAD_LOCK(&ugni_module->endpoint_lock); ugni_module 216 opal/mca/btl/ugni/btl_ugni_add_procs.c rc = opal_hash_table_get_value_uint64 (&ugni_module->id_to_endpoint, proc_id, (void **) &ep); ugni_module 225 opal/mca/btl/ugni/btl_ugni_add_procs.c rc = mca_btl_ugni_init_ep (ugni_module, &ep, ugni_module, proc); ugni_module 233 opal/mca/btl/ugni/btl_ugni_add_procs.c ++ugni_module->nlocal_procs; ugni_module 235 opal/mca/btl/ugni/btl_ugni_add_procs.c ++ugni_module->endpoint_count; ugni_module 238 opal/mca/btl/ugni/btl_ugni_add_procs.c opal_hash_table_set_value_uint64 (&ugni_module->id_to_endpoint, proc_id, ep); ugni_module 241 opal/mca/btl/ugni/btl_ugni_add_procs.c OPAL_THREAD_UNLOCK(&ugni_module->endpoint_lock); ugni_module 250 opal/mca/btl/ugni/btl_ugni_add_procs.c mca_btl_ugni_module_t *ugni_module = (mca_btl_ugni_module_t *) reg_data; ugni_module 254 opal/mca/btl/ugni/btl_ugni_add_procs.c if (ugni_module->reg_count >= ugni_module->reg_max) { ugni_module 270 opal/mca/btl/ugni/btl_ugni_add_procs.c cq = ugni_module->smsg_remote_cq; ugni_module 273 opal/mca/btl/ugni/btl_ugni_add_procs.c rc = mca_btl_ugni_reg_mem (ugni_module, base, size, (mca_btl_ugni_reg_t *) reg, cq, flags); ugni_module 275 opal/mca/btl/ugni/btl_ugni_add_procs.c opal_atomic_add_fetch_32(&ugni_module->reg_count,1); ugni_module 284 opal/mca/btl/ugni/btl_ugni_add_procs.c mca_btl_ugni_module_t *ugni_module = (mca_btl_ugni_module_t *) reg_data; ugni_module 287 opal/mca/btl/ugni/btl_ugni_add_procs.c rc = mca_btl_ugni_dereg_mem (ugni_module, (mca_btl_ugni_reg_t *) reg); ugni_module 289 opal/mca/btl/ugni/btl_ugni_add_procs.c opal_atomic_add_fetch_32(&ugni_module->reg_count,-1); ugni_module 296 opal/mca/btl/ugni/btl_ugni_add_procs.c mca_btl_ugni_setup_mpools (mca_btl_ugni_module_t *ugni_module) ugni_module 304 opal/mca/btl/ugni/btl_ugni_add_procs.c rc = opal_pointer_array_init (&ugni_module->pending_smsg_frags_bb, 0, ugni_module 325 opal/mca/btl/ugni/btl_ugni_add_procs.c rc = opal_free_list_init (ugni_module->frags_lists + MCA_BTL_UGNI_LIST_SMSG, ugni_module 340 opal/mca/btl/ugni/btl_ugni_add_procs.c rc = opal_free_list_init (ugni_module->frags_lists + MCA_BTL_UGNI_LIST_RDMA, ugni_module 353 opal/mca/btl/ugni/btl_ugni_add_procs.c rc = opal_free_list_init (ugni_module->frags_lists + MCA_BTL_UGNI_LIST_RDMA_INT, ugni_module 363 opal/mca/btl/ugni/btl_ugni_add_procs.c ugni_module->super.btl_mpool = mca_mpool_base_module_lookup (mca_btl_ugni_component.mpool_hints); ugni_module 364 opal/mca/btl/ugni/btl_ugni_add_procs.c if (NULL == ugni_module->super.btl_mpool) { ugni_module 370 opal/mca/btl/ugni/btl_ugni_add_procs.c rcache_resources.base.reg_data = (void *) ugni_module; ugni_module 387 opal/mca/btl/ugni/btl_ugni_add_procs.c ugni_module->rcache = ugni_module 388 opal/mca/btl/ugni/btl_ugni_add_procs.c mca_rcache_base_module_create (rcache_name, ugni_module->devices, &rcache_resources.base); ugni_module 390 opal/mca/btl/ugni/btl_ugni_add_procs.c if (NULL == ugni_module->rcache) { ugni_module 395 opal/mca/btl/ugni/btl_ugni_add_procs.c rc = opal_free_list_init (ugni_module->frags_lists + MCA_BTL_UGNI_LIST_EAGER_SEND, ugni_module 398 opal/mca/btl/ugni/btl_ugni_add_procs.c ugni_module->super.btl_eager_limit, 64, ugni_module 402 opal/mca/btl/ugni/btl_ugni_add_procs.c ugni_module->super.btl_mpool, 0, ugni_module->rcache, ugni_module 410 opal/mca/btl/ugni/btl_ugni_add_procs.c rc = opal_free_list_init (ugni_module->frags_lists + MCA_BTL_UGNI_LIST_EAGER_RECV, ugni_module 413 opal/mca/btl/ugni/btl_ugni_add_procs.c ugni_module->super.btl_eager_limit, 64, ugni_module 417 opal/mca/btl/ugni/btl_ugni_add_procs.c ugni_module->super.btl_mpool, 0, ugni_module->rcache, ugni_module 431 opal/mca/btl/ugni/btl_ugni_add_procs.c if (nprocs/mbox_increment > (unsigned int) ugni_module->reg_max / 8) { ugni_module 432 opal/mca/btl/ugni/btl_ugni_add_procs.c mbox_increment = nprocs / (ugni_module->reg_max >> 3); ugni_module 439 opal/mca/btl/ugni/btl_ugni_add_procs.c rc = opal_free_list_init (&ugni_module->smsg_mboxes, ugni_module 443 opal/mca/btl/ugni/btl_ugni_add_procs.c 32, -1, mbox_increment, ugni_module->super.btl_mpool, ugni_module 445 opal/mca/btl/ugni/btl_ugni_add_procs.c ugni_module->rcache, NULL, NULL); ugni_module 455 opal/mca/btl/ugni/btl_ugni_add_procs.c mca_btl_ugni_module_set_max_reg (mca_btl_ugni_module_t *ugni_module, int nlocal_procs) ugni_module 467 opal/mca/btl/ugni/btl_ugni_add_procs.c ugni_module->reg_max = (res_des.limit - fuzz) / nlocal_procs; ugni_module 469 opal/mca/btl/ugni/btl_ugni_add_procs.c ugni_module->reg_max = 0; ugni_module 475 opal/mca/btl/ugni/btl_ugni_add_procs.c ugni_module->reg_max = 1200 / nlocal_procs; ugni_module 477 opal/mca/btl/ugni/btl_ugni_add_procs.c ugni_module->reg_max = 0; ugni_module 481 opal/mca/btl/ugni/btl_ugni_add_procs.c ugni_module->reg_max = INT_MAX; ugni_module 483 opal/mca/btl/ugni/btl_ugni_add_procs.c ugni_module->reg_max = mca_btl_ugni_component.max_mem_reg; ugni_module 486 opal/mca/btl/ugni/btl_ugni_add_procs.c ugni_module->reg_count = 0; ugni_module 564 opal/mca/btl/ugni/btl_ugni_component.c mca_btl_ugni_module_t *ugni_module = mca_btl_ugni_component.modules; ugni_module 569 opal/mca/btl/ugni/btl_ugni_component.c rc = mca_btl_ugni_get_datagram (ugni_module, device, &handle, &ep); ugni_module 577 opal/mca/btl/ugni/btl_ugni_component.c if (handle == ugni_module->wildcard_ep) { ugni_module 578 opal/mca/btl/ugni/btl_ugni_component.c struct opal_proc_t *remote_proc = opal_proc_for_name (ugni_module->wc_remote_attr.proc_name); ugni_module 581 opal/mca/btl/ugni/btl_ugni_component.c OPAL_NAME_PRINT(ugni_module->wc_remote_attr.proc_name))); ugni_module 583 opal/mca/btl/ugni/btl_ugni_component.c ep = mca_btl_ugni_get_ep (&ugni_module->super, remote_proc); ugni_module 587 opal/mca/btl/ugni/btl_ugni_component.c OPAL_NAME_PRINT(ugni_module->wc_remote_attr.proc_name))); ugni_module 596 opal/mca/btl/ugni/btl_ugni_component.c BTL_VERBOSE(("got a datagram completion: ep = %p. wc = %d", (void *) ep, handle == ugni_module->wildcard_ep)); ugni_module 600 opal/mca/btl/ugni/btl_ugni_component.c if (handle != ugni_module->wildcard_ep) { ugni_module 605 opal/mca/btl/ugni/btl_ugni_component.c (void) opal_atomic_add_fetch_32 (&ugni_module->active_datagrams, -1); ugni_module 617 opal/mca/btl/ugni/btl_ugni_component.c if (handle == ugni_module->wildcard_ep) { ugni_module 618 opal/mca/btl/ugni/btl_ugni_component.c mca_btl_ugni_wildcard_ep_post (ugni_module); ugni_module 624 opal/mca/btl/ugni/btl_ugni_component.c void mca_btl_ugni_handle_rdma_completions (mca_btl_ugni_module_t *ugni_module, mca_btl_ugni_device_t *device, ugni_module 639 opal/mca/btl/ugni/btl_ugni_component.c mca_btl_ugni_post_desc_complete (ugni_module, post_desc + i, post_desc[i].rc); ugni_module 643 opal/mca/btl/ugni/btl_ugni_component.c (void) OPAL_THREAD_FETCH_ADD32 (&ugni_module->active_rdma_count, -bte_complete); ugni_module 647 opal/mca/btl/ugni/btl_ugni_component.c static inline int mca_btl_ugni_progress_rdma (mca_btl_ugni_module_t *ugni_module, mca_btl_ugni_device_t *device, ugni_module 660 opal/mca/btl/ugni/btl_ugni_component.c mca_btl_ugni_handle_rdma_completions (ugni_module, device, post_desc, rc); ugni_module 666 opal/mca/btl/ugni/btl_ugni_component.c mca_btl_ugni_progress_wait_list (mca_btl_ugni_module_t *ugni_module) ugni_module 672 opal/mca/btl/ugni/btl_ugni_component.c if (0 == opal_list_get_size(&ugni_module->ep_wait_list)) { ugni_module 677 opal/mca/btl/ugni/btl_ugni_component.c count = opal_list_get_size(&ugni_module->ep_wait_list); ugni_module 682 opal/mca/btl/ugni/btl_ugni_component.c OPAL_THREAD_LOCK(&ugni_module->ep_wait_list_lock); ugni_module 683 opal/mca/btl/ugni/btl_ugni_component.c count = opal_list_get_size(&ugni_module->ep_wait_list); ugni_module 685 opal/mca/btl/ugni/btl_ugni_component.c endpoint = (mca_btl_base_endpoint_t *) opal_list_remove_first (&ugni_module->ep_wait_list); ugni_module 690 opal/mca/btl/ugni/btl_ugni_component.c opal_list_append (&ugni_module->ep_wait_list, &endpoint->super); ugni_module 696 opal/mca/btl/ugni/btl_ugni_component.c OPAL_THREAD_UNLOCK(&ugni_module->ep_wait_list_lock); ugni_module 703 opal/mca/btl/ugni/btl_ugni_component.c mca_btl_ugni_module_t *ugni_module = mca_btl_ugni_component.modules; ugni_module 706 opal/mca/btl/ugni/btl_ugni_component.c count += mca_btl_ugni_progress_remote_smsg (ugni_module); ugni_module 708 opal/mca/btl/ugni/btl_ugni_component.c if (ugni_module->active_datagrams) { ugni_module 709 opal/mca/btl/ugni/btl_ugni_component.c count += mca_btl_ugni_progress_datagram (ugni_module->devices); ugni_module 713 opal/mca/btl/ugni/btl_ugni_component.c mca_btl_ugni_device_t *device = ugni_module->devices + i; ugni_module 716 opal/mca/btl/ugni/btl_ugni_component.c count += mca_btl_ugni_progress_local_smsg (ugni_module, device); ugni_module 717 opal/mca/btl/ugni/btl_ugni_component.c mca_btl_ugni_progress_wait_list (ugni_module); ugni_module 721 opal/mca/btl/ugni/btl_ugni_component.c count += mca_btl_ugni_progress_rdma (ugni_module, device, &device->dev_rdma_local_cq); ugni_module 725 opal/mca/btl/ugni/btl_ugni_component.c count += mca_btl_ugni_progress_rdma (ugni_module, device, &device->dev_rdma_local_irq_cq); ugni_module 734 opal/mca/btl/ugni/btl_ugni_component.c mca_btl_ugni_module_t *ugni_module = mca_btl_ugni_component.modules; ugni_module 737 opal/mca/btl/ugni/btl_ugni_component.c mca_btl_ugni_device_t *device = ugni_module->devices + i; ugni_module 743 opal/mca/btl/ugni/btl_ugni_component.c (void) mca_btl_ugni_progress_rdma (ugni_module, device, &device->dev_rdma_local_cq); ugni_module 376 opal/mca/btl/ugni/btl_ugni_device.h mca_btl_ugni_module_t *ugni_module; ugni_module 400 opal/mca/btl/ugni/btl_ugni_device.h *(args->ep) = (mca_btl_base_endpoint_t *) opal_pointer_array_get_item (&args->ugni_module->endpoints, data); ugni_module 403 opal/mca/btl/ugni/btl_ugni_device.h *(args->handle) = args->ugni_module->wildcard_ep; ugni_module 421 opal/mca/btl/ugni/btl_ugni_device.h mca_btl_ugni_module_t *ugni_module; ugni_module 444 opal/mca/btl/ugni/btl_ugni_device.h mca_btl_ugni_module_t *ugni_module; ugni_module 511 opal/mca/btl/ugni/btl_ugni_device.h mca_btl_ugni_module_t *ugni_module = mca_btl_ugni_ep_btl (endpoint); ugni_module 516 opal/mca/btl/ugni/btl_ugni_device.h rc = mca_btl_ugni_device_serialize_any (ugni_module, post_fn, &args); ugni_module 518 opal/mca/btl/ugni/btl_ugni_device.h mca_btl_ugni_handle_rdma_completions (ugni_module, args.device, args.completed, args.count); ugni_module 538 opal/mca/btl/ugni/btl_ugni_device.h mca_btl_ugni_module_t *ugni_module = mca_btl_ugni_ep_btl (endpoint); ugni_module 539 opal/mca/btl/ugni/btl_ugni_device.h mca_btl_ugni_device_t *device = ugni_module->devices; ugni_module 556 opal/mca/btl/ugni/btl_ugni_device.h static inline int mca_btl_ugni_get_datagram (mca_btl_ugni_module_t *ugni_module, mca_btl_ugni_device_t *device, gni_ep_handle_t *gni_handle, ugni_module 559 opal/mca/btl/ugni/btl_ugni_device.h mca_btl_ugni_get_datagram_args_t args = {.ugni_module = ugni_module, .ep = ep, .handle = gni_handle}; ugni_module 563 opal/mca/btl/ugni/btl_ugni_device.h static inline int mca_btl_ugni_reg_mem (mca_btl_ugni_module_t *ugni_module, void *base, size_t size, mca_btl_ugni_reg_t *ugni_reg, ugni_module 566 opal/mca/btl/ugni/btl_ugni_device.h mca_btl_ugni_reg_mem_args_t args = {.ugni_module = ugni_module, .base = base, .size = size, ugni_module 568 opal/mca/btl/ugni/btl_ugni_device.h mca_btl_ugni_device_t *device = ugni_module->devices; ugni_module 572 opal/mca/btl/ugni/btl_ugni_device.h static inline int mca_btl_ugni_dereg_mem (mca_btl_ugni_module_t *ugni_module, mca_btl_ugni_reg_t *ugni_reg) ugni_module 574 opal/mca/btl/ugni/btl_ugni_device.h mca_btl_ugni_dereg_mem_arg_t args = {.ugni_module = ugni_module, .ugni_reg = ugni_reg}; ugni_module 575 opal/mca/btl/ugni/btl_ugni_device.h mca_btl_ugni_device_t *device = ugni_module->devices; ugni_module 62 opal/mca/btl/ugni/btl_ugni_endpoint.c int mca_btl_ugni_init_ep (mca_btl_ugni_module_t *ugni_module, mca_btl_ugni_endpoint_t **ep, ugni_module 84 opal/mca/btl/ugni/btl_ugni_endpoint.c endpoint->index = opal_pointer_array_add (&ugni_module->endpoints, endpoint); ugni_module 93 opal/mca/btl/ugni/btl_ugni_endpoint.c mca_btl_ugni_module_t *ugni_module = mca_btl_ugni_ep_btl (ep); ugni_module 104 opal/mca/btl/ugni/btl_ugni_endpoint.c opal_pointer_array_set_item (&ugni_module->endpoints, ep->index, NULL); ugni_module 112 opal/mca/btl/ugni/btl_ugni_endpoint.c mca_btl_ugni_module_t *ugni_module = mca_btl_ugni_ep_btl (ep); ugni_module 117 opal/mca/btl/ugni/btl_ugni_endpoint.c mbox = opal_free_list_get (&ugni_module->smsg_mboxes); ugni_module 150 opal/mca/btl/ugni/btl_ugni_endpoint.c mca_btl_ugni_module_t *ugni_module = mca_btl_ugni_ep_btl (ep); ugni_module 163 opal/mca/btl/ugni/btl_ugni_endpoint.c rc = mca_btl_ugni_progress_local_smsg (ugni_module, device); ugni_module 178 opal/mca/btl/ugni/btl_ugni_endpoint.c rc = mca_btl_ugni_progress_local_smsg (ugni_module, device); ugni_module 196 opal/mca/btl/ugni/btl_ugni_endpoint.c opal_free_list_return (&ugni_module->smsg_mboxes, ((opal_free_list_item_t *) ep->mailbox)); ugni_module 206 opal/mca/btl/ugni/btl_ugni_endpoint.c mca_btl_ugni_module_t *ugni_module = mca_btl_ugni_ep_btl (ep); ugni_module 207 opal/mca/btl/ugni/btl_ugni_endpoint.c mca_btl_ugni_device_t *device = ugni_module->devices; ugni_module 246 opal/mca/btl/ugni/btl_ugni_endpoint.c mca_btl_ugni_module_t *ugni_module = mca_btl_ugni_ep_btl (ep); ugni_module 287 opal/mca/btl/ugni/btl_ugni_endpoint.c OPAL_THREAD_LOCK(&ugni_module->ep_wait_list_lock); ugni_module 289 opal/mca/btl/ugni/btl_ugni_endpoint.c opal_list_append (&ugni_module->ep_wait_list, &ep->super); ugni_module 292 opal/mca/btl/ugni/btl_ugni_endpoint.c OPAL_THREAD_UNLOCK(&ugni_module->ep_wait_list_lock); ugni_module 303 opal/mca/btl/ugni/btl_ugni_endpoint.c mca_btl_ugni_module_t *ugni_module = mca_btl_ugni_ep_btl (ep); ugni_module 308 opal/mca/btl/ugni/btl_ugni_endpoint.c ep->mailbox->attr.rmt_irq_mem_hndl = ugni_module->devices->smsg_irq_mhndl; ugni_module 314 opal/mca/btl/ugni/btl_ugni_endpoint.c (void) opal_atomic_add_fetch_32 (&ugni_module->active_datagrams, 1); ugni_module 320 opal/mca/btl/ugni/btl_ugni_endpoint.c int mca_btl_ugni_wildcard_ep_post (mca_btl_ugni_module_t *ugni_module) ugni_module 326 opal/mca/btl/ugni/btl_ugni_endpoint.c memset (&ugni_module->wc_local_attr, 0, sizeof (ugni_module->wc_local_attr)); ugni_module 327 opal/mca/btl/ugni/btl_ugni_endpoint.c memset (&ugni_module->wc_remote_attr, 0, sizeof (ugni_module->wc_remote_attr)); ugni_module 328 opal/mca/btl/ugni/btl_ugni_endpoint.c rc = GNI_EpPostDataWId (ugni_module->wildcard_ep, &ugni_module->wc_local_attr, ugni_module 329 opal/mca/btl/ugni/btl_ugni_endpoint.c sizeof (ugni_module->wc_local_attr), &ugni_module->wc_remote_attr, ugni_module 330 opal/mca/btl/ugni/btl_ugni_endpoint.c sizeof (ugni_module->wc_remote_attr), MCA_BTL_UGNI_CONNECT_WILDCARD_ID); ugni_module 83 opal/mca/btl/ugni/btl_ugni_endpoint.h int mca_btl_ugni_wildcard_ep_post (mca_btl_ugni_module_t *ugni_module); ugni_module 85 opal/mca/btl/ugni/btl_ugni_endpoint.h int mca_btl_ugni_init_ep (mca_btl_ugni_module_t *ugni_module, mca_btl_ugni_endpoint_t **ep, ugni_module 85 opal/mca/btl/ugni/btl_ugni_frag.c mca_btl_ugni_module_t *ugni_module = mca_btl_ugni_component.modules; ugni_module 87 opal/mca/btl/ugni/btl_ugni_frag.c frag->msg_id = opal_pointer_array_add (&ugni_module->pending_smsg_frags_bb, (void *) frag); ugni_module 88 opal/mca/btl/ugni/btl_ugni_frag.c frag->my_list = ugni_module->frags_lists + free_list_id; ugni_module 212 opal/mca/btl/ugni/btl_ugni_frag.h mca_btl_ugni_module_t *ugni_module = mca_btl_ugni_ep_btl (frag->endpoint); ugni_module 214 opal/mca/btl/ugni/btl_ugni_frag.h ugni_module->rcache->rcache_deregister (ugni_module->rcache, ugni_module 227 opal/mca/btl/ugni/btl_ugni_frag.h mca_btl_ugni_module_t *ugni_module = mca_btl_ugni_ep_btl (frag->endpoint); ugni_module 242 opal/mca/btl/ugni/btl_ugni_frag.h frag->base.des_cbfunc(&ugni_module->super, frag->endpoint, &frag->base, rc); ugni_module 265 opal/mca/btl/ugni/btl_ugni_frag.h void mca_btl_ugni_wait_list_append (mca_btl_ugni_module_t *ugni_module, mca_btl_base_endpoint_t *endpoint, ugni_module 270 opal/mca/btl/ugni/btl_ugni_frag.h mca_btl_ugni_module_t *ugni_module = mca_btl_ugni_ep_btl (ep); ugni_module 271 opal/mca/btl/ugni/btl_ugni_frag.h return mca_btl_ugni_frag_alloc (ep, ugni_module->frags_lists + MCA_BTL_UGNI_LIST_SMSG); ugni_module 276 opal/mca/btl/ugni/btl_ugni_frag.h mca_btl_ugni_module_t *ugni_module = mca_btl_ugni_ep_btl (ep); ugni_module 277 opal/mca/btl/ugni/btl_ugni_frag.h return mca_btl_ugni_frag_alloc (ep, ugni_module->frags_lists + MCA_BTL_UGNI_LIST_RDMA); ugni_module 282 opal/mca/btl/ugni/btl_ugni_frag.h mca_btl_ugni_module_t *ugni_module = mca_btl_ugni_ep_btl (ep); ugni_module 283 opal/mca/btl/ugni/btl_ugni_frag.h return mca_btl_ugni_frag_alloc (ep, ugni_module->frags_lists + MCA_BTL_UGNI_LIST_RDMA_INT); ugni_module 288 opal/mca/btl/ugni/btl_ugni_frag.h mca_btl_ugni_module_t *ugni_module = mca_btl_ugni_ep_btl (ep); ugni_module 289 opal/mca/btl/ugni/btl_ugni_frag.h return mca_btl_ugni_frag_alloc (ep, ugni_module->frags_lists + MCA_BTL_UGNI_LIST_EAGER_SEND); ugni_module 294 opal/mca/btl/ugni/btl_ugni_frag.h mca_btl_ugni_module_t *ugni_module = mca_btl_ugni_ep_btl (ep); ugni_module 295 opal/mca/btl/ugni/btl_ugni_frag.h return mca_btl_ugni_frag_alloc (ep, ugni_module->frags_lists + MCA_BTL_UGNI_LIST_EAGER_RECV); ugni_module 51 opal/mca/btl/ugni/btl_ugni_get.c mca_btl_ugni_module_t *ugni_module = (mca_btl_ugni_module_t *) btl; ugni_module 56 opal/mca/btl/ugni/btl_ugni_get.c OPAL_THREAD_LOCK(&ugni_module->eager_get_pending_lock); ugni_module 57 opal/mca/btl/ugni/btl_ugni_get.c pending_frag = (mca_btl_ugni_base_frag_t *) opal_list_remove_first (&ugni_module->eager_get_pending); ugni_module 58 opal/mca/btl/ugni/btl_ugni_get.c OPAL_THREAD_UNLOCK(&ugni_module->eager_get_pending_lock); ugni_module 81 opal/mca/btl/ugni/btl_ugni_get.c mca_btl_ugni_module_t *ugni_module = (mca_btl_ugni_module_t *) btl; ugni_module 110 opal/mca/btl/ugni/btl_ugni_get.c reg->cbfunc(&ugni_module->super, tag, &(tmp.base), reg->cbdata); ugni_module 127 opal/mca/btl/ugni/btl_ugni_get.c mca_btl_ugni_wait_list_append (ugni_module, endpoint, frag); ugni_module 135 opal/mca/btl/ugni/btl_ugni_get.c mca_btl_ugni_module_t *ugni_module = mca_btl_ugni_ep_btl (endpoint); ugni_module 175 opal/mca/btl/ugni/btl_ugni_get.c OPAL_THREAD_LOCK(&ugni_module->eager_get_pending_lock); ugni_module 176 opal/mca/btl/ugni/btl_ugni_get.c opal_list_append (&ugni_module->eager_get_pending, (opal_list_item_t *) frag); ugni_module 177 opal/mca/btl/ugni/btl_ugni_get.c OPAL_THREAD_UNLOCK(&ugni_module->eager_get_pending_lock); ugni_module 68 opal/mca/btl/ugni/btl_ugni_module.c mca_btl_ugni_module_t *ugni_module = (mca_btl_ugni_module_t *) arg; ugni_module 69 opal/mca/btl/ugni/btl_ugni_module.c mca_btl_ugni_device_t *device = ugni_module->devices; ugni_module 74 opal/mca/btl/ugni/btl_ugni_module.c opal_event_evtimer_add (&ugni_module->connection_event, &tv); ugni_module 78 opal/mca/btl/ugni/btl_ugni_module.c mca_btl_ugni_module_init (mca_btl_ugni_module_t *ugni_module) ugni_module 82 opal/mca/btl/ugni/btl_ugni_module.c BTL_VERBOSE(("binding module %p to device 0", (void *) ugni_module)); ugni_module 85 opal/mca/btl/ugni/btl_ugni_module.c memmove (ugni_module, &mca_btl_ugni_module, sizeof (mca_btl_ugni_module)); ugni_module 87 opal/mca/btl/ugni/btl_ugni_module.c ugni_module->initialized = false; ugni_module 88 opal/mca/btl/ugni/btl_ugni_module.c ugni_module->nlocal_procs = 0; ugni_module 89 opal/mca/btl/ugni/btl_ugni_module.c ugni_module->active_datagrams = 0; ugni_module 90 opal/mca/btl/ugni/btl_ugni_module.c ugni_module->active_rdma_count = 0; ugni_module 92 opal/mca/btl/ugni/btl_ugni_module.c opal_event_evtimer_set (opal_sync_event_base, &ugni_module->connection_event, ugni_module 93 opal/mca/btl/ugni/btl_ugni_module.c mca_btl_ugni_datagram_event, ugni_module); ugni_module 95 opal/mca/btl/ugni/btl_ugni_module.c OBJ_CONSTRUCT(&ugni_module->failed_frags, opal_list_t); ugni_module 96 opal/mca/btl/ugni/btl_ugni_module.c OBJ_CONSTRUCT(&ugni_module->failed_frags_lock, opal_mutex_t); ugni_module 98 opal/mca/btl/ugni/btl_ugni_module.c OBJ_CONSTRUCT(&ugni_module->eager_get_pending, opal_list_t); ugni_module 99 opal/mca/btl/ugni/btl_ugni_module.c OBJ_CONSTRUCT(&ugni_module->eager_get_pending_lock,opal_mutex_t); ugni_module 102 opal/mca/btl/ugni/btl_ugni_module.c OBJ_CONSTRUCT(ugni_module->frags_lists + i, opal_free_list_t); ugni_module 105 opal/mca/btl/ugni/btl_ugni_module.c OBJ_CONSTRUCT(&ugni_module->pending_smsg_frags_bb, opal_pointer_array_t); ugni_module 106 opal/mca/btl/ugni/btl_ugni_module.c OBJ_CONSTRUCT(&ugni_module->ep_wait_list_lock,opal_mutex_t); ugni_module 107 opal/mca/btl/ugni/btl_ugni_module.c OBJ_CONSTRUCT(&ugni_module->ep_wait_list, opal_list_t); ugni_module 108 opal/mca/btl/ugni/btl_ugni_module.c OBJ_CONSTRUCT(&ugni_module->endpoint_lock, opal_mutex_t); ugni_module 109 opal/mca/btl/ugni/btl_ugni_module.c OBJ_CONSTRUCT(&ugni_module->endpoints, opal_pointer_array_t); ugni_module 110 opal/mca/btl/ugni/btl_ugni_module.c OBJ_CONSTRUCT(&ugni_module->id_to_endpoint, opal_hash_table_t); ugni_module 111 opal/mca/btl/ugni/btl_ugni_module.c OBJ_CONSTRUCT(&ugni_module->smsg_mboxes, opal_free_list_t); ugni_module 112 opal/mca/btl/ugni/btl_ugni_module.c OBJ_CONSTRUCT(&ugni_module->eager_get_pending, opal_list_t); ugni_module 116 opal/mca/btl/ugni/btl_ugni_module.c rc = mca_btl_ugni_device_init (ugni_module->devices + i, i); ugni_module 126 opal/mca/btl/ugni/btl_ugni_module.c rc = GNI_EpCreate (ugni_module->devices[0].dev_handle, NULL, ugni_module 127 opal/mca/btl/ugni/btl_ugni_module.c &ugni_module->wildcard_ep); ugni_module 134 opal/mca/btl/ugni/btl_ugni_module.c rc = mca_btl_ugni_wildcard_ep_post (ugni_module); ugni_module 146 opal/mca/btl/ugni/btl_ugni_module.c mca_btl_ugni_module_t *ugni_module = (mca_btl_ugni_module_t *)btl; ugni_module 151 opal/mca/btl/ugni/btl_ugni_module.c if (ugni_module->initialized) { ugni_module 153 opal/mca/btl/ugni/btl_ugni_module.c OPAL_HASH_TABLE_FOREACH(key, uint64, ep, &ugni_module->id_to_endpoint) { ugni_module 164 opal/mca/btl/ugni/btl_ugni_module.c rc = GNI_CqDestroy (ugni_module->smsg_remote_cq); ugni_module 170 opal/mca/btl/ugni/btl_ugni_module.c rc = GNI_CqDestroy (ugni_module->smsg_remote_irq_cq); ugni_module 177 opal/mca/btl/ugni/btl_ugni_module.c rc = GNI_EpPostDataCancelById (ugni_module->wildcard_ep, ugni_module 185 opal/mca/btl/ugni/btl_ugni_module.c rc = GNI_EpDestroy (ugni_module->wildcard_ep); ugni_module 190 opal/mca/btl/ugni/btl_ugni_module.c opal_event_del (&ugni_module->connection_event); ugni_module 194 opal/mca/btl/ugni/btl_ugni_module.c OBJ_DESTRUCT(ugni_module->frags_lists + i); ugni_module 197 opal/mca/btl/ugni/btl_ugni_module.c OBJ_DESTRUCT(&ugni_module->ep_wait_list); ugni_module 198 opal/mca/btl/ugni/btl_ugni_module.c OBJ_DESTRUCT(&ugni_module->smsg_mboxes); ugni_module 199 opal/mca/btl/ugni/btl_ugni_module.c OBJ_DESTRUCT(&ugni_module->pending_smsg_frags_bb); ugni_module 200 opal/mca/btl/ugni/btl_ugni_module.c OBJ_DESTRUCT(&ugni_module->id_to_endpoint); ugni_module 201 opal/mca/btl/ugni/btl_ugni_module.c OBJ_DESTRUCT(&ugni_module->endpoint_lock); ugni_module 202 opal/mca/btl/ugni/btl_ugni_module.c OBJ_DESTRUCT(&ugni_module->endpoints); ugni_module 204 opal/mca/btl/ugni/btl_ugni_module.c OBJ_DESTRUCT(&ugni_module->eager_get_pending); ugni_module 205 opal/mca/btl/ugni/btl_ugni_module.c OBJ_DESTRUCT(&ugni_module->eager_get_pending_lock); ugni_module 207 opal/mca/btl/ugni/btl_ugni_module.c if (ugni_module->rcache) { ugni_module 208 opal/mca/btl/ugni/btl_ugni_module.c mca_rcache_base_module_destroy (ugni_module->rcache); ugni_module 212 opal/mca/btl/ugni/btl_ugni_module.c mca_btl_ugni_device_fini (ugni_module->devices + i); ugni_module 215 opal/mca/btl/ugni/btl_ugni_module.c ugni_module->initialized = false; ugni_module 304 opal/mca/btl/ugni/btl_ugni_module.c mca_btl_ugni_module_t *ugni_module = (mca_btl_ugni_module_t *) btl; ugni_module 309 opal/mca/btl/ugni/btl_ugni_module.c rc = ugni_module->rcache->rcache_register (ugni_module->rcache, base, size, 0, access_flags, ugni_module 320 opal/mca/btl/ugni/btl_ugni_module.c mca_btl_ugni_module_t *ugni_module = (mca_btl_ugni_module_t *) btl; ugni_module 324 opal/mca/btl/ugni/btl_ugni_module.c (void) ugni_module->rcache->rcache_deregister (ugni_module->rcache, ®->base); ugni_module 60 opal/mca/btl/ugni/btl_ugni_prepare.h mca_btl_ugni_module_t *ugni_module = (mca_btl_ugni_module_t *) btl; ugni_module 77 opal/mca/btl/ugni/btl_ugni_prepare.h rc = ugni_module->rcache->rcache_register (ugni_module->rcache, data_ptr, *size, 0, ugni_module 21 opal/mca/btl/ugni/btl_ugni_send.c void mca_btl_ugni_wait_list_append (mca_btl_ugni_module_t *ugni_module, mca_btl_base_endpoint_t *endpoint, ugni_module 36 opal/mca/btl/ugni/btl_ugni_send.c OPAL_THREAD_LOCK(&ugni_module->ep_wait_list_lock); ugni_module 38 opal/mca/btl/ugni/btl_ugni_send.c opal_list_append (&ugni_module->ep_wait_list, &endpoint->super); ugni_module 41 opal/mca/btl/ugni/btl_ugni_send.c OPAL_THREAD_UNLOCK(&ugni_module->ep_wait_list_lock); ugni_module 52 opal/mca/btl/ugni/btl_ugni_send.c mca_btl_ugni_module_t *ugni_module = (mca_btl_ugni_module_t *) btl; ugni_module 63 opal/mca/btl/ugni/btl_ugni_send.c mca_btl_ugni_wait_list_append (ugni_module, endpoint, frag); ugni_module 86 opal/mca/btl/ugni/btl_ugni_send.c frag->base.des_cbfunc(&ugni_module->super, frag->endpoint, &frag->base, rc); ugni_module 102 opal/mca/btl/ugni/btl_ugni_send.c mca_btl_ugni_wait_list_append (ugni_module, endpoint, frag); ugni_module 38 opal/mca/btl/ugni/btl_ugni_smsg.c int mca_btl_ugni_smsg_init (mca_btl_ugni_module_t *ugni_module) ugni_module 43 opal/mca/btl/ugni/btl_ugni_smsg.c rc = GNI_SmsgSetMaxRetrans (ugni_module->devices[i].dev_handle, ugni_module 57 opal/mca/btl/ugni/btl_ugni_smsg.c mca_btl_ugni_module_t *ugni_module = mca_btl_ugni_ep_btl (ep); ugni_module 114 opal/mca/btl/ugni/btl_ugni_smsg.c reg->cbfunc(&ugni_module->super, tag, &(frag.base), reg->cbdata); ugni_module 35 opal/mca/btl/ugni/btl_ugni_smsg.h int mca_btl_ugni_smsg_init (mca_btl_ugni_module_t *ugni_module); ugni_module 39 opal/mca/btl/ugni/btl_ugni_smsg.h static inline int mca_btl_ugni_progress_local_smsg (mca_btl_ugni_module_t *ugni_module, mca_btl_ugni_device_t *device) ugni_module 58 opal/mca/btl/ugni/btl_ugni_smsg.h frag = (mca_btl_ugni_base_frag_t *) opal_pointer_array_get_item (&ugni_module->pending_smsg_frags_bb, ugni_module 80 opal/mca/btl/ugni/btl_ugni_smsg.h mca_btl_ugni_module_t *ugni_module = mca_btl_ugni_ep_btl (endpoint); ugni_module 89 opal/mca/btl/ugni/btl_ugni_smsg.h (void) mca_btl_ugni_post_cqwrite (endpoint, &ugni_module->devices[0].dev_rdma_local_cq, ugni_module 94 opal/mca/btl/ugni/btl_ugni_smsg.h (void) mca_btl_ugni_progress_local_smsg (ugni_module, endpoint->smsg_ep_handle.device);