SMP_DISCOVER_LIST(8) | SMP_UTILS | SMP_DISCOVER_LIST(8) |
smp_discover_list - invoke DISCOVER LIST SMP function
smp_discover_list [--adn] [--brief] [--cap] [--descriptor=TY] [--filter=FI] [--help] [--hex] [--ignore] [--interface=PARAMS] [--num=NUM] [--one] [--phy=ID] [--raw] [--sa=SAS_ADDR] [--summary] [--verbose] [--version] [--zpi=FN] SMP_DEVICE[,N]
Sends one or more SAS Serial Management Protocol (SMP) DISCOVER LIST function requests to an SMP target and decodes or outputs the responses. 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.
If the --phy=ID option is not given then --summary is assumed. When --summary is given or assumed, this utility shows the disposition of each active expander phy in table form. One row is shown for each phy and is described in the SINGLE LINE PER PHY FORMAT section below. For this purpose disabled expander phys and those with errors are considered "active" and can be suppressed from the output by adding the --brief option.
The DISCOVER LIST response may contain up to 8 descriptors when the "descriptor type" field in the request is set to 0 (e.g. --descriptor=0). The DISCOVER LIST response may contain up to 40 descriptors when the "descriptor type" field in the request is set to 1 (e.g. --descriptor=1). Multiple DISCOVER LIST requests will be made if more descriptors are requested (e.g. --summary requests 254) and the previous response indicates that more descriptors may be available.
Mandatory arguments to long options are mandatory for short options as well.
The --summary (or --one) option causes SMP DISCOVER LIST descriptors to be compressed to one line per phy. To save space SAS addresses are shown in hex without a '0x' prefix or 'h' suffix. The header section outputs information found in the DISCOVER LIST response's header section.
For each descriptor in the DISCOVER LIST response, one line is output starting with " phy <n>:" where <n> is the phy identifier (and they are origin zero). That is followed by the routing attribute represented by a single letter which is either "D" for direct routing, "S" for subtractive routing, "T" or "U". Both "T" and "U" imply table routing, the difference is that if REPORT GENERAL indicates "table to table supported" then "U" is output to indicate that phy can be part of an enclosure universal port; otherwise "T" is used. Next comes the negotiated physical link rate which is either "disabled", "reset problem" or "spinup hold". Other states are mapped to "attached". This includes enabled phys with nothing connected which appear as "attached:[0000000000000000:00]".
Information shown between the brackets is for the attached device. Phys that are connected display something like: "attached:[5000c50000520a2a:01 " where the first number is the attached SAS address (in hex) and the second number is the attached device's phy identifier. If the attached device type is other than an SAS or SATA device then one of these abbreviations is output: "exp" (for expander), "fex" (for fanout expander) or "res" (for unknown attached device type). If a phy is flagged as "virtual" then the letter "V" appears next. Next are the protocols supported by the attached device which are shown as "i(<list>)" for initiator protocols and/or "t(<list>)" for target protocols. The <list> is made up of "PORT_SEL", "SSP", "STP", "SMP" and "SATA" with "+" used as a separator. For example a SAS host adapter will most likely appear as: "i(SSP+STP+SMP)". This completes the information about the attached phy, hence the closing right bracket.
If appropriate, the negotiated physical link rate is shown in gigabits per second. Here is an example of a line for expander phy identifier 11 connected to a SATA target (or SATA "device" to use the t13.org term):
phy 11:T:attached:[500605b000000afb:00 t(SATA)] 1.5 Gbps
If the expander has zoning enabled (i.e. REPORT GENERAL response bit for 'zoning enabled' is set) and a phy's zone group is other than zg 1 then the phy's zone group is shown (e.g. "ZG:2").
If the --adn option is given then after the attached SAS address and the attached device's phy identifier are output an extra field is inserted containing the "attached device name" field. For a SAS disk this should be its target device name (in NAA-5 format) and for a SATA disk its WWN (if provided, also in NAA-5 format). Also when the --adn option is given the phy speed and zone group are not output in order to keep the line length reasonable.
In SAS-2 and later both the DISCOVER and DISCOVER LIST functions are available. The DISCOVER LIST function should be favoured for several reasons: its response can hold up to 40 descriptors each describing the state of one expander phy. The vast majority of expander chips on the market support 36 phys or less so one DISCOVER LIST response will summarize the states of all its phys. With the DISCOVER function only one expander phy's state is returned in its response. Other advantages of the DISCOVER LIST function are its "phy filter" and "descriptor type" function request fields.
The SMP DISCOVER LIST function was introduced in SAS-2 .
Written by Douglas Gilbert.
Report bugs to <dgilbert at interlog dot com>.
Copyright © 2006-2014 Douglas Gilbert
This software is distributed under a FreeBSD license. There is NO warranty;
not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
smp_utils, smp_discover, smp_phy_control, smp_conf_zone_phy_info
April 2014 | smp_utils-0.98 |