NAME¶
smp_rep_route_info - invoke REPORT ROUTE INFORMATION SMP function
SYNOPSIS¶
smp_rep_route_info [
--help] [
--hex] [
--index=IN] [
--interface=PARAMS] [
--multiple] [
--num=NUM] [
--phy=ID] [
--raw] [
--sa=SAS_ADDR] [
--verbose]
[
--version] [
--zero]
SMP_DEVICE[,N]
DESCRIPTION¶
Sends a SAS Management Protocol (SMP) REPORT ROUTE INFORMATION function request
to a SMP target. The SMP target is identified by the
SMP_DEVICE and the
SAS_ADDR. Depending on the interface, the
SAS_ADDR may be
deduced from the
SMP_DEVICE. The mpt interface uses
SMP_DEVICE
to identify a HBA (an SMP initiator) and needs the additional
,N to
differentiate between HBAs if there are multiple present.
There are two expander route table types: phy-based and expander-based. The
expander-based route table was introduced in SAS-2 and supersedes the
phy-based route tables. The REPORT ROUTE INFORMATION function is associated
with a phy-based route table. The CONFIGURE ROUTE INFORMATION function is
provided to manually set up a phy-based route table.
Each phy in a SAS expander that has an associated routing attribute of
"table" has a router table. The number of rows (or entries) in each
router table is given by the "expander route indexes" field in the
response of the REPORT GENERAL function.
When the
--multiple option is given, the REPORT ROUTE INFORMATION
function is called multiple times. The index value increments on each
iteration, starting from
--index=IN (default 0). If
--num=NUM is
given and
NUM is greater than zero then that is the maximum number of
iterations performed. If
--num=NUM is not given (or
NUM is zero)
then iterations continue until there are 4 adjacent disabled route entries (or
some error is detected).
OPTIONS¶
Mandatory arguments to long options are mandatory for short options as well.
- -h, --help
- output the usage message then exit.
- -H, --hex
- output the response (less the CRC field) in
hexadecimal.
- -i, --index=IN
- expander route index. IN is a value between 0 and
65535. Default is 0. More precisely the maximum index value is
(expander_route_indexes - 1).
- -I, --interface=PARAMS
- interface specific parameters. In this case
"interface" refers to the path through the operating system to
the SMP initiator. See the smp_utils man page for more information.
- -m, --multiple
- call the REPORT ROUTE INFORMATION function multiple times,
starting at --index=IN, incrementing the index value on each
iteration for a maximum of --num=NUM iterations. For each enabled
route table entry, one line is output. If --num=NUM is not given
(or NUM is zero) then iterations continue until 4 adjacent disabled
entries are found (or some error occurs).
- -n, --num=NUM
- used with --multiple option to specify the maximum
number of iterations.
- -p, --phy=ID
- phy identifier. ID is a value between 0 and 254.
Default is 0.
- -r, --raw
- send the response (less the CRC field) to stdout in binary.
All error messages are sent to stderr.
- -s, --sa=SAS_ADDR
- specifies the SAS address of the SMP target device.
Typically this is an expander. This option may not be needed if the
SMP_DEVICE has the target's SAS address within it. The
SAS_ADDR is in decimal but most SAS addresses are shown in
hexadecimal. To give a number in hexadecimal either prefix it with '0x' or
put a trailing 'h' on it.
- -v, --verbose
- increase the verbosity of the output. Can be used multiple
times.
- -V, --version
- print the version string and then exit.
- -z, --zero
- zero the Allocated Response Length field in the request.
This option also zeros the Request Length field in the request. This is
required for strict SAS-1.1 compliance. However this option should not be
given in SAS-2 and later; if it is given an abridged response may
result.
The SMP REPORT ROUTE INFORMATION function was introduced in SAS-1 . The
"Expander change count" field was added in SAS-2 .
AUTHORS¶
Written by Douglas Gilbert.
REPORTING BUGS¶
Report bugs to <dgilbert at interlog dot com>.
COPYRIGHT¶
Copyright © 2006-2011 Douglas Gilbert
This software is distributed under a FreeBSD license. There is NO warranty; not
even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
SEE ALSO¶
smp_utils, smp_rep_general(smp_utils)