SYSFS FILES For each InfiniBand device, the InfiniBand drivers create the following files under /sys/class/infiniband/: node_type - Node type (CA, switch or router) node_guid - Node GUID sys_image_guid - System image GUID In addition, there is a "ports" subdirectory, with one subdirectory for each port. For example, if mthca0 is a 2-port HCA, there will be two directories: /sys/class/infiniband/mthca0/ports/1 /sys/class/infiniband/mthca0/ports/2 (A switch will only have a single "0" subdirectory for switch port 0; no subdirectory is created for normal switch ports) In each port subdirectory, the following files are created: cap_mask - Port capability mask lid - Port LID lid_mask_count - Port LID mask count rate - Port data rate (active width * active speed) sm_lid - Subnet manager LID for port's subnet sm_sl - Subnet manager SL for port's subnet state - Port state (DOWN, INIT, ARMED, ACTIVE or ACTIVE_DEFER) phys_state - Port physical state (Sleep, Polling, LinkUp, etc) There is also a "counters" subdirectory, with files VL15_dropped excessive_buffer_overrun_errors link_downed link_error_recovery local_link_integrity_errors port_rcv_constraint_errors port_rcv_data port_rcv_errors port_rcv_packets port_rcv_remote_physical_errors port_rcv_switch_relay_errors port_xmit_constraint_errors port_xmit_data port_xmit_discards port_xmit_packets symbol_error Each of these files contains the corresponding value from the port's Performance Management PortCounters attribute, as described in section 16.1.3.5 of the InfiniBand Architecture Specification. The "pkeys" and "gids" subdirectories contain one file for each entry in the port's P_Key or GID table respectively. For example, ports/1/pkeys/10 contains the value at index 10 in port 1's P_Key table. There is an optional "hw_counters" subdirectory that may be under either the parent device or the port subdirectories or both. If present, there are a list of counters provided by the hardware. They may match some of the counters in the counters directory, but they often include many other counters. In addition to the various counters, there will be a file named "lifespan" that configures how frequently the core should update the counters when they are being accessed (counters are not updated if they are not being accessed). The lifespan is in milli- seconds and defaults to 10 unless set to something else by the driver. Users may echo a value between 0 - 10000 to the lifespan file to set the length of time between updates in milliseconds. MTHCA The Mellanox HCA driver also creates the files: hw_rev - Hardware revision number fw_ver - Firmware version hca_type - HCA type: "MT23108", "MT25208 (MT23108 compat mode)", or "MT25208" HFI1 The hfi1 driver also creates these additional files: hw_rev - hardware revision board_id - manufacturing board id tempsense - thermal sense information serial - board serial number nfreectxts - number of free user contexts nctxts - number of allowed contexts (PSM2) chip_reset - diagnostic (root only) boardversion - board version ports/1/ CCMgtA/ cc_settings_bin - CCA tables used by PSM2 cc_table_bin cc_prescan - enable prescaning for faster BECN response sc2v/ - 32 files (0 - 31) used to translate sl->vl sl2sc/ - 32 files (0 - 31) used to translate sl->sc vl2mtu/ - 16 (0 - 15) files used to determine MTU for vl