Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

/sys/class/infiniband_mad

FieldValue
SubsystemRDMA userspace MAD access, drivers/infiniband/core/user_mad.c (class umad_class, name “infiniband_mad”)
Config gateCONFIG_INFINIBAND_USER_MAD, “InfiniBand userspace MAD support”, depends on INFINIBAND (drivers/infiniband/Kconfig)
ABI documentationDocumentation/ABI/stable/sysfs-class-infiniband (umad/issm section, 5 What: entries)
Sincev2.6.12 (all entries, dated Apr 2005)
Live (5.10.134 host)none observed (no RDMA hardware in the container)
Ledger IDSYSC-infiniband_mad

What it represents

One device per port of each InfiniBand device for management-datagram access: umad<N> for MAD traffic and issm<N> for the subnet-manager port bit. A two-port HCA gets two umad and two issm devices; a switch gets one of each for port 0 (ABI description). The class-level abi_version counts user-visible ABI breaks.

Relationship to the device model

Class devices are named umad%d and issm%d (user_mad.c dev_set_name) and carry the devnode callback “infiniband/%s”, so the char device nodes land in /dev/infiniband/. Each umad/issm device is associated with one port of the HCA named by its ibdev attribute.

Attributes (source: ABI stable/sysfs-class-infiniband; class code user_mad.c)

AttributeR/WMeaning
abi_versionROClass attr; incremented when umad/issm userspace ABI compatibility breaks (user_mad.c returns IB_USER_MAD_ABI_VERSION)
umad<N>/ibdevROInfiniBand device name this port belongs to
umad<N>/portROPort number
issm<N>/ibdevROInfiniBand device name
issm<N>/portROPort number

Safety and writes

All five attributes are read-only. Opening the issm device sets the IsSM bit in the port capability mask (documented in the infiniband.md cap_mask row); MAD traffic itself flows through /dev/infiniband/umadN. None observed on the container host.

References