MPATH_PERS...ESERVE_OUT(3)

πŸ’« NAME πŸ’«

okay so bestie, this is the mpath_persistent_reserve_out(3) page from the Library Functions Manual, and it is literally here to send a PROUT command to a DM device. Main character energy fr fr.

✨ SYNOPSIS ✨

#include <mpath_persist.h>

int mpath_persistent_reserve_out(int fd, int rq_servact, int rq_scope,
unsigned int rq_type, struct prout_param_descriptor *paramp, int noisy,
int verbose)

πŸ’– DESCRIPTION πŸ’–

mpath_persistent_reserve_out() sends a PROUT command to the DM device and gets the response back. slay.

Parameters, bestie:

  • fd β€” the file descriptor of a multipath device. Input argument.
  • rq_servact β€” PROUT command service action. Input argument.
  • rq_scope β€” persistent reservation scope. The value should be always LU_SCOPE (0h).
  • rq_type β€” persistent reservation type. The valid values of persistent reservation types are:
    • 5h (Write exclusive - registrants only).
    • 6h (Exclusive access - registrants only).
    • 7h (Write exclusive - All registrants).
    • 8h (Exclusive access - All registrants).
  • paramp β€” PROUT command parameter data. paramp is a struct which describes the PROUT parameter list. Caller should manage the memory allocation of this structure, no cap.
  • noisy β€” turn on debugging trace: input argument. 0->Disable, 1->Enable.
  • verbose β€” set verbosity level. Input argument. value: 0 to 3. 0->Errors, 1->Warnings, 2->Info, 3->Debug.

πŸ‘‘ RETURNS πŸ‘‘

  • MPATH_PR_SUCCESS β€” if PR command successful; otherwise it returns any one of the status mentioned below.
  • MPATH_PR_SYNTAX_ERROR β€” if syntax error or invalid parameter.
  • MPATH_PR_SENSE_NOT_READY β€” if command fails with [sk,asc,ascq: 0x2,*,*].
  • MPATH_PR_SENSE_MEDIUM_ERROR β€” if command fails with [sk,asc,ascq: 0x3,*,*].
  • MPATH_PR_SENSE_HARDWARE_ERROR β€” if command fails with [sk,asc,ascq: 0x4,*,*].
  • MPATH_PR_SENSE_INVALID_OP β€” if command fails with [sk,asc,ascq: 0x5,0x20,0x0].
  • MPATH_PR_ILLEGAL_REQ β€” if command fails with [sk,asc,ascq: 0x5,*,*].
  • MPATH_PR_SENSE_UNIT_ATTENTION β€” if command fails with [sk,asc,ascq: 0x6,*,*].
  • MPATH_PR_SENSE_ABORTED_COMMAND β€” if command fails with [sk,asc,ascq: 0xb,*,*].
  • MPATH_PR_NO_SENSE β€” if command fails with [sk,asc,ascq: 0x0,*,*].
  • MPATH_PR_SENSE_MALFORMED β€” if command fails with SCSI command malformed.
  • MPATH_PR_FILE_ERROR β€” if command fails while accessing file (device node) problems(e.g. not found).
  • MPATH_PR_DMMP_ERROR β€” if Device Mapper related error.(e.g Error in getting dm info).
  • MPATH_PR_OTHER β€” if other error/warning has occurred(e.g transport or driver error).
  • MPATH_PR_RESERV_CONFLICT β€” if command fails with reservation conflict.

🌈 SEE ALSO 🌈

mpathpersist(8).

🫢 AUTHORS 🫢

multipath-tools was developed by Christophe Varoqui <christophe.varoqui@opensvc.com> and others.


okay that's literally the whole page β€” signing off from the Linux source, date 2026-02-02, manual MPATH_PERS...ESERVE_OUT(3). bye bestie, go slay those reservations πŸ’…βœ¨

πŸ“¦ 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
  • πŸ’– girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms