osmtest Command
Runs the InfiniBand Subnet Manager and administration test program.
Syntax
osmtest [-f c|a|v|s|e|f|m|q|t][-w time][-dopt][-m lid][-g guid][-p][-i filename][-sopt][-Mopt][-t timeout][-l path][-v][-vf flags][-h]
where:
-
time is the wait time in seconds.
-
opt is a numeric option.
-
lid is the local identifier.
-
guid is the global unit identifier.
-
filename is the path and name of the inventory file.
-
timeout is the timeout in milliseconds.
-
path is the path and name of the log file.
-
flags is the log verbosity.
Description
The osmtest command creates an inventory file of all available nodes, ports, and
path records, and compares the file with a previously created file. After the
first run of OpenSM, you can create the inventory file with the -f c
option. At a later time, you can run osmtest -f v to identify where there have
been changes.
The osmtest command conducts the following tests:
-
Multicast compliancy test
-
Event forwarding test
-
Service record registration test
-
RMPP stress test
-
Small Subnet Administrator queries test
Options
The following table describes the options to the osmtest command and their purposes:
|
|
-f |
Directs
osmtest to run a specific test flow:
c – Creates an inventory file with all nodes, ports, and paths.
a – Runs all validation tests.
v – Validates only the given inventory file.
s – Runs service registration, deregistration, and lease tests.
e – Runs the event forwarding test.
f – Floods the Subnet Administrator with queries according to the stress mode.
m – Multicast flow.
q – Quality of Service information, dumps the VLarb and SL2VL tables.
t – Runs trap 64/65 flow.
|
-w |
Specifies the wait time for the trap 64/65
flow. |
-d |
Specifies debug and an option to the debug. The value of -dopt
is as follows:
-d0 – Ignore other Subnet Manager nodes.
-d1 – Force single threaded dispatching.
-d2 – Force log flushing after each log message.
-d3 – Disable multicast support
|
-m |
Specifies the maximum LID to be searched during the inventory file build. |
-g |
Binds
OpenSM to the local port of guid value. If no value for guid
is provided, OpenSM will display available GUIDs and wait for user input. |
-p |
Displays
a list of available port GUIDs to which osmtest could bind. |
-i |
Specifies the filename
of the inventory file. The default is osmtest.dat. |
-s |
Runs the specified stress test instead of
the normal test suite. The value of -sopt is as follows:
-s1 – Single management datagram response Subnet Administrator queries.
-s2 – Multimanagement datagram RMPP response Subnet Administrator queries.
-s3 – Multimanagement datagram RMPP path record Subnet Administrator queries.
|
-M |
Specifies length of
multicast test. The value of -Mopt is as follows:
-M1 – Short multicast flow, single mode.
-M2 – Short multicast flow, multiple mode.
-M3 – Long multicast flow, single mode.
-M4 – Long multicast flow, multiple mode.
In single mode, osmtest is tested
alone. In multiple mode, osmtest is run with other applications using multicast with OpenSM.
|
-t |
Overrides the default timeout. |
-l |
Sets the log file to be path. The default action
is to direct the log to standard output. |
-v |
Increases the log verbosity. |
-V |
Sets the
log verbosity to maximum. The same as -vf 0xFF |
-vf |
Sets the log verbosity according
to the following bit flags:
0x01 – ERROR (error messages)
0x02 – INFO (basic messages, low volume)
0x04 – VERBOSE (moderate volume)
0x08 – DEBUG (diagnostic, high volume)
0x10 – FUNCS (function entry and exit, very high volume)
0x20 – FRAMES (dumps all SMP and GMP frames)
0x40 – ROUTING (dumps FDB routing information)
The default is ERROR + INFO, or 0x03. The option
-vf 0 turns off all log messaging.
Note - High verbosity levels might require increasing
the transaction timeout with the -t timeout option.
|
-h |
Displays usage information. |
|
Example
The following example shows how to run all validation tests with the osmtest
command.
# osmtest -f a
Command Line Arguments
Done with args
Flow = All Validations
Aug 13 23:00:48 919475 [B7E7B6C0] 0x7f -> Setting log level to: 0x03
Aug 13 23:00:48 920209 [B7E7B6C0] 0x02 -> osm_vendor_init: 1000 pending umads specified
using default guid 0x21283a8620b0f0
Aug 13 23:00:48 930634 [B7E7B6C0] 0x02 -> osm_vendor_bind: Binding to port 0x21283a8620b0f0
Aug 13 23:00:48 957644 [B7E7B6C0] 0x02 -> osmtest_validate_sa_class_port_info:
-----------------------------
SA Class Port Info:
base_ver:1
class_ver:2
cap_mask:0x2602
cap_mask2:0x0
resp_time_val:0x10
-----------------------------
Aug 13 23:00:48 962010 [B7E7B6C0] 0x01 -> osmtest_validate_node_data: Checking node 0x0021283a8620b0a0, LID 0x14
Aug 13 23:00:48 962226 [B7E7B6C0] 0x01 -> osmtest_validate_node_data: Checking node 0x0021283a8620b0b0, LID 0x15
.
.
.
Aug 13 23:01:03 083751 [B7E7B6C0] 0x02 -> osmt_delete_service_by_name: Trying to Delete service name: osmt.srvc.719885380.7487
Aug 13 23:01:03 084267 [B7E7B6C0] 0x02 -> osmtest_run: The event forwarding flow is not implemented yet!
OSMTEST: TEST "All Validations" PASS
#
Note - The output in the example is just a portion of the full output.
Related Information