On 2/6/2018 2:24 AM, Aishwarya Pant wrote:
> Add documentation for core and hardware specific infiniband interfaces.
> The descriptions have been collected from git commit logs, reading
> through code and data sheets. Some drivers have incomplete doc and are
> annotated with the comment '[to be documented]'.
> 
> Signed-off-by: Aishwarya Pant <[email protected]>

Looks good. One nit below.

> ---
> Changes in v2:
> - Move infiniband interface from testing to stable
> - Fix typos
> - Update description of cap_mask, port_xmit_constraint_errors and
>   port_rcv_constraint_errors
> - Add doc for hw_counters
> - Remove old documentation
> 
>  Documentation/ABI/stable/sysfs-class-infiniband  | 818 
> +++++++++++++++++++++++
>  Documentation/ABI/testing/sysfs-class-infiniband |  16 -
>  Documentation/infiniband/sysfs.txt               | 129 +---
>  3 files changed, 820 insertions(+), 143 deletions(-)
>  create mode 100644 Documentation/ABI/stable/sysfs-class-infiniband
>  delete mode 100644 Documentation/ABI/testing/sysfs-class-infiniband
> 
> diff --git a/Documentation/ABI/stable/sysfs-class-infiniband 
> b/Documentation/ABI/stable/sysfs-class-infiniband
> new file mode 100644
> index 000000000000..f9c709a8d0ab
> --- /dev/null
> +++ b/Documentation/ABI/stable/sysfs-class-infiniband
> @@ -0,0 +1,818 @@
> +sysfs interface common for all infiniband devices
> +-------------------------------------------------
> +
> +What:                /sys/class/infiniband/<device>/node_type
> +What:                /sys/class/infiniband/<device>/node_guid
> +What:                /sys/class/infiniband/<device>/sys_image_guid
> +Date:                Apr, 2005
> +KernelVersion:       v2.6.12
> +Contact:     [email protected]
> +Description:
> +             node_type:      (RO) Node type (CA, RNIC, usNIC, usNIC UDP,
> +                             switch or router)
> +
> +             node_guid:      (RO) Node GUID
> +
> +             sys_image_guid: (RO) System image GUID
> +
> +
> +What:                /sys/class/infiniband/<device>/node_desc
> +Date:                Feb, 2006
> +KernelVersion:       v2.6.17
> +Contact:     [email protected]
> +Description:
> +             (RW) Update the node description with information such as the
> +             node's hostname, so that IB network management software can tie
> +             its view to the real world.
> +
> +
> +What:                /sys/class/infiniband/<device>/fw_ver
> +Date:                Jun, 2016
> +KernelVersion:       v4.10
> +Contact:     [email protected]
> +Description:
> +             (RO) Display firmware version
> +
> +
> +What:                /sys/class/infiniband/<device>/ports/<port-num>/lid
> +What:                /sys/class/infiniband/<device>/ports/<port-num>/rate
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/lid_mask_count
> +What:                /sys/class/infiniband/<device>/ports/<port-num>/sm_sl
> +What:                /sys/class/infiniband/<device>/ports/<port-num>/sm_lid
> +What:                /sys/class/infiniband/<device>/ports/<port-num>/state
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/phys_state
> +What:                /sys/class/infiniband/<device>/ports/<port-num>/cap_mask
> +Date:                Apr, 2005
> +KernelVersion:       v2.6.12
> +Contact:     [email protected]
> +Description:
> +
> +             lid:            (RO) Port LID
> +
> +             rate:           (RO) Port data rate (active width * active
> +                             speed)
> +
> +             lid_mask_count: (RO) Port LID mask count
> +
> +             sm_sl:          (RO) Subnet manager SL for port's subnet
> +
> +             sm_lid:         (RO) Subnet manager LID for port's subnet
> +
> +             state:          (RO) Port state (DOWN, INIT, ARMED, ACTIVE or
> +                             ACTIVE_DEFER)
> +
> +             phys_state:     (RO) Port physical state (Sleep, Polling,
> +                             LinkUp, etc)
> +
> +             cap_mask:       (RO) Port capability mask. 2 bits here are
> +                             settable- IsCommunicationManagementSupported
> +                             (set when CM module is loaded) and IsSM (set via
> +                             open of issmN file).
> +
> +
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/link_layer
> +Date:                Oct, 2010
> +KernelVersion:       v2.6.37
> +Contact:     [email protected]
> +Description:
> +             (RO) Link layer type information (Infiniband or Ethernet type)
> +
> +
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/counters/symbol_error
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/counters/port_rcv_errors
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/counters/port_rcv_remote_physical_errors
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/counters/port_rcv_switch_relay_errors
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/counters/link_error_recovery
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/counters/port_xmit_constraint_errors
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/counters/port_rcv_contraint_errors
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/counters/local_link_integrity_errors
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/counters/excessive_buffer_overrun_errors
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/counters/port_xmit_data
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/counters/port_rcv_data
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/counters/port_xmit_packets
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/counters/port_rcv_packets
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/counters/unicast_rcv_packets
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/counters/unicast_xmit_packets
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/counters/multicast_rcv_packets
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/counters/multicast_xmit_packets
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/counters/link_downed
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/counters/port_xmit_discards
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/counters/VL15_dropped
> +What:                
> /sys/class/infiniband/<device>/ports/<port-num>/counters/port_xmit_wait
> +Date:                Apr, 2005
> +KernelVersion:       v2.6.12
> +Contact:     [email protected]
> +Description:
> +             Errors info:
> +             -----------
> +
> +             symbol_error: (RO) Total number of minor link errors detected on
> +             one or more physical lanes.
> +
> +             port_rcv_errors : (RO) Total number of packets containing an
> +             error that were received on the port.
> +
> +             port_rcv_remote_physical_errors : (RO) Total number of packets
> +             marked with the EBP delimiter received on the port.
> +
> +             port_rcv_switch_relay_errors : (RO) Total number of packets
> +             received on the port that were discarded because they could not
> +             be forwarded by the switch relay.
> +
> +             link_error_recovery: (RO) Total number of times the Port
> +             Training state machine has successfully completed the link error
> +             recovery process.
> +
> +             port_xmit_constraint_errors: (RO) Total number of packets not
> +             transmitted from the switch physical port due to outbound raw
> +             filtering or failing outbound partition or IP version check.
> +
> +             port_rcv_constraint_errors: (RO) Total number of packets
> +             received on the switch physical port that are discarded due to
> +             inbound raw filtering or failing outbound partition or IP
> +             version check.

Nit: cut 'n paste error I provided here:
outbound -> inbound

> +
> +             local_link_integrity_errors: (RO) The number of times that the
> +             count of local physical errors exceeded the threshold specified
> +             by LocalPhyErrors
> +
> +             excessive_buffer_overrun_errors: (RO) This counter, indicates an
> +             input buffer overrun. It indicates possible misconfiguration of
> +             a port, either by the Subnet Manager (SM) or by user
> +             intervention. It can also indicate hardware issues or extremely
> +             poor link signal integrity
> +
> +             Data info:
> +             ---------
> +
> +             port_xmit_data: (RO) Total number of data octets, divided by 4
> +             (lanes), transmitted on all VLs. This is 64 bit counter
> +
> +             port_rcv_data: (RO) Total number of data octets, divided by 4
> +             (lanes), received on all VLs. This is 64 bit counter.
> +
> +             port_xmit_packets: (RO) Total number of packets transmitted on
> +             all VLs from this port. This may include packets with errors.
> +             This is 64 bit counter.
> +
> +             port_rcv_packets: (RO) Total number of packets (this may include
> +             packets containing Errors. This is 64 bit counter.
> +
> +             link_downed: (RO) Total number of times the Port Training state
> +             machine has failed the link error recovery process and downed
> +             the link.
> +
> +             unicast_rcv_packets: (RO) Total number of unicast packets,
> +             including unicast packets containing errors.
> +
> +             unicast_xmit_packets: (RO) Total number of unicast packets
> +             transmitted on all VLs from the port. This may include unicast
> +             packets with errors.
> +
> +             multicast_rcv_packets: (RO) Total number of multicast packets,
> +             including multicast packets containing errors.
> +
> +             multicast_xmit_packets: (RO) Total number of multicast packets
> +             transmitted on all VLs from the port. This may include multicast
> +             packets with errors.
> +
> +             Misc info:
> +             ---------
> +
> +             port_xmit_discards: (RO) Total number of outbound packets
> +             discarded by the port because the port is down or congested.
> +
> +             VL15_dropped: (RO) Number of incoming VL15 packets dropped due
> +             to resource limitations (e.g., lack of buffers) of the port.
> +
> +             port_xmit_wait: (RO) The number of ticks during which the port
> +             had data to transmit but no data was sent during the entire tick
> +             (either because of insufficient credits or because of lack of
> +             arbitration).
> +
> +             Each of these files contains the corresponding value from the
> +             port's Performance Management PortCounters attribute, as
> +             described in the InfiniBand Architecture Specification.
> +
> +
> +What:                /sys/class/infiniband/<device-name>/hw_counters/lifespan
> +What:                
> /sys/class/infiniband/<device-name>/ports/<port-num>/hw_counters/lifespan
> +Date:                May, 2016
> +KernelVersion:       4.6
> +Contact:     [email protected]
> +Description:
> +             The optional "hw_counters" subdirectory can 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 milliseconds 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.
> +
> +
> +What:                
> /sys/class/infiniband/<hca>/ports/<port-number>/gid_attrs/ndevs/<gid-index>
> +Date:                November 29, 2015
> +KernelVersion:       4.4.0
> +Contact:     [email protected]
> +Description:         The net-device's name associated with the GID resides
> +             at index <gid-index>.
> +
> +What:                
> /sys/class/infiniband/<hca>/ports/<port-number>/gid_attrs/types/<gid-index>
> +Date:                November 29, 2015
> +KernelVersion:       4.4.0
> +Contact:     [email protected]
> +Description:         The RoCE type of the associated GID resides at index 
> <gid-index>.
> +             This could either be "IB/RoCE v1" for IB and RoCE v1 based GODs
> +             or "RoCE v2" for RoCE v2 based GIDs.
> +
> +
> +What:                /sys/class/infiniband_mad/umadN/ibdev
> +What:                /sys/class/infiniband_mad/umadN/port
> +What:                /sys/class/infiniband_mad/issmN/ibdev
> +What:                /sys/class/infiniband_mad/issmN/port
> +Date:                Apr, 2005
> +KernelVersion:       v2.6.12
> +Contact:     [email protected]
> +Description:
> +             Each port of each InfiniBand device has a "umad" device and an
> +             "issm" device attached. For example, a two-port HCA will have
> +             two umad devices and two issm devices, while a switch will have
> +             one device of each type (for switch port 0).
> +
> +             ibdev:  (RO) Show Infiniband (IB) device name
> +
> +             port:   (RO) Display port number
> +
> +
> +What:                /sys/class/infiniband_mad/abi_version
> +Date:                Apr, 2005
> +KernelVersion:       v2.6.12
> +Contact:     [email protected]
> +Description:
> +             (RO) Value is incremented if any changes are made that break
> +             userspace ABI compatibility of umad & issm devices.
> +
> +
> +What:                /sys/class/infiniband_cm/ucmN/ibdev
> +Date:                Oct, 2005
> +KernelVersion:       v2.6.14
> +Contact:     [email protected]
> +Description:
> +             (RO) Display Infiniband (IB) device name
> +
> +
> +What:                /sys/class/infiniband_cm/abi_version
> +Date:                Oct, 2005
> +KernelVersion:       v2.6.14
> +Contact:     [email protected]
> +Description:
> +             (RO) Value is incremented if any changes are made that break
> +             userspace ABI compatibility of ucm devices.
> +
> +
> +What:                /sys/class/infiniband_verbs/uverbsN/ibdev
> +What:                /sys/class/infiniband_verbs/uverbsN/abi_version
> +Date:                Sept, 2005
> +KernelVersion:       v2.6.14
> +Contact:     [email protected]
> +Description:
> +             ibdev:          (RO) Display Infiniband (IB) device name
> +
> +             abi_version:    (RO) Show ABI version of IB device specific
> +                             interfaces.
> +
> +
> +What:                /sys/class/infiniband_verbs/abi_version
> +Date:                Sep, 2005
> +KernelVersion:       v2.6.14
> +Contact:     [email protected]
> +Description:
> +             (RO) Value is incremented if any changes are made that break
> +             userspace ABI compatibility uverbs devices.
> +
> +
> +sysfs interface for Mellanox IB HCA low-level driver (mthca)
> +------------------------------------------------------------
> +
> +What:                /sys/class/infiniband/mthcaX/hw_rev
> +What:                /sys/class/infiniband/mthcaX/hca_type
> +What:                /sys/class/infiniband/mthcaX/board_id
> +Date:                Apr, 2005
> +KernelVersion:       v2.6.12
> +Contact:     [email protected]
> +Description:
> +             hw_rev:         (RO) Hardware revision number
> +
> +             hca_type:       (RO) Host Channel Adapter type: MT23108, MT25208
> +                             (MT23108 compat mode), MT25208 or MT25204
> +
> +             board_id:       (RO) Manufacturing board ID
> +
> +
> +sysfs interface for Chelsio T3 RDMA Driver (cxgb3)
> +--------------------------------------------------
> +
> +What:                /sys/class/infiniband/cxgb3_X/hw_rev
> +What:                /sys/class/infiniband/cxgb3_X/hca_type
> +What:                /sys/class/infiniband/cxgb3_X/board_id
> +Date:                Feb, 2007
> +KernelVersion:       v2.6.21
> +Contact:     [email protected]
> +Description:
> +             hw_rev:         (RO) Hardware revision number
> +
> +             hca_type:       (RO) HCA type. Here it is a driver short name.
> +                             It should normally match the name in its bus
> +                             driver structure (e.g.  pci_driver::name).
> +
> +             board_id:       (RO) Manufacturing board id
> +
> +
> +sysfs interface for Mellanox ConnectX HCA IB driver (mlx4)
> +----------------------------------------------------------
> +
> +What:                /sys/class/infiniband/mlx4_X/hw_rev
> +What:                /sys/class/infiniband/mlx4_X/hca_type
> +What:                /sys/class/infiniband/mlx4_X/board_id
> +Date:                Sep, 2007
> +KernelVersion:       v2.6.24
> +Contact:     [email protected]
> +Description:
> +             hw_rev:         (RO) Hardware revision number
> +
> +             hca_type:       (RO) Host channel adapter type
> +
> +             board_id:       (RO) Manufacturing board ID
> +
> +
> +What:                
> /sys/class/infiniband/mlx4_X/iov/ports/<port-num>/gids/<n>
> +What:                
> /sys/class/infiniband/mlx4_X/iov/ports/<port-num>/admin_guids/<n>
> +What:                
> /sys/class/infiniband/mlx4_X/iov/ports/<port-num>/pkeys/<n>
> +What:                /sys/class/infiniband/mlx4_X/iov/ports/<port-num>/mcgs/
> +What:                
> /sys/class/infiniband/mlx4_X/iov/ports/<pci-slot-num>/ports/<m>/gid_idx/0
> +What:                
> /sys/class/infiniband/mlx4_X/iov/ports/<pci-slot-num>/ports/<m>/pkey_idx/<n>
> +Date:                Aug, 2012
> +KernelVersion:       v3.6.15
> +Contact:     [email protected]
> +Description:
> +             The sysfs iov directory is used to manage and examine the port
> +             P_Key and guid paravirtualization. This directory is added only
> +             for the master -- slaves do not have it.
> +
> +             Under iov/ports, the administrator may examine the gid and P_Key
> +             tables as they are present in the device (and as are seen in the
> +             "network view" presented to the SM).
> +
> +             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.
> +
> +             gids/<n>:               (RO) The physical port gids n = 0..127
> +
> +             admin_guids/<n>:        (RW) Allows examining or changing the
> +                                     administrative state of a given GUID
> +                                     n = 0..127
> +
> +             pkeys/<n>:              (RO) Displays the contents of the 
> physical
> +                                     key table n = 0..126
> +
> +             mcgs/:                  (RO) Muticast group table
> +
> +             <m>/gid_idx/0:          (RO) Display the GID mapping m = 1..2
> +
> +             <m>/pkey_idx/<n>:       (RW) Writable except for RoCE pkeys.
> +                                     m = 1..2, n = 0..126
> +
> +                                     Under the iov/<pci slot number>
> +                                     directories, the admin may map the index
> +                                     numbers in the physical tables (as under
> +                                     iov/ports) to the paravirtualized index
> +                                     numbers that guests see.
> +
> +                                     For example, if the administrator, for
> +                                     port 1 on guest 2 maps physical pkey
> +                                     index 10 to virtual index 1, then that
> +                                     guest, whenever it uses its pkey index
> +                                     1, will actually be using the real pkey
> +                                     index 10.
> +
> +
> +What:                
> /sys/class/infiniband/mlx4_X/iov/<pci-slot-num>/ports/<m>/smi_enabled
> +What:           
> /sys/class/infiniband/mlx4_X/iov/<pci-slot-num>/ports/<m>/enable_smi_admin
> +Date:                May, 2014
> +KernelVersion:       v3.15.7
> +Contact:     [email protected]
> +Description:
> +             Enabling QP0 on VFs for selected VF/port. By default, no VFs are
> +             enabled for QP0 operation.
> +
> +             smi_enabled:    (RO) Indicates whether smi is currently enabled
> +                             for the indicated VF/port
> +
> +             enable_smi_admin:(RW) Used by the admin to request that smi
> +                             capability be enabled or disabled for the
> +                             indicated VF/port. 0 = disable, 1 = enable.
> +
> +             The requested enablement will occur at the next reset of the VF
> +             (e.g. driver restart on the VM which owns the VF).
> +
> +
> +sysfs interface for NetEffect RNIC Low-Level iWARP driver (nes)
> +---------------------------------------------------------------
> +
> +What:                /sys/class/infiniband/nesX/hw_rev
> +What:                /sys/class/infiniband/nesX/hca_type
> +What:                /sys/class/infiniband/nesX/board_id
> +Date:                Feb, 2008
> +KernelVersion:       v2.6.25
> +Contact:     [email protected]
> +Description:
> +             hw_rev:         (RO) Hardware revision number
> +
> +             hca_type:       (RO) Host Channel Adapter type (NEX020)
> +
> +             board_id:       (RO) Manufacturing board id
> +
> +
> +sysfs interface for Chelsio T4/T5 RDMA driver (cxgb4)
> +-----------------------------------------------------
> +
> +What:                /sys/class/infiniband/cxgb4_X/hw_rev
> +What:                /sys/class/infiniband/cxgb4_X/hca_type
> +What:                /sys/class/infiniband/cxgb4_X/board_id
> +Date:                Apr, 2010
> +KernelVersion:       v2.6.35
> +Contact:     [email protected]
> +Description:
> +
> +             hw_rev:         (RO) Hardware revision number
> +
> +             hca_type:       (RO) Driver short name. Should normally match
> +                             the name in its bus driver structure (e.g.
> +                             pci_driver::name)
> +
> +             board_id:       (RO) Manufacturing board id. (Vendor + device
> +                             information)
> +
> +
> +sysfs interface for Intel IB driver qib
> +---------------------------------------
> +
> +What:                /sys/class/infiniband/qibX/version
> +What:                /sys/class/infiniband/qibX/hw_rev
> +What:                /sys/class/infiniband/qibX/hca_type
> +What:                /sys/class/infiniband/qibX/board_id
> +What:                /sys/class/infiniband/qibX/boardversion
> +What:                /sys/class/infiniband/qibX/nctxts
> +What:                /sys/class/infiniband/qibX/localbus_info
> +What:                /sys/class/infiniband/qibX/tempsense
> +What:                /sys/class/infiniband/qibX/serial
> +What:                /sys/class/infiniband/qibX/nfreectxts
> +What:                /sys/class/infiniband/qibX/chip_reset
> +Date:                May, 2010
> +KernelVersion:       v2.6.35
> +Contact:     [email protected]
> +Description:
> +             version:        (RO) Display version information of installed 
> software
> +                             and drivers.
> +
> +             hw_rev:         (RO) Hardware revision number
> +
> +             hca_type:       (RO) Host channel adapter type
> +
> +             board_id:       (RO) Manufacturing board id
> +
> +             boardversion:   (RO) Current version of the chip architecture
> +
> +             nctxts:         (RO) Return the number of user ports (contexts)
> +                             available
> +
> +             localbus_info:  (RO) Human readable localbus info
> +
> +             tempsense:      (RO) Display temp sense registers in decimal
> +
> +             serial:         (RO) Serial number of the HCA
> +
> +             nfreectxts:     (RO) The number of free user ports (contexts)
> +                             available.
> +
> +             chip_reset:     (WO) Reset the chip if possible by writing
> +                             "reset" to this file. Only allowed if no user
> +                             contexts are open that use chip resources.
> +
> +
> +What:                /sys/class/infiniband/qibX/ports/N/sl2vl/[0-15]
> +Date:                May, 2010
> +KernelVersion:       v2.6.35
> +Contact:     [email protected]
> +Description:
> +             (RO) The directory contains 16 files numbered 0-15 that specify
> +             the Service Level (SL). Listing the SL files returns the Virtual
> +             Lane (VL) as programmed by the SL.
> +
> +What:                
> /sys/class/infiniband/qibX/ports/N/CCMgtA/cc_settings_bin
> +What:                /sys/class/infiniband/qibX/ports/N/CCMgtA/cc_table_bin
> +Date:                May, 2010
> +KernelVersion:       v2.6.35
> +Contact:     [email protected]
> +Description:
> +             Per-port congestion control. Both are binary attributes.
> +
> +             cc_table_bin:   (RO) Congestion control table size followed by
> +                             table entries.
> +
> +             cc_settings_bin:(RO) Congestion settings: port control, control
> +                             map and an array of 16 entries for the
> +                             congestion entries - increase, timer, event log
> +                             trigger threshold and the minimum injection rate
> +                             delay.
> +
> +What:                /sys/class/infiniband/qibX/ports/N/linkstate/loopback
> +What:                
> /sys/class/infiniband/qibX/ports/N/linkstate/led_override
> +What:                
> /sys/class/infiniband/qibX/ports/N/linkstate/hrtbt_enable
> +What:                /sys/class/infiniband/qibX/ports/N/linkstate/status
> +What:                /sys/class/infiniband/qibX/ports/N/linkstate/status_str
> +Date:                May, 2010
> +KernelVersion:       v2.6.35
> +Contact:     [email protected]
> +Description:
> +             [to be documented]
> +
> +             loopback:       (WO)
> +             led_override:   (WO)
> +             hrtbt_enable:   (RW)
> +             status:         (RO)
> +
> +             status_str:     (RO) Displays information about the link state,
> +                             possible cable/switch problems, and hardware
> +                             errors. Possible states are- "Initted",
> +                             "Present", "IB_link_up", "IB_configured" or
> +                             "Fatal_Hardware_Error".
> +
> +What:                
> /sys/class/infiniband/qibX/ports/N/diag_counters/rc_resends
> +What:                
> /sys/class/infiniband/qibX/ports/N/diag_counters/seq_naks
> +What:                
> /sys/class/infiniband/qibX/ports/N/diag_counters/rdma_seq
> +What:                
> /sys/class/infiniband/qibX/ports/N/diag_counters/rnr_naks
> +What:                
> /sys/class/infiniband/qibX/ports/N/diag_counters/other_naks
> +What:                
> /sys/class/infiniband/qibX/ports/N/diag_counters/rc_timeouts
> +What:                
> /sys/class/infiniband/qibX/ports/N/diag_counters/look_pkts
> +What:                
> /sys/class/infiniband/qibX/ports/N/diag_counters/pkt_drops
> +What:                
> /sys/class/infiniband/qibX/ports/N/diag_counters/dma_wait
> +What:                
> /sys/class/infiniband/qibX/ports/N/diag_counters/unaligned
> +Date:                May, 2010
> +KernelVersion:       v2.6.35
> +Contact:     [email protected]
> +Description:
> +             [to be documented]
> +
> +
> +sysfs interface for Mellanox Connect-IB HCA driver mlx5
> +-------------------------------------------------------
> +
> +What:                /sys/class/infiniband/mlx5_X/hw_rev
> +What:                /sys/class/infiniband/mlx5_X/hca_type
> +What:                /sys/class/infiniband/mlx5_X/reg_pages
> +What:                /sys/class/infiniband/mlx5_X/fw_pages
> +Date:                Jul, 2013
> +KernelVersion:       v3.11
> +Contact:     [email protected]
> +Description:
> +             [to be documented]
> +
> +
> +sysfs interface for Cisco VIC (usNIC) Verbs Driver
> +--------------------------------------------------
> +
> +What:                /sys/class/infiniband/usnic_X/board_id
> +What:                /sys/class/infiniband/usnic_X/config
> +What:                /sys/class/infiniband/usnic_X/qp_per_vf
> +What:                /sys/class/infiniband/usnic_X/max_vf
> +What:                /sys/class/infiniband/usnic_X/cq_per_vf
> +What:                /sys/class/infiniband/usnic_X/iface
> +Date:                Sep, 2013
> +KernelVersion:       v3.14
> +Contact:     Christian Benvenuti <[email protected]>,
> +             Dave Goodell <[email protected]>,
> +             [email protected]
> +Description:
> +
> +             board_id:       (RO) Manufacturing board id
> +
> +             config:         (RO) Report the configuration for this PF
> +
> +             qp_per_vf:      (RO) Queue pairs per virtual function.
> +
> +             max_vf:         (RO) Max virtual functions
> +
> +             cq_per_vf:      (RO) Completion queue per virtual function
> +
> +             iface:          (RO) Shows which network interface this usNIC
> +                             entry is associated to (visible with ifconfig).
> +
> +What:                /sys/class/infiniband/usnic_X/qpn/summary
> +What:                /sys/class/infiniband/usnic_X/qpn/context
> +Date:                Sep, 2013
> +KernelVersion:       v3.14
> +Contact:     Christian Benvenuti <[email protected]>,
> +             Dave Goodell <[email protected]>,
> +             [email protected]
> +Description:
> +             [to be documented]
> +
> +
> +sysfs interface for Emulex RoCE HCA Driver
> +------------------------------------------
> +
> +What:                /sys/class/infiniband/ocrdmaX/hw_rev
> +Date:                Feb, 2014
> +KernelVersion:       v3.14
> +Description:
> +             hw_rev:         (RO) Hardware revision number
> +
> +What:                /sys/class/infiniband/ocrdmaX/hca_type
> +Date:                Jun, 2014
> +KernelVersion:       v3.16
> +Contact:     [email protected]
> +Description:
> +             hca_type:       (RO) Display FW version
> +
> +
> +sysfs interface for Intel Omni-Path driver (HFI1)
> +-------------------------------------------------
> +
> +What:                /sys/class/infiniband/hfi1_X/hw_rev
> +What:                /sys/class/infiniband/hfi1_X/board_id
> +What:                /sys/class/infiniband/hfi1_X/nctxts
> +What:                /sys/class/infiniband/hfi1_X/serial
> +What:                /sys/class/infiniband/hfi1_X/chip_reset
> +What:                /sys/class/infiniband/hfi1_X/boardversion
> +What:                /sys/class/infiniband/hfi1_X/nfreectxts
> +What:                /sys/class/infiniband/hfi1_X/tempsense
> +Date:                May, 2016
> +KernelVersion:       v4.6
> +Contact:     [email protected]
> +Description:
> +             hw_rev:         (RO) Hardware revision number
> +
> +             board_id:       (RO) Manufacturing board id
> +
> +             nctxts:         (RO) Total contexts available.
> +
> +             serial:         (RO) Board serial number
> +
> +             chip_reset:     (WO) Write "reset" to this file to reset the
> +                             chip if possible. Only allowed if no user
> +                             contexts are open that use chip resources.
> +
> +             boardversion:   (RO) Human readable board info
> +
> +             nfreectxts:     (RO) The number of free user ports (contexts)
> +                             available.
> +
> +             tempsense:      (RO) Thermal sense information
> +
> +
> +What:                
> /sys/class/infiniband/hfi1_X/ports/N/CCMgtA/cc_settings_bin
> +What:                /sys/class/infiniband/hfi1_X/ports/N/CCMgtA/cc_table_bin
> +What:                /sys/class/infiniband/hfi1_X/ports/N/CCMgtA/cc_prescan
> +Date:                May, 2016
> +KernelVersion:       v4.6
> +Contact:     [email protected]
> +Description:
> +             Per-port congestion control.
> +
> +             cc_table_bin:   (RO) CCA tables used by PSM2 Congestion control
> +                             table size followed by table entries. Binary
> +                             attribute.
> +
> +             cc_settings_bin:(RO) Congestion settings: port control, control
> +                             map and an array of 16 entries for the
> +                             congestion entries - increase, timer, event log
> +                             trigger threshold and the minimum injection rate
> +                             delay. Binary attribute.
> +
> +             cc_prescan:     (RW) enable prescanning for faster BECN
> +                             response. Write "on" to enable and "off" to
> +                             disable.
> +
> +What:                /sys/class/infiniband/hfi1_X/ports/N/sc2vl/[0-31]
> +What:                /sys/class/infiniband/hfi1_X/ports/N/sl2sc/[0-31]
> +What:                /sys/class/infiniband/hfi1_X/ports/N/vl2mtu/[0-15]
> +Date:                May, 2016
> +KernelVersion:       v4.6
> +Contact:     [email protected]
> +Description:
> +             sc2vl/:         (RO) 32 files (0 - 31) used to translate sl->vl
> +
> +             sl2sc/:         (RO) 32 files (0 - 31) used to translate sl->sc
> +
> +             vl2mtu/:        (RO) 16 files (0 - 15) used to determine MTU 
> for vl
> +
> +
> +What:                /sys/class/infiniband/hfi1_X/sdma_N/cpu_list
> +What:                /sys/class/infiniband/hfi1_X/sdma_N/vl
> +Date:                Sept, 2016
> +KernelVersion:       v4.8
> +Contact:     [email protected]
> +Description:
> +             sdma<N>/ contains one directory per sdma engine (0 - 15)
> +
> +             cpu_list:       (RW) List of cpus for user-process to sdma
> +                             engine assignment.
> +
> +             vl:             (RO) Displays the virtual lane (vl) the sdma
> +                             engine maps to.
> +
> +             This interface gives the user control on the affinity settings
> +             for the device. As an example, to set an sdma engine irq
> +             affinity and thread affinity of a user processes to use the
> +             sdma engine, which is "near" in terms of NUMA configuration, or
> +             physical cpu location, the user will do:
> +
> +             echo "3" > /proc/irq/<N>/smp_affinity_list
> +             echo "4-7" > /sys/devices/.../sdma3/cpu_list
> +             cat /sys/devices/.../sdma3/vl
> +             0
> +             echo "8" > /proc/irq/<M>/smp_affinity_list
> +             echo "9-12" > /sys/devices/.../sdma4/cpu_list
> +             cat /sys/devices/.../sdma4/vl
> +             1
> +
> +             to make sure that when a process runs on cpus 4,5,6, or 7, and
> +             uses vl=0, then sdma engine 3 is selected by the driver, and
> +             also the interrupt of the sdma engine 3 is steered to cpu 3.
> +             Similarly, when a process runs on cpus 9,10,11, or 12 and sets
> +             vl=1, then engine 4 will be selected and the irq of the sdma
> +             engine 4 is steered to cpu 8.  This assumes that in the above N
> +             is the irq number of "sdma3", and M is irq number of "sdma4" in
> +             the /proc/interrupts file.
> +
> +
> +sysfs interface for Intel(R) X722 iWARP i40iw driver
> +----------------------------------------------------
> +
> +What:                /sys/class/infiniband/i40iwX/hw_rev
> +What:                /sys/class/infiniband/i40iwX/hca_type
> +What:                /sys/class/infiniband/i40iwX/board_id
> +Date:                Jan, 2016
> +KernelVersion:       v4.10
> +Contact:     [email protected]
> +Description:
> +             hw_rev:         (RO) Hardware revision number
> +
> +             hca_type:       (RO) Show HCA type (I40IW)
> +
> +             board_id:       (RO) I40IW board ID
> +
> +
> +sysfs interface for QLogic qedr NIC Driver
> +------------------------------------------
> +
> +What:                /sys/class/infiniband/qedrX/hw_rev
> +What:                /sys/class/infiniband/qedrX/hca_type
> +Date:                Oct, 2016
> +KernelVersion:       v4.10
> +Contact:     [email protected]
> +Description:
> +
> +             hw_rev:         (RO) Hardware revision number
> +
> +             hca_type:       (RO) Display HCA type
> +
> +
> +sysfs interface for VMware Paravirtual RDMA driver
> +--------------------------------------------------
> +
> +What:                /sys/class/infiniband/vmw_pvrdmaX/hw_rev
> +What:                /sys/class/infiniband/vmw_pvrdmaX/hca_type
> +What:                /sys/class/infiniband/vmw_pvrdmaX/board_id
> +Date:                Oct, 2016
> +KernelVersion:       v4.10
> +Contact:     [email protected]
> +Description:
> +
> +             hw_rev:         (RO) Hardware revision number
> +
> +             hca_type:       (RO) Host channel adapter type
> +
> +             board_id:       (RO) Display PVRDMA manufacturing board ID
> +
> +
> +sysfs interface for Broadcom NetXtreme-E RoCE driver
> +----------------------------------------------------
> +
> +What:                /sys/class/infiniband/bnxt_reX/hw_rev
> +What:                /sys/class/infiniband/bnxt_reX/hca_type
> +Date:                Feb, 2017
> +KernelVersion:       v4.11
> +Contact:     [email protected]
> +Description:
> +             hw_rev:         (RO) Hardware revision number
> +
> +             hca_type:       (RO) Host channel adapter type
> diff --git a/Documentation/ABI/testing/sysfs-class-infiniband 
> b/Documentation/ABI/testing/sysfs-class-infiniband
> deleted file mode 100644
> index a86abe66a316..000000000000
> --- a/Documentation/ABI/testing/sysfs-class-infiniband
> +++ /dev/null
> @@ -1,16 +0,0 @@
> -What:                
> /sys/class/infiniband/<hca>/ports/<port-number>/gid_attrs/ndevs/<gid-index>
> -Date:                November 29, 2015
> -KernelVersion:       4.4.0
> -Contact:     [email protected]
> -Description:         The net-device's name associated with the GID resides
> -             at index <gid-index>.
> -
> -What:                
> /sys/class/infiniband/<hca>/ports/<port-number>/gid_attrs/types/<gid-index>
> -Date:                November 29, 2015
> -KernelVersion:       4.4.0
> -Contact:     [email protected]
> -Description:         The RoCE type of the associated GID resides at index 
> <gid-index>.
> -             This could either be "IB/RoCE v1" for IB and RoCE v1 based GODs
> -             or "RoCE v2" for RoCE v2 based GIDs.
> -
> -
> diff --git a/Documentation/infiniband/sysfs.txt 
> b/Documentation/infiniband/sysfs.txt
> index 77570d16b170..9fab5062f84b 100644
> --- a/Documentation/infiniband/sysfs.txt
> +++ b/Documentation/infiniband/sysfs.txt
> @@ -1,129 +1,4 @@
>  SYSFS FILES
>  
> -  For each InfiniBand device, the InfiniBand drivers create the
> -  following files under /sys/class/infiniband/<device name>:
> -
> -    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
> -
> -   sdma<N>/ - one directory per sdma engine (0 - 15)
> -     sdma<N>/cpu_list - read-write, list of cpus for user-process to sdma
> -                        engine assignment.
> -     sdma<N>/vl - read-only, vl the sdma engine maps to.
> -
> -     The new interface will give the user control on the affinity settings
> -     for the hfi1 device.
> -     As an example, to set an sdma engine irq affinity and thread affinity
> -     of a user processes to use the sdma engine, which is "near" in terms
> -     of NUMA configuration, or physical cpu location, the user will do:
> -
> -     echo "3" > /proc/irq/<N>/smp_affinity_list
> -     echo "4-7" > /sys/devices/.../sdma3/cpu_list
> -     cat /sys/devices/.../sdma3/vl
> -     0
> -     echo "8" > /proc/irq/<M>/smp_affinity_list
> -     echo "9-12" > /sys/devices/.../sdma4/cpu_list
> -     cat /sys/devices/.../sdma4/vl
> -     1
> -
> -     to make sure that when a process runs on cpus 4,5,6, or 7,
> -     and uses vl=0, then sdma engine 3 is selected by the driver,
> -     and also the interrupt of the sdma engine 3 is steered to cpu 3.
> -     Similarly, when a process runs on cpus 9,10,11, or 12 and sets vl=1,
> -     then engine 4 will be selected and the irq of the sdma engine 4 is
> -     steered to cpu 8.
> -     This assumes that in the above N is the irq number of "sdma3",
> -     and M is irq number of "sdma4" in the /proc/interrupts file.
> -
> -   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
> +The sysfs interface has moved to
> +Documentation/ABI/stable/sysfs-class-infiniband.
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-doc" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to