Infiniband subnet manager and administration (sm/sa) test program
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)]
osmtest is a test program to validate InfiniBand subnet manager and administration (SM/SA).
Default is to run all flows with the exception of the QoS flow.
osmtest provides a test suite for opensm.
osmtest has the following 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. A Multicast Compliancy test. An Event Forwarding test. A Service Record registration test. An RMPP stress test. A Small SA Queries stress test.
It is recommended that after installing opensm, the user should run "osmtest -f c" to generate the inventory file, and immediately afterwards run "osmtest -f a" to test OpenSM.
Another recommendation for osmtest usage is to create the inventory when the IB fabric is stable, and occasionally run "osmtest -v" to verify that nothing has changed.
This option directs osmtest to run a specific flow: FLOW DESCRIPTION c = create an inventory file with all nodes, ports and paths a = run all validation tests (expecting an input inventory) v = only validate the given inventory file s = run service registration, deregistration, and lease test e = run event forwarding test f = flood the SA with queries according to the stress mode m = multicast flow q = QoS info: dump VLArb and SLtoVL tables t = run trap 64/65 flow (this flow requires running of external tool) (default is all flows except QoS)
This option specifies the wait time for trap 64/65 in seconds It is used only when running -f t - the trap 64/65 flow (default to 10 sec)
This option specifies a debug option. These options are not normally needed. The number following -d selects the debug option to enable as follows:
OPT Description --- ----------------- -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
This option specifies the maximal LID number to be searched for during inventory file build (default to 100)
This option specifies the local port GUID value with which OpenSM should bind. OpenSM may be bound to 1 port at a time. If GUID given is 0, OpenSM displays a list of possible port GUIDs and waits for user input. Without -g, OpenSM trys to use the default port.
This option displays a menu of possible local port GUID values with which osmtest could bind
This option specifies the name of the inventory file Normally, osmtest expects to find an inventory file, which osmtest uses to validate real-time information received from the SA during testing If -i is not specified, osmtest defaults to the file \'osmtest.dat\' See -c option for related information
This option runs the specified stress test instead of the normal test suite Stress test options are as follows:
OPT Description --- ----------------- -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
This option specify length of Multicast test:
OPT Description --- ----------------- -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
This option specifies the time in milliseconds used for transaction timeouts. Specifying -t 0 disables timeouts. Without -t, OpenSM defaults to a timeout value of 200 milliseconds.
This option defines the log to be the given file. By default the log goes to stdout.
This option increases the log verbosity level. The -v option may be specified multiple times to further increase the verbosity level. See the -vf option for more information about. log verbosity.
This option sets the maximum verbosity level and forces log flushing. The -V is equivalent to '-vf 0xFF -d 2'. See the -vf option for more information about. log verbosity.
This option sets the log verbosity level. A flags field must follow the -D option. A bit set/clear in the flags enables/disables a specific log level as follows:
BIT LOG LEVEL ENABLED ---- ----------------- 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
Display this usage info then exit.