Skip to content

Extended help

Michael Braverman edited this page Aug 12, 2022 · 2 revisions
#lshca -hh

--== Detailed fields description ==--
Note: BDF is a Bus-Device-Function PCI address. Each HCA port/vf has unique BDF.

HCA header:
  Dev    - Device number. Enumerated value padded with #
  Desc   - HCA description as appears in lspci output
  FW     - HCA currently running firmware version
  PN     - HCA part number including revision
  SN     - HCA serial number
  PSID   - HCA PSID number (Parameter Set ID)
  Driver - Driver source (mlnx_ofed/inbox) and it version
  Tempr  - HCA temperature. Based on mget_temp utility from MFT

BDF devices:
 Generic
  Net       - Network interface name, as appears in "ip link show"
  Numa      - NUMA affinity
  PCI_addr  - PCI address (BDF)
  Port      - Channel Adapter (ca_port, not related to physical port). On most mlx5 devices port is 1
  RDMA      - Channel Adapter name (ca_name)
  LnkStat   - Port state as provided by driver. Possible values:
                       State/Physical State
                actv - active/linkup
                init - initializing/linkup
                poll - down/polling
                down - down/disabled
  IpStat    - Port IP address configuration state as provided by kernel. Possible values:
                       Operstate/IP address configured
                down    - down/no ip addr. configured
                up_noip - up/no ip addr. configured
                up_ip4  - up/ipv4 addr. configured
                up_ip6  - up/ipv6 addr. configured
                up_ip46 - up/both ipv4 and ipv6 addr. configured

 System view
  HCA_Type      - Channel Adapter type, as appears in "ibstat"
  Link          - Link type. Possible values:
                    IB  - InfiniBand
                    Eth - Ethernet
  LnkCapWidth   - PCI width capability. Number of PCI lanes and PCI generation required by HCA. PF only.
  LnkStaWidth   - PCI width status. Number of PCI lanes and PCI generation avaliable for HCA in current slot. PF only.
  Parent_addr   - BDF address of SRIOV parent Physical Function for this Virtual Function
  Rate          - Link rate in Gbit/s
                  On bond master, will show all slave speeds delimited by /
  SRIOV         - SRIOV and more function types. Possible values:
                    PF - Physical Function
                    VF - Virtual Function
                    SF - Scalable Function
  Bond          - Name of Bond parent
  BondState     - On slave interface - status in a bond
                  On master interface - bonding policy appended by xmit hash policy if relevant
                  Search for bonding.txt in kernel.org for detailed information
  BondMiiStat   - Interface mii status in a bond. Search for bonding.txt in kernel.org for detailed information

 IB view
  IbNetPref     - IB network preffix
  PGuid         - Port GUID
  PLid          - Port LID
  SMGuid        - OpenSM GUID
  SwDescription - Switch description. As appears in "ibnetdiscover"
  SwGuid        - Switch GUID
  VrtHCA        - Is this a Virtual HCA port. Possible values:
                    Phys - Physical HCA port. For example, you could run openSM this ports
                    Virt - Virtual HCA port.
                    NA   - IB link - not supported with mlx4 driver OR non IB link

 Cable view   (use source utils for more info)
  MST_device    - MST device name. Source mst
  CblPN         - Part number of the connected cable. Source mlxcable
  CblSN         - Serial number of the connected cable. Source mlxcable
  CblLng        - Length of the connected cable. Source mlxcable
  PhyAnalisys   - If something goes wrong, some analisys will be shown to assist in issue resolution. Source mlxlink
  PhyLinkStat   - Status of the physical link. May differ from its logical state. Source mlxlink
  PhyLnkSpd     - Speed of the physical link. I.e protocol used for communication. Source mlxlink

 RoCE view
  RoCEstat      - RoCE status. Possible values:
                    Lossless       - Port configured with Lossless port configurations.
                    Lossy[:bitmap] - Port configured with Lossy port configurations
                           XXXXX     Bitmap will appear if lossless configuration is partial
                           ││││└─ rdma_cm_tos - expected "106"
                           │││└── tcp_ecn  - expected "1"
                           ││└─── gtclass - expected "Global tclass=106"
                           │└──── pfc - expected "00010000"
                           └───── trust - expected "dscp"

 Traffic view (K, M ,G used for human readability. K = 1000 bit.)
  TX_bps    - Transmitted traffic in bit/sec. Based on port_rcv_data counter
  RX_bps    - Received traffic in bit/sec. Based on port_xmit_data counter
  PktSeqErr - The number of received NAK sequence error packets (counts how many times there was a sequence number gap)
              Based on packet_seq_err counter

 LLDP view
     This view relies on:
      * LLDP information been sent by the connected switch (if not NoLldpRcvd error msg will be received)
      * local port should be up and valid (if not LnkDown/LnkStatUnclr warning msg will be received)
     NOTE1: using this view puts interfaces in to promiscuous mode, use with CAUTION
     NOTE2: the script waits for LLDP packets to arrive,
            it might take 35 * num_of_interfaces sec to complete
  LLDPportId    - Switch port description. LLDP TLV 2
  LLDPsysName   - Switch system name. LLDP TLV 5
  LLDPmgmtAddr  - Switch management IP address. LLDP TLV 8
  LLDPsysDescr  - Switch system description. Usualy contains Switch type, OS type and OS ver. LLDP TLV 6

 DPU view
  DPUmode   - DPU mode of operation.
    See link detailed explanations: https://docs.nvidia.com/networking/display/BlueFieldDPUOSLatest/Modes+of+Operation
    Possible values:
        ECPF      - the NIC resources and functionality are owned and controlled by the embedded Arm subsystem
        RestrHost - ECPF with DPU controled ONLY via ARM subsystem
        NIC       - DPU behaves exactly like an adapter card from the perspective of the external host
        Separated - network function is assigned to both the Arm cores and the x86 host cores. Traffic reaches both of them
        Undefined - Failed to identify DPU operation mode
  BFBver    - version of DPU BFB image. Works ONLY within the DPU os
  UplnkRepr - Uplink representor
  PfRepr    - PF representors
  VfRepr    - VF representors
  OvsBrdg   - OVS bridge see link [representors] for more information
  [representors] - https://docs.nvidia.com/networking/display/BlueFieldDPUOSLatest/Kernel+Representors+Model

--== Elastic output rules ==--
Elastic output comes to reduce excessive information in human readable output.
Following will be removed per HCA if the condition is True
SRIOV        - if there are only PF
Parent_addr  - if there is no SRIOV VF
LnkStaWidth  - if LnkStaWidth matches LnkCapWidth
Port         - if all Port values are 1
LnkStat      - if all LnkStat valuse are "actv"
IpStat       - if all LnkStat valuse are "down"
Bond, BondState, BondMiiStat
             - if no bond device configured
PhyAnalisys  - if no issue detected
DPUmode      - if it has no value
BFBver       - if it has no value
LLDPportId, LLDPsysName, LLDPmgmtAddr, LLDPsysDescr
             - if the interface is not Ethernet
Whole BDF    - if it part of DPU and LnkStat is nop (unused BDFs)
Clone this wiki locally