Lines Matching defs:p_mgr

64 void osm_ucast_mgr_construct(IN osm_ucast_mgr_t * const p_mgr)
66 memset(p_mgr, 0, sizeof(*p_mgr));
71 void osm_ucast_mgr_destroy(IN osm_ucast_mgr_t * const p_mgr)
73 CL_ASSERT(p_mgr);
75 OSM_LOG_ENTER(p_mgr->p_log);
77 if (p_mgr->cache_valid)
78 osm_ucast_cache_invalidate(p_mgr);
80 OSM_LOG_EXIT(p_mgr->p_log);
86 osm_ucast_mgr_init(IN osm_ucast_mgr_t * const p_mgr, IN osm_sm_t * sm)
92 osm_ucast_mgr_construct(p_mgr);
94 p_mgr->sm = sm;
95 p_mgr->p_log = sm->p_log;
96 p_mgr->p_subn = sm->p_subn;
97 p_mgr->p_lock = sm->p_lock;
100 cl_qmap_init(&p_mgr->cache_sw_tbl);
102 OSM_LOG_EXIT(p_mgr->p_log);
140 __osm_ucast_mgr_process_neighbor(IN osm_ucast_mgr_t * const p_mgr,
150 OSM_LOG_ENTER(p_mgr->p_log);
152 OSM_LOG(p_mgr->p_log, OSM_LOG_DEBUG,
159 p_next_sw = (osm_switch_t *) cl_qmap_head(&p_mgr->p_subn->sw_guid_tbl);
161 (osm_switch_t *) cl_qmap_end(&p_mgr->p_subn->sw_guid_tbl)) {
174 OSM_LOG(p_mgr->p_log, OSM_LOG_ERROR,
179 p_mgr->some_hop_count_set = TRUE;
183 OSM_LOG_EXIT(p_mgr->p_log);
207 __osm_ucast_mgr_process_port(IN osm_ucast_mgr_t * const p_mgr,
220 OSM_LOG_ENTER(p_mgr->p_log);
227 OSM_LOG(p_mgr->p_log, OSM_LOG_ERROR, "ERR 3A04: "
243 OSM_LOG(p_mgr->p_log, OSM_LOG_DEBUG,
261 p_mgr->p_subn->ignore_existing_lfts,
262 p_mgr->is_dor);
268 OSM_LOG(p_mgr->p_log, OSM_LOG_DEBUG,
274 OSM_LOG(p_mgr->p_log, OSM_LOG_DEBUG,
289 if (!p_mgr->p_subn->opt.port_profile_switch_nodes)
310 OSM_LOG_EXIT(p_mgr->p_log);
315 int osm_ucast_mgr_set_fwd_table(IN osm_ucast_mgr_t * const p_mgr,
329 CL_ASSERT(p_mgr);
331 OSM_LOG_ENTER(p_mgr->p_log);
354 life_state = ((p_mgr->p_subn->opt.packet_life_time << 3)
357 life_state = (p_mgr->p_subn->opt.packet_life_time << 3) & 0xf8;
366 OSM_LOG(p_mgr->p_log, OSM_LOG_DEBUG,
373 status = osm_req_set(p_mgr->sm, p_path, (uint8_t *) & si,
379 OSM_LOG(p_mgr->p_log, OSM_LOG_ERROR, "ERR 3A06: "
395 CL_ASSERT(p_mgr->p_subn->opt.use_ucast_cache &&
396 p_mgr->cache_valid && !p_sw->need_update);
409 OSM_LOG(p_mgr->p_log, OSM_LOG_DEBUG,
412 status = osm_req_set(p_mgr->sm, p_path,
420 OSM_LOG(p_mgr->p_log, OSM_LOG_ERROR, "ERR 3A05: "
426 OSM_LOG_EXIT(p_mgr->p_log);
478 osm_ucast_mgr_t *p_mgr = context;
482 OSM_LOG_ENTER(p_mgr->p_log);
486 OSM_LOG(p_mgr->p_log, OSM_LOG_DEBUG,
493 if (p_mgr->p_subn->opt.lmc)
494 alloc_ports_priv(p_mgr);
500 lids_per_port = 1 << p_mgr->p_subn->opt.lmc;
502 cl_qlist_t *list = &p_mgr->port_order_list;
507 __osm_ucast_mgr_process_port(p_mgr, p_sw, port, i);
511 osm_ucast_mgr_set_fwd_table(p_mgr, p_sw);
513 if (p_mgr->p_subn->opt.lmc)
514 free_ports_priv(p_mgr);
516 OSM_LOG_EXIT(p_mgr->p_log);
526 osm_ucast_mgr_t *const p_mgr = (osm_ucast_mgr_t *) context;
534 OSM_LOG_ENTER(p_mgr->p_log);
541 OSM_LOG(p_mgr->p_log, OSM_LOG_DEBUG,
563 __osm_ucast_mgr_process_neighbor(p_mgr, p_sw,
571 OSM_LOG_EXIT(p_mgr->p_log);
576 int osm_ucast_mgr_build_lid_matrices(IN osm_ucast_mgr_t * const p_mgr)
582 p_sw_guid_tbl = &p_mgr->p_subn->sw_guid_tbl;
584 OSM_LOG(p_mgr->p_log, OSM_LOG_VERBOSE,
592 __osm_ucast_mgr_process_hop_0_1, p_mgr);
628 p_mgr->some_hop_count_set = TRUE;
629 for (i = 0; (i < iteration_max) && p_mgr->some_hop_count_set;
631 p_mgr->some_hop_count_set = FALSE;
634 p_mgr);
636 OSM_LOG(p_mgr->p_log, OSM_LOG_DEBUG,
747 static int ucast_mgr_build_lfts(osm_ucast_mgr_t *p_mgr)
749 cl_qlist_init(&p_mgr->port_order_list);
751 if (p_mgr->p_subn->opt.guid_routing_order_file) {
752 OSM_LOG(p_mgr->p_log, OSM_LOG_DEBUG,
754 p_mgr->p_subn->opt.guid_routing_order_file);
756 if (parse_node_map(p_mgr->p_subn->opt.guid_routing_order_file,
757 add_guid_to_order_list, p_mgr))
758 OSM_LOG(p_mgr->p_log, OSM_LOG_ERROR, "ERR : "
760 p_mgr->p_subn->opt.guid_routing_order_file);
763 if (p_mgr->p_subn->opt.port_prof_ignore_file) {
764 cl_qmap_apply_func(&p_mgr->p_subn->sw_guid_tbl,
766 if (parse_node_map(p_mgr->p_subn->opt.port_prof_ignore_file,
767 mark_ignored_port, p_mgr)) {
768 OSM_LOG(p_mgr->p_log, OSM_LOG_ERROR, "ERR : "
770 p_mgr->p_subn->opt.port_prof_ignore_file);
774 cl_qmap_apply_func(&p_mgr->p_subn->port_guid_tbl,
775 add_port_to_order_list, p_mgr);
777 cl_qmap_apply_func(&p_mgr->p_subn->sw_guid_tbl,
778 __osm_ucast_mgr_process_tbl, p_mgr);
780 cl_qlist_remove_all(&p_mgr->port_order_list);
819 int osm_ucast_mgr_process(IN osm_ucast_mgr_t * const p_mgr)
825 OSM_LOG_ENTER(p_mgr->p_log);
827 p_sw_guid_tbl = &p_mgr->p_subn->sw_guid_tbl;
828 p_osm = p_mgr->p_subn->p_osm;
831 CL_PLOCK_EXCL_ACQUIRE(p_mgr->p_lock);
837 ucast_mgr_setup_all_switches(p_mgr->p_subn) < 0)
849 osm_ucast_mgr_build_lid_matrices(p_mgr);
850 ucast_mgr_build_lfts(p_mgr);
854 OSM_LOG(p_mgr->p_log, OSM_LOG_INFO,
858 if (p_mgr->p_subn->opt.use_ucast_cache)
859 p_mgr->cache_valid = TRUE;
862 CL_PLOCK_RELEASE(p_mgr->p_lock);
863 OSM_LOG_EXIT(p_mgr->p_log);