OSMTEST(8)

NAME
osmtest - InfiniBand subnet manager and administration (SM/SA) test program

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

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.

OPTIONS

-f, --flow
    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)

-w, --wait
    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)

-d, --debug
    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

-m, --max_lid
    This option specifies the maximal LID number to be searched for during inventory file build (default to 100)

-g, --guid
    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.

-p, --port
    This option displays a menu of possible local port GUID values with which osmtest could bind

-i, --inventory
    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 -f c option for related information

-s, --stress
    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

-M, --Multicast_Mode
    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

-t, --timeout
    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.

-l, --log_file
    This option defines the log to be the given file. By default the log goes to stdout.

-v, --verbose
    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.

-V  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.

-vf 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

-h, --help
    Display this usage info then exit.

AUTHORS

Hal Rosenstock
    <hal.rosenstock@gmail.com>

Eitan Zahavi
    <eitan@mellanox.co.il>