Lines Matching defs:node

144 static inline const char *ports_nt_str_compat(ibnd_node_t * node)
146 switch (node->type) {
157 char *node_name(ibnd_node_t * node)
161 switch (node->type) {
175 sprintf(buf + 2, "-%016" PRIx64 "\"", node->guid);
180 void list_node(ibnd_node_t * node, void *user_data)
183 char *nodename = remap_node_name(node_name_map, node->guid,
184 node->nodedesc);
186 switch (node->type) {
203 node->guid, node->numports, mad_get_field(node->info, 0,
205 mad_get_field(node->info, 0, IB_NODE_VENDORID_F), nodename);
220 void out_ids(ibnd_node_t * node, int group, char *chname, char *out_prefix)
223 mad_get_field64(node->info, 0, IB_NODE_SYSTEM_GUID_F);
226 mad_get_field(node->info, 0, IB_NODE_VENDORID_F));
228 mad_get_field(node->info, 0, IB_NODE_DEVID_F));
232 if (group && node->chassis && node->chassis->chassisnum) {
233 fprintf(f, "\t\t# Chassis %d", node->chassis->chassisnum);
236 if (ibnd_is_xsigo_tca(node->guid) && node->ports[1] &&
237 node->ports[1]->remoteport)
239 node->ports[1]->remoteport->portnum);
242 (group && node->chassis && node->chassis->chassisnum))
258 void out_switch_detail(ibnd_node_t * node, char *sw_prefix)
262 nodename = remap_node_name(node_name_map, node->guid, node->nodedesc);
265 sw_prefix ? sw_prefix : "", node->numports, node_name(node),
266 nodename, node->smaenhsp0 ? "enhanced" : "base",
267 node->smalid, node->smalmc);
272 void out_switch(ibnd_node_t * node, int group, char *chname, char *id_prefix,
278 out_ids(node, group, chname, id_prefix);
280 id_prefix ? id_prefix : "", node->guid);
282 mad_get_field64(node->info, 0, IB_NODE_PORT_GUID_F));
285 str = ibnd_get_chassis_type(node);
288 str = ibnd_get_chassis_slot_str(node, str2, 256);
294 out_switch_detail(node, sw_prefix);
298 void out_ca_detail(ibnd_node_t * node, char *ca_prefix)
302 switch (node->type) {
315 node_type, node->numports, node_name(node),
316 clean_nodedesc(node->nodedesc));
319 void out_ca(ibnd_node_t * node, int group, char *chname, char *id_prefix,
324 out_ids(node, group, chname, id_prefix);
325 switch (node->type) {
338 id_prefix ? id_prefix : "", node_type, node->guid);
339 out_ca_detail(node, ca_prefix);
340 if (group && ibnd_is_xsigo_hca(node->guid))
382 port->remoteport->node->guid,
383 port->remoteport->node->nodedesc);
387 if (!port->node->ports[0]) {
392 cap_mask = mad_get_field(port->node->ports[0]->info, 0,
401 node_name(port->remoteport->node), port->remoteport->portnum,
403 if (port->remoteport->node->type != IB_NODE_SWITCH)
407 port->remoteport->node->type == IB_NODE_SWITCH ?
408 port->remoteport->node->smalid :
445 if (port->node->type != IB_NODE_SWITCH)
448 node_name(port->remoteport->node), port->remoteport->portnum);
452 if (port->remoteport->node->type != IB_NODE_SWITCH)
456 port->remoteport->node->guid,
457 port->remoteport->node->nodedesc);
468 port->remoteport->node->type == IB_NODE_SWITCH ?
469 port->remoteport->node->smalid :
492 static void switch_iter_func(ibnd_node_t * node, void *iter_user_data)
498 DEBUG("SWITCH: node %p\n", node);
501 if (data->skip_chassis_nodes && node->chassis
502 && node->chassis->chassisnum)
505 out_switch(node, data->group, NULL, NULL, NULL);
506 for (p = 1; p <= node->numports; p++) {
507 port = node->ports[p];
513 static void ca_iter_func(ibnd_node_t * node, void *iter_user_data)
519 DEBUG("CA: node %p\n", node);
521 if (data->group && node->chassis && node->chassis->chassisnum)
523 out_ca(node, data->group, NULL, NULL, NULL);
525 for (p = 1; p <= node->numports; p++) {
526 port = node->ports[p];
532 static void router_iter_func(ibnd_node_t * node, void *iter_user_data)
538 DEBUG("RT: node %p\n", node);
540 if (data->group && node->chassis && node->chassis->chassisnum)
542 out_ca(node, data->group, NULL, NULL, NULL);
543 for (p = 1; p <= node->numports; p++) {
544 port = node->ports[p];
552 ibnd_node_t *node;
565 fprintf(f, "# Initiated from node %016" PRIx64 " port %016" PRIx64 "\n",
583 for (node = ch->nodes; node;
584 node = node->next_chassis_node) {
585 if (ibnd_is_xsigo_hca(node->guid)) {
586 chname = node->nodedesc;
589 (node->nodedesc));
630 for (node = ch->nodes; node;
631 node = node->next_chassis_node) {
632 if (node->type == IB_NODE_SWITCH) {
633 out_switch(node, group, chname, NULL,
635 for (p = 1; p <= node->numports; p++) {
636 port = node->ports[p];
647 for (node = ch->nodes; node;
648 node = node->next_chassis_node) {
649 if (node->type == IB_NODE_CA) {
650 out_ca(node, group, chname, NULL, NULL);
651 for (p = 1; p <= node->numports; p++) {
652 port = node->ports[p];
692 void dump_ports_report(ibnd_node_t * node, void *user_data)
700 for (p = node->numports, port = node->ports[p]; p > 0;
701 port = node->ports[--p]) {
710 if (port->node->type == IB_NODE_SWITCH) {
711 if (port->node->ports[0])
712 info = (uint8_t *)&port->node->ports[0]->info;
731 port->node->guid,
732 port->node->nodedesc);
734 ports_nt_str_compat(node),
735 node->type ==
736 IB_NODE_SWITCH ? node->smalid : port->base_lid,
744 port->remoteport->node->guid,
745 port->remoteport->node->nodedesc);
749 ports_nt_str_compat(port->remoteport->node),
750 port->remoteport->node->type == IB_NODE_SWITCH ?
751 port->remoteport->node->smalid :
774 static void diff_iter_out_header(ibnd_node_t * node,
779 (*data->out_header) (node, 0, NULL, NULL, NULL);
831 && memcmp(fabric1_port->remoteport->node->nodedesc,
832 fabric2_port->remoteport->node->nodedesc,
842 && memcmp(fabric1_port->remoteport->node->nodedesc,
843 fabric2_port->remoteport->node->nodedesc,
948 /* Do opposite diff to find existence of node types
952 * lids, or node descriptions since it has already been
1087 {"node-name-map", 1, 1, "<file>", "node name map file"},