MSTFWTRACE(1)
β¨ mstfwtrace β¨
okay so bestie, this is the User Commands girlie of the manual pages, and she's called mstfwtrace π she comes from mstflint and she's dated March 2020, and she is so good at her job, iykyk π«Ά
π NAME π
mstfwtrace β extracts and prints trace messages generated by the firmware of 5th generation devices π
β¨
like. she pulls the firmware's little diary entries out of the silicon and shows them to you. no cap.
π¦ DESCRIPTION π¦
the vibe, the usage, the whole thing:
usage: mstfwtrace -d|--device DEVICE [options]
that's it. that's the energy. -d or --device plus your options and off you go πΈ
π optional arguments
-h,--helpβ show this help message and exit π₯° (she's helpful AND polite)-v,--version,-vβ print tool version. yes she wrote-vtwice, and honestly? iconic. not a typo, a choice π
π₯ OPTIONS π₯
-d DEVICE,--device DEVICEβ PCI device name π (this is the one you actually need, bestie, don't skip her)--tracer_mode TRACER_MODEβ tracer mode, default isMEMβ¨--real_tsβ print real timestamps, in[hh:mm:ss:nsec]format π°οΈ so you actually know when things happened--ignore_old_eventsβ ignore collecting old events π (not me, ignoring my past)
π Format:
-i IRISC,--irisc IRISCβ Irisc name, defaults toallπ§-s,--streamβ run in streaming mode π it's giving live feed-m MASK,--mask MASKβ trace class mask. use+to enable multiple classes, or use integer format, e.g:-m class1+class2+...or0xff00ff00π-l LEVEL,--level LEVELβ trace level π
π«Ά Device Specific Info: ====================
okay so this is the part where she lists every single device and which trace classes each one has. do NOT skim, bestie, every one of these is real and every list is exactly as written π
β ConnectIB: Trace classes:
DEBUG_INIT, INIT, ICM, ICM_FREE_LIST, HOST_MNG CMD_IF, PHY_IB,
PHY_RX_ADAP, PHY_EYE_OPN, PHY_COMMON PHY_MANAGER, PWR, FLR,
ICM_ACCESS, MAD RXT_CHECKS, I2C, TRANSPORT, FW_LL, RX_ERRORS
CMD_DRIVER, PROFILING, MANAGEMENT, FLASH, STEERING IFARM, ICMD,
PCI, DC_CLEANUP, PHY_ETH VIRT
β SwitchIB: Trace classes:
class1, class2
β ConnectX4: Trace classes:
DEBUG_INIT, INIT, ICM, ICM_FREE_LIST, HOST_MNG CMD_IF, PHY_IB,
PHY_RX_ADAP, PHY_EYE_OPN, PHY_COMMON PHY_MANAGER, PWR, FLR,
ICM_ACCESS, MAD RXT_CHECKS, I2C, TRANSPORT, FW_LL, RX_ERRORS
CMD_DRIVER, PROFILING, MANAGEMENT, FLASH, STEERING IFARM, ICMD,
PCI, DC_CLEANUP, PHY_ETH VIRT
β ConnectX5: Trace classes:
DEBUG_INIT, INIT, ICM, ICM_FREE_LIST, HOST_MNG CMD_IF, PHY_IB,
PHY_RX_ADAP, PHY_EYE_OPN, PHY_COMMON PHY_MANAGER, PWR, FLR,
ICM_ACCESS, MAD RXT_CHECKS, I2C, TRANSPORT, FW_LL, RX_ERRORS
CMD_DRIVER, PROFILING, MANAGEMENT, FLASH, STEERING IFARM, ICMD,
PCI, DC_CLEANUP, PHY_ETH VIRT
β BlueField: Trace classes:
DEBUG_INIT, INIT, ICM, ICM_FREE_LIST, HOST_MNG CMD_IF, PHY_IB,
PHY_RX_ADAP, PHY_EYE_OPN, PHY_COMMON PHY_MANAGER, PWR, FLR,
ICM_ACCESS, MAD RXT_CHECKS, I2C, TRANSPORT, FW_LL, RX_ERRORS
CMD_DRIVER, PROFILING, MANAGEMENT, FLASH, STEERING IFARM, ICMD,
PCI, DC_CLEANUP, PHY_ETH VIRT
β ConnectX6: Trace classes:
DEBUG_INIT, INIT, ICM, ICM_FREE_LIST, HOST_MNG CMD_IF, PHY_IB,
PHY_RX_ADAP, PHY_EYE_OPN, PHY_COMMON PHY_MANAGER, PWR, FLR,
ICM_ACCESS, MAD RXT_CHECKS, I2C, TRANSPORT, FW_LL, RX_ERRORS
CMD_DRIVER, PROFILING, MANAGEMENT, FLASH, STEERING IFARM, ICMD,
PCI, DC_CLEANUP, PHY_ETH VIRT
β ConnectX6DX: Trace classes:
DEBUG_INIT, INIT, ICM, ICM_FREE_LIST, HOST_MNG CMD_IF, PHY_IB,
PHY_RX_ADAP, PHY_EYE_OPN, PHY_COMMON PHY_MANAGER, PWR, FLR,
ICM_ACCESS, MAD RXT_CHECKS, I2C, TRANSPORT, FW_LL, RX_ERRORS
CMD_DRIVER, PROFILING, MANAGEMENT, FLASH, STEERING IFARM, ICMD,
PCI, DC_CLEANUP, PHY_ETH VIRT
β Spectrum: Trace classes:
class1, class2
β ConnectX4LX: Trace classes:
DEBUG_INIT, INIT, ICM, ICM_FREE_LIST, HOST_MNG CMD_IF, PHY_IB,
PHY_RX_ADAP, PHY_EYE_OPN, PHY_COMMON PHY_MANAGER, PWR, FLR,
ICM_ACCESS, MAD RXT_CHECKS, I2C, TRANSPORT, FW_LL, RX_ERRORS
CMD_DRIVER, PROFILING, MANAGEMENT, FLASH, STEERING IFARM, ICMD,
PCI, DC_CLEANUP, PHY_ETH VIRT
β SwitchIB2: Trace classes:
class1, class2
β Quantum: Trace classes:
class1, class2
β Spectrum2: Trace classes:
class1, class2
lowkey a lot of these devices have the exact same list, and yes, bestie, that's not me being lazy, that's literally what the page says. do not merge them. do not "clean them up". leave them alone π
πΈ SEE ALSO πΈ
mstflint(1)β her sister, go say hi π«Ά
and that's the whole thing π written by mstflint, March 2020, page MSTFWTRACE(1), and she ate, no crumbs. go trace some firmware, bestie β¨ππ
π¦ where this page comes from
- centos-stream 10: mstflint 4.37.0_1.1-2.el10 Β· (GPL-2.0-only OR Linux-OpenIB) AND BSD-3-Clause AND MIT AND blessing
- centos-stream 9: mstflint 4.34.0-5.el9 Β· GPLv2+ or BSD
- debian trixie: mstflint 4.31.0+1-4 Β· BSD-2-Clause OR GPL-2.0-only
- fedora 43: mstflint 4.32.0^20250517git48a1454-2.fc43 Β· (GPL-2.0-only OR Linux-OpenIB) AND BSD-3-Clause AND MIT AND blessing
- fedora 43: mstflint 4.37.0_1.1-2.fc43 Β· (GPL-2.0-only OR Linux-OpenIB) AND BSD-3-Clause AND MIT AND blessing
- fedora 44: mstflint 4.34.0-2.fc44 Β· (GPL-2.0-only OR Linux-OpenIB) AND BSD-3-Clause AND MIT AND blessing
- fedora 44: mstflint 4.37.0_1.1-2.fc44 Β· (GPL-2.0-only OR Linux-OpenIB) AND BSD-3-Clause AND MIT AND blessing
- nixos 26.05: mstflint 4.36.0-1
- nixpkgs unstable: mstflint 4.37.0-1
- ubuntu noble: mstflint 4.26.0+1-2ubuntu3 Β· BSD-2-Clause OR GPL-2.0-only
- ubuntu questing: mstflint 4.33.0+1-1
- ubuntu resolute: mstflint 4.33.0+1-1.1 Β· BSD-2-Clause OR GPL-2.0-only
- ubuntu stonking: mstflint 4.33.0+1-1.1build1 Β· BSD-2-Clause OR GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms