Go to main content

man pages section 4: Device and Network Interfaces

Exit Print View

Updated: Thursday, June 13, 2019
 
 

ib(4D)

Name

ib - InfiniBand Bus Nexus Driver

Description

The ib (IB nexus) driver is a pseudo nexus driver that supports enumeration of port devices, VPPA (Virtual Physical Point Attachment), HCA_SVC (HCA Service) devices, and I/O controllers (IOC) on the InfiniBand fabric that are visible to the host and provides interfaces to cfgadm_ib(8) to manage hot-plugging of IB devices. The ib nexus driver enumerates the port device, VPPA devices and HCA_SVC devices based on entries specified in the ib.conf file. IOC devices are enumerated on demand. The IB nexus driver uses InfiniBand Device Manager services (ibdm(4D)) to enumerate port devices, VPPA devices, HCA_SVC devices, and IOCs on the IB fabric.

CONFIGURATION

You configure the ib driver by defining properties in the ib.conf file. The IB nexus driver supports the following properties:

PROPERTY NAME
DEFAULT
POSSIBLE VALUES
port-svc-list
""
List of service names, for example: srv
vppa-svc-list
""
List of service names, for example: ipib
hca-svc-list
""
List of service names, for example: hca_nfs

The port-svc-list property defines the list of port communication service names per port. The IB nexus driver creates a device instance for each entry in this property per Host Channel Adapter (HCA) port. The ib.conf file contains a port-svc-list="" entry by default. You update port-svc-list with service names you want to add to the system.

The vppa-svc-list property defines the list of VPPA communication service names per port per partition key. The IB nexus driver creates a device instance for each entry in this property per Host Channel Adapter (HCA) port. The ib.conf file contains a vppa-svc-list="" entry by default. You update vppa-svc-list with service names you want to add to the system.

The hca-svc-list property defines the list of HCA_SVC communication service names per HCA. The IB nexus driver creates a device instance for each entry in this property per Host Channel Adapter (HCA). The ib.conf file contains a hca-svc-list="" entry by default. You update hca-svc-list with service names you want to add to the system.

The service name specified in port-svc-list, vppa-svc-list and hca-svc-list must be unique, be a maximum of four characters long, and is limited to digits 0-9 and letters a-z and A-Z.

IOC drivers (which are parented by the IB nexus driver) may themselves have .conf files. To distinguish those cases from pseudo drivers parented by IB nexus, such drivers should include the "ib-node-type" property with value merge in the IOC driver.conf file. That property ensures that properties from the .conf file are merged with other properties found through hardware probing.

Examples

Example 1: A sample ib.conf file with one service name entry for PORT communication services.


    #
    # Copyright 2001-2003 Sun Microsystems, Inc.  All rights reserved.
    # Use is subject to license terms.
    # 
    port-svc-list="" 
    vppa-svc-list="";
    hca-svc-list="";

In Example 1, the IB nexus driver does not create any port/vppa/hca_svc device instances.

Example 2: A sample ib.conf file with one entry for "srv" service:

   
   port-svc-list="srv" 
   vppa-svc-list="";
   hca-svc-list="";

The IB nexus driver creates one srv service instance for every HCA port that exists on the host. For example, if there are two HCAs, each with two ports on the host, the IB nexus driver creates four instances of the srv service.

Example 3: A sample ib.conf file with one service name entry for each of Port and VPPA communication services:

   
   port-svc-list="srv" 
   vppa-svc-list="ipib";
   hca-svc-list="";

If there are two HCAs in the system with two ports each and each port has two valid PKEY values, the IB nexus driver creates four instances of srv service (one for each port). It also creates eight instances of ipd service (one per each port/PKEY combination).

Example 4: A sample ib.conf file with one service name entry for each of Port, VPPA and HCA_SVC communication services:

   
   port-svc-list="srv";
   vppa-svc-list="ipib";
   hca-svc-list="hca_nfs";

The IB nexus driver creates one instance of hca_nfs service for each HCA in the system.

Example 5: IOC driver .conf


 ib-node-type="merge";
 enable-special-mode="on";

Files

/kernel/drv/amd64/ib

64-bit x86 ELF kernel module

/kernel/drv/sparcv9/ib

64-bit SPARC ELF kernel module

/kernel/drv/ib.conf

driver configuration file

Attributes

See attributes(7) for a description of the following attribute:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Architecture
SPARC, x86
Availability
system/header, system/io/infiniband
Interface Stability
Consolidation Private

See Also

ibcm(4D), ibdm(4D), ibtl(4D), driver.conf(5), ib(5), attributes(7), cfgadm_ib(8)

Writing Device Drivers in Oracle Solaris 11.4

InfiniBand Architecture Specification, Volume 1: Release 1.1

Diagnostics

In addition to being logged, the following messages may appear on the system console. All messages are formatted in the following manner:

ib: WARNING: Error message...
unit-address property in %s.conf not well-formed.

The driver.conf file does not have a valid "unit-addr" property defined. This property is an array of strings.

cannot find unit-address in %s.conf.

The driver.conf file does not have a valid "unit-addr" property defined. This property is an array of strings.

Waiting for Port %d initialization.

Waiting for port initialization from subnet manager.