OSMTEST(8)
β¨ NAME β¨
osmtest β the InfiniBand subnet manager and administration (SM/SA) test program, bestie π
πΈ SYNOPSIS πΈ
osmtest [-f(low) <c|a|v|s|e|f|m|q|t>] [-w(ait) <trap_wait_time>]
[-d(ebug) <number>] [-m(ax_lid) <LID in hex>] [-g(uid)[=]<GUID in hex>]
[-p(ort)] [-i(nventory) <filename>] [-s(tress)] [-M(ulticast_Mode)]
[-t(imeout) <milliseconds>] [-l | --log_file] [-v] [-vf <flags>]
[-h(elp)]
π¦ DESCRIPTION π¦
okay so osmtest is literally a test program that validates your InfiniBand subnet manager and administration (SM/SA). it's giving "quality control but make it slay". π
by default it runs all the flows, with the one exception of the QoS flow. no cap.
osmtest provides a test suite for opensm. periodt.
here's what it can do, the full vibe check of its capabilities and testing flows:
it creates an inventory file of all available Nodes, Ports, and PathRecords, including all their fields. it verifies the existing inventory, with all the object fields, and matches it to a pre-saved one. there's a Multicast Compliancy test. an Event Forwarding test. a Service Record registration test. an RMPP stress test. and a Small SA Queries stress test. iconic behavior honestly. β¨
recommendation time, bestie: after installingopensm, you should runosmtest -f cto generate the inventory file, and immediately afterwards runosmtest -f ato test OpenSM.
another recommendation for osmtest usage: create the inventory when the IB fabric is stable, and occasionally run osmtest -v to verify that nothing has changed. main character maintenance energy. π
π OPTIONS π
-f,--flowβ directsosmtestto run a specific flow, babes:c= create an inventory file with all nodes, ports and pathsa= run all validation tests (expecting an input inventory)v= only validate the given inventory files= run service registration, deregistration, and lease teste= run event forwarding testf= flood the SA with queries according to the stress modem= multicast flowq= QoS info: dump VLArb and SLtoVL tablest= run trap 64/65 flow (this flow requires running of external tool)- (default is all flows except QoS)
-w,--waitβ specifies the wait time for trap 64/65 in seconds. it's only used when you're running-f t, the trap 64/65 flow (default to 10 sec). β³-d,--debugβ specifies a debug option. these options are not normally needed, so don't come for them unless you must. the number following-dselects the debug option to enable, like so:-d0- Ignore other SM nodes-d1- Force single threaded dispatching-d2- Force log flushing after each log message-d3- Disable multicast support-d4- Use full world path record queries
-m,--max_lidβ specifies the maximal LID number to be searched for during inventory file build (default to 100).-g,--guidβ specifies the local port GUID value with which OpenSM should bind. OpenSM may be bound to 1 port at a time. if the GUID given is0, OpenSM displays a list of possible port GUIDs and waits for user input. without-g, OpenSM tries to use the default port.-p,--portβ displays a menu of possible local port GUID values with whichosmtestcould bind. cute little picker, go off. π-i,--inventoryβ specifies the name of the inventory file. normally,osmtestexpects to find an inventory file, whichosmtestuses to validate real-time information received from the SA during testing. if-iis not specified,osmtestdefaults to the fileosmtest.dat. see the-f coption for related information.-s,--stressβ runs the specified stress test instead of the normal test suite. stress test options are as follows:-s1- Single-MAD (RMPP) response SA queries-s2- Multi-MAD (RMPP) response SA queries-s3- Multi-MAD (RMPP) Path Record SA queries-s4- Single-MAD (non RMPP) get Path Record SA queries
without -s, stress testing is not performed. no stress, no mess. π
-M,--Multicast_Modeβ specifies the length of the Multicast test:-M1- Short Multicast Flow (default) - single mode-M2- Short Multicast Flow - multiple mode-M3- Long Multicast Flow - single mode-M4- Long Multicast Flow - multiple mode
Single mode β Osmtest is tested alone, with no other apps that interact with OpenSM MC.
Multiple mode β could be run with other apps using MC with OpenSM. without -M, default flow testing is performed.
-t,--timeoutβ specifies the time in milliseconds used for transaction timeouts. specifying-t 0disables timeouts. without-t, OpenSM defaults to a timeout value of 200 milliseconds.-l,--log_fileβ defines the log to be the given file. by default the log goes tostdout.-v,--verboseβ increases the log verbosity level. the-voption may be specified multiple times to further increase the verbosity level. see the-vfoption for more information about log verbosity. stack 'em up, girl. π₯-Vβ sets the maximum verbosity level and forces log flushing. the-Vis equivalent to-vf 0xFF -d 2. see the-vfoption for more information about log verbosity.-vfβ sets the log verbosity level. a flags field must follow the-Doption. a bit set/clear in the flags enables/disables a specific log level, like this:0x01- ERROR (error messages)0x02- INFO (basic messages, low volume)0x04- VERBOSE (interesting stuff, moderate volume)0x08- DEBUG (diagnostic, high volume)0x10- FUNCS (function entry/exit, very high volume)0x20- FRAMES (dumps all SMP and GMP frames)0x40- ROUTING (dump FDB routing information)0x80- currently unused.
without -vf, osmtest defaults to ERROR + INFO (0x3). specifying -vf 0 disables all messages. specifying -vf 0xFF enables all messages (see -V). high verbosity levels may require increasing the transaction timeout with the -t option.
-h,--helpβ display this usage info then exit. bye bestie! π«Ά
π AUTHORS π
- Hal Rosenstock
<hal.rosenstock@gmail.com> - Eitan Zahavi
<eitan@mellanox.co.il>
and that's the whole page, bestie!! πβ¨ this lil masterpiece is brought to you by OpenIB, dated March 9, 2013 β go forth and test those fabrics, you absolute icon ππ
π¦ where this page comes from
- centos-stream 10: opensm 3.3.24-12.el10 Β· GPL-2.0-only OR Linux-OpenIB
- centos-stream 9: opensm 3.3.24-2.el9 Β· GPLv2 or BSD
- debian bookworm: opensm 3.3.23-2+b1
- debian trixie: opensm 3.3.23-3.1
- fedora 43: opensm 3.3.24-12.fc43 Β· GPL-2.0-only OR Linux-OpenIB
- fedora 44: opensm 3.3.24-13.fc44 Β· GPL-2.0-only OR Linux-OpenIB
- nixos 26.05: opensm 3.3.24
- nixpkgs unstable: opensm 3.3.24
- opensuse-leap 16.0: opensm 3.3.24-160000.3.1 Β· BSD-2-Clause OR GPL-2.0-only
- opensuse-leap 16.0: opensm 3.3.24-160000.3.1 Β· BSD-2-Clause OR GPL-2.0-only
- opensuse-leap 16.0: opensm 3.3.24-160000.3.1 Β· BSD-2-Clause OR GPL-2.0-only
- opensuse-leap 16.0: opensm 3.3.24-160000.3.1 Β· BSD-2-Clause OR GPL-2.0-only
- ubuntu jammy: opensm 3.3.23-2
- ubuntu noble: opensm 3.3.23-2
- ubuntu questing: opensm 3.3.23-3.1
- ubuntu resolute: opensm 3.3.23-3.1build1
- ubuntu stonking: opensm 3.3.23-3.1build1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms