SMP_REP_ROUTE_INFO(8)

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 Serial Management Protocol (SMP) REPORT ROUTE INFORMATION function request to an 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.

CONFORMING TO
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)