dmmp_...s_get(3)
β¨ dmmp_path_status_get β the vibe check for your paths β¨
okay bestie, welcome to the Device Mapper Multipath API corner of the libdmmp manual π this one's a little function that tells you what's actually going on with a multipath path. no cap, it's giving "is this path okay or is it going through it". π¦
π NAME π
dmmp_path_status_get β go get that path status, queen. Retrieve the path status. π
πΈ SYNOPSIS πΈ
uint32_t dmmp_path_status_get (struct dmmp_path *dmmp_p);
π ARGUMENTS π
dmmp_pβ a pointer to astruct dmmp_path. sounds chill, right? WRONG. if this pointer isNULL, your program gets terminated byassert. like, straight up ended. no warning text, no apology, just π. so please, for the love of everything, don't passNULL. π
π«Ά DESCRIPTION π«Ά
so the function hands you back a status, and here's the full menu of possible statuses, because the valid path statuses are:
DMMP_PATH_STATUS_UNKNOWNβ mystery era. we simply do not know. π΅οΈDMMP_PATH_STATUS_DOWNβ the path is down, and you should not try to send commands to it. it's not answering, bestie, leave it alone. πDMMP_PATH_STATUS_UPβ the path is up and I/O can be sent to it. main character energy, we love to see it. π₯DMMP_PATH_STATUS_SHAKYβ only theemc_clariionchecker reports this, when the path is not available for "normal" operations. it's giving shaky, fr fr. π«¨DMMP_PATH_STATUS_GHOSTβ only thehp_swandrdaccheckers. this one means a "passive/standby" path on active/passive HP arrays. these paths will return valid answers to certain SCSI commands (tur,read_capacity,inquiry,start_stop), but they will fail I/O commands. the path needs an initialization command sent to it before I/Os will succeed. so it's technically there but it's ghosting you π»DMMP_PATH_STATUS_PENDINGβ available for all async checkers, when a check IO is in flight. like, hold on, we're mid-check, be patient. β³DMMP_PATH_STATUS_TIMEOUTβ only theturchecker, when the command timed out. it didn't ghost you on purpose, it just ran out of time. πDMMP_PATH_STATUS_DELAYEDβ okay so if a path fails after being up for fewer thandelay_watch_checkschecks, then when it comes back up again it will not be marked as up until it has been up fordelay_wait_checkschecks. during that window, it's marked as "delayed". it's in its healing era, give it a sec. π±
β RETURN β
uint32_t. that's it, that's the return type. a whole unsigned 32-bit int. slay. π
heads up bestie: those status constants are the exact strings β copy them character for character or your code will simply not vibe. π
that's the whole page, bestie β you're officially fluent in dmmp_path_status_get. π this gorgeous little writeup is dmmp_path_status_get from dmmp_...s_get(3), June 2025 edition, brought to you by the libdmmp girlies. mwah, go forth and check those paths. πβ¨π«Ά
π¦ where this page comes from
- arch rolling: multipath-tools 0.15.1-1 Β· GPL-2.0-or-later AND GPL-3.0-or-later AND LGPL-2.0-or-later AND LGPL-2.1-or-later
- fedora 44: libdmmp-devel 0.13.1-1.fc44 Β· GPL-2.0-only AND GPL-3.0-only
- fedora 44: libdmmp-devel 0.13.1-1.fc44 Β· GPL-2.0-only AND GPL-3.0-only
- nixos 26.05: multipath-tools 0.14.1
- nixpkgs unstable: multipath-tools 0.14.3
- opensuse-leap 16.0: libdmmp-devel 0.12.4+278+suse.9cf9c5c-160000.1.1 Β· GPL-3.0-or-later
- opensuse-leap 16.0: libdmmp-devel 0.12.4+278+suse.9cf9c5c-160000.1.1 Β· GPL-3.0-or-later
- opensuse-leap 16.0: libdmmp-devel 0.12.4+278+suse.9cf9c5c-160000.1.1 Β· GPL-3.0-or-later
- opensuse-leap 16.0: libdmmp-devel 0.12.4+278+suse.9cf9c5c-160000.1.1 Β· GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms