SMP_REP_PHY_EVENT_LIST(8)
π smp_rep_phy_event_list(8) β the SMP_UTILS era π
okay bestie, so this one's a smp_utils page, and it's literally the manual for smp_rep_phy_event_list β say that five times fast, I dare you π«Ά
β¨ NAME β¨
smp_rep_phy_event_list β invoke REPORT PHY EVENT LIST SMP function
πΈ SYNOPSIS πΈ
smp_rep_phy_event_list [--desc] [--enumerate] [--force] [--help] [--hex]
[--index=IN] [--interface=PARAMS] [--long] [--nonz] [--raw]
[--sa=SAS_ADDR] [--verbose] [--version] [--zero] SMP_DEVICE[,N]
π¦ DESCRIPTION π¦
So what this does is send a SAS Serial Management Protocol (SMP) REPORT PHY EVENT LIST 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. no cap, that comma matters π
It reports zero or more phy event list descriptors. Each descriptor contains a phy identifier, a phy event source, a phy event (i.e. a count) and a peak value detector theshold. At least one phy event should be maintained for each phy. that's the whole vibe β¨
π OPTIONS π
Mandatory arguments to long options are mandatory for short options as well. (yes bestie, that means short options want their stuff too π)
-d,--descβ precede each phy event descriptor with a line announcing its descriptor index number. Index numbers start at 1. π’-e,--enumerateβ enumerate all of the known Phy Event Source names, one per line preceded by its value in hex. IgnoresSMP_DEVICEif it is given; most other options are also ignored. Exits after displaying the names. it's giving "I'm done here, bye" π-f,--forceβ force the report to continue after the last descriptor index has been exceeded. The default action is too stop the report when the last descriptor index has been exceeded.-h,--helpβ output the usage message then exit. classic π«Ά-H,--hexβ output the response (less the CRC field) in hexadecimal. π₯-i,--index=INβ starting phy event list descriptor index.INis a value between 0 and 65535. The default is 1. IfINis 0 then the response should contain no phy event list descriptors but the 'last phy event list descriptor index' and 'phy event list descriptor length' fields in the response should be set appropriately. The last point was clarified in SPL-2 revision 3. ngl, they really wanted us to know that π-l,--longβ prefix each phy event source string with its numeric identifier in hex. Also place"phy_id="in front of the phy identifier number. For example:"phy_id=3: [0x1]: Invalid word count: 29"; without this option this line would be:"3: Invalid word count: 29". see the glow-up? β¨-n,--nonzβ only show phy events with non-zero counts or peak values. The default is to show all phy events in the response. zero-count girlies stay home π-I,--interface=PARAMSβ interface specific parameters. In this case"interface"refers to the path through the operating system to the SMP initiator. See thesmp_utilsman page for more information. π-r,--rawβ send the response (less the CRC field) to stdout in binary. All error messages are sent to stderr. keep those streams separate bestie π-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 theSMP_DEVICEhas the target's SAS address within it. TheSAS_ADDRis 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. pick your fighter, both slay π-v,--verboseβ increase the verbosity of the output. Can be used multiple times. stack it, queen π-V,--versionβ print the version string and then exit.
π NOTES π
Similar information is maintained for SAS SSP target phys (e.g. on a SAS disk). It can be obtained from the Protocol Specific Port log page with the sg_logs utility. π
Similar information may be obtained for SAS initiator phys (e.g. on a SAS HBA). As an example in Linux 2.6.28 error information can be found in this directory /sys/class/sas_phy/phy-4:0 (for the phy 0 in SCSI/SAS host 4). lowkey iconic path tbh π¦
Similar information may be obtained for SATA device phys (e.g. on a SATA disk). If there is a SAT layer between OS and the SATA device then the sg_sat_phy_event utility can fetch the information. SAT layer said "I got you" π«Ά
β CONFORMING TO β
The SMP REPORT PHY EVENT LIST function was introduced in SAS-2 . periodt.
πΈ AUTHORS πΈ
Written by Douglas Gilbert. the OG π
π REPORTING BUGS π
Report bugs to <dgilbert at interlog dot com>. he's literally asking, so tell him π
π COPYRIGHT π
Copyright Β© 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.
bestie, read that again: NO WARRANTY. not even the merchantability one, not even the fitness one. don't come for them if it goes sideways π
π¦ SEE ALSO π¦
smp_utils, smp_phy_control, smp_rep_phy_event(smp_utils) sg_logs, sg_sat_phy_event(sg3_utils)
and that's the whole page, bestie! π this lil gem is from smp_utils-0.97, dated December 2011 β so it's vintage but it ate, and no cap it still works. mwah πβ¨π
π¦ where this page comes from
- debian bookworm: smp-utils 0.99-1 Β· BSD-3-Clause
- debian trixie: smp-utils 0.99-1 Β· BSD-3-Clause
- epel 10: smp_utils 0.99-1.el10_0 Β· BSD-3-Clause
- epel 9: smp_utils 0.99-5.el9 Β· BSD
- fedora 43: smp_utils 0.99-14.fc43 Β· BSD-3-Clause
- fedora 44: smp_utils 0.99-15.fc44 Β· BSD-3-Clause
- opensuse-leap 16.0: smp_utils 0.99-bp160.1.6 Β· BSD-3-Clause AND GPL-2.0-only
- opensuse-leap 16.0: smp_utils 0.99-bp160.1.6 Β· BSD-3-Clause AND GPL-2.0-only
- opensuse-leap 16.0: smp_utils 0.99-bp160.1.6 Β· BSD-3-Clause AND GPL-2.0-only
- opensuse-leap 16.0: smp_utils 0.99-bp160.1.6 Β· BSD-3-Clause AND GPL-2.0-only
- ubuntu jammy: smp-utils 0.99-1 Β· BSD-3-Clause
- ubuntu noble: smp-utils 0.99-1 Β· BSD-3-Clause
- ubuntu resolute: smp-utils 0.99-1build1 Β· BSD-3-Clause
- ubuntu stonking: smp-utils 0.99-1build1 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms