static void show_mlnx_ext_port_info(ib_portid_t * dest, uint8_t * data, int portnum) { char buf[256]; mad_dump_mlnx_ext_port_info(buf, sizeof buf, data, IB_SMP_DATA_SIZE); printf("# MLNX ext Port info: %s port %d\n%s", portid2str(dest), portnum, buf); }
static char *mlnx_ext_port_info(ib_portid_t * dest, char **argv, int argc) { char buf[2300]; char data[IB_SMP_DATA_SIZE]; int portnum = 0; if (argc > 0) portnum = strtol(argv[0], 0, 0); if (!smp_query_via(data, dest, IB_ATTR_MLNX_EXT_PORT_INFO, portnum, 0, srcport)) return "Mellanox ext port info query failed"; mad_dump_mlnx_ext_port_info(buf, sizeof buf, data, sizeof data); printf("# MLNX ext Port info: %s port %d\n%s", portid2str(dest), portnum, buf); return 0; }