SMP_REP_BROADCAST(8)
π SMP_REP_BROADCAST(8) π
okay bestie, welcome to the smp_utils corner of the universe, where we talk to SAS expanders and they actually listen. this one's called smp_rep_broadcast and it's giving "let me just ask what broadcasts you've been getting, bestie" energy. no cap. β¨
πΈ NAME πΈ
smp_rep_broadcast β invoke REPORT BROADCAST SMP function
like literally that's it. that's the whole job. it pings the REPORT BROADCAST function and sees what comes back. π
π¦ SYNOPSIS π¦
smp_rep_broadcast [--broadcast=BT] [--help] [--hex] [--interface=PARAMS]
[--raw] [--sa=SAS_ADDR] [--verbose] [--version] SMP_DEVICE[,N]
look at her. so many little flags. she's iconic. π
π DESCRIPTION π
So what's actually happening here? This tool sends a SAS Serial Management Protocol (that's SMP, iykyk) REPORT BROADCAST function request to an SMP target. slay.
The SMP target gets identified by two things: the SMP_DEVICE and the --sa=SAS_ADDR. cute duo, honestly. Depending on which interface you're rolling with, the SAS_ADDR may just be deduced from the SMP_DEVICE β the tool's smart like that. π§
Now, the mpt interface is a little extra (respectfully). It uses SMP_DEVICE to identify an HBA β that's an SMP initiator β and it needs the extra ,N tacked on to tell the HBAs apart if you've got multiple of them sitting there. multiple HBAs? in this economy? apparently yes. π
β¨ OPTIONS β¨
quick heads up before we dive in: mandatory arguments to long options are mandatory for short options as well. so don't get cute and think you can skip it. π«Ά
-b,--broadcast=BTβBTis the broadcast type, and it's an integer from 0 (the default) all the way up to 15. Broadcast (Change) is the one that corresponds to0. the other known broadcast types are all listed down in the NOTES section, keep scrolling bestie.BTcan be decimal (that's the default vibe) or hexadecimal β either prefix it with'0x'(or'0X') or slap a'h'(or'H') suffix on it. your call, main character. π-h,--helpβ outputs the usage message, then exits. the classic "wait what were the flags again" move. π-H,--hexβ outputs the response (minus the CRC field) in hexadecimal. pretty little numbers. π₯-I,--interface=PARAMSβ interface specific parameters. and jsyk, "interface" here means the path through the operating system to the SMP initiator. for more info go check thesmp_utilsman page, she explains it better than I could. π-r,--rawβ sends the response (again, less the CRC field) to stdout in binary. all error messages get yeeted to stderr instead. so clean. π-s,--sa=SAS_ADDRβ specifies the SAS address of the SMP target device. themptinterface needs this option, and it'll typically be an expander's SAS address. here's the tea though:SAS_ADDRis in decimal, but most SAS addresses are shown in hexadecimal. so if you wanna give a number in hex, either prefix it with'0x'or put a trailing'h'on it. β-v,--verboseβ increases the verbosity of the output. and yes, you can use it multiple times β stack them up, go feral, get all the details. π-V,--versionβ prints the version string and then exits. short and sweet. π
π NOTES π
here's the full list of broadcast types, bestie. screenshot it, memorize it, whatever you gotta do:
0β Broadcast (Change)1β Broadcast (Reserved change 0)2β Broadcast (Reserved change 1)3β Broadcast (SES)4β Broadcast (Expander)5β Broadcast (Asynchronous event)6β Broadcast (Reserved 3)7β Broadcast (Reserved 4)8β Broadcast (Zone activate)
and the remaining zone types β that's 9 to 15 β they may be issued by the ZONED BROADCAST function. so if you're looking for those, wrong function, bestie, go find smp_zoned_broadcast. π¦
π CONFORMING TO π
The SMP REPORT BROADCAST function was introduced in SAS-2 . (yes there's a space before the period, she's quirky like that, we don't question it.)
π AUTHORS π
Written by Douglas Gilbert. an absolute legend, fr fr. π
π REPORTING BUGS π
Found a bug? Report bugs to <dgilbert at interlog dot com>. don't be shy, they wanna know.
π COPYRIGHT π
Copyright Β© 2011-2012 Douglas Gilbert
This software is distributed under a FreeBSD license. and listen β there is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. like none. zero. nada. so don't come for anyone if it goes sideways. π
π«Ά SEE ALSO π«Ά
smp_utilssmp_zoned_broadcast(smp_utils)
okay that's the whole page!! this was smp_utils-0.98, dated February 2012, and it lives under the SMP_UTILS manual name β SMP_REP_BROADCAST(8) if you're keeping score. now go forth and report those broadcasts, bestie. you ate. π
β¨π
π¦ 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