sg_persist returns "Host_status=0x11 is invalid"
Environment
- Red Hat Enterprise Linux 5 and 6.
- sg3_utils.
Issue
- When running sg_persist, it sometimes return "Host_status=0x11 is invalid", i.e.:
# sg_persist -o -T 3 -A /dev/sdi -vvv
open /dev/sdi with flags=0x800
inquiry cdb: 12 00 00 00 24 00
duration=0 ms
EMC SYMMETRIX 5874
Peripheral device type: disk
open /dev/vx/rdmp/emc0_0cce with flags=0x802
Persistent Reservation Out cmd: 5f 05 03 00 00 00 00 00 18 00
Persistent Reservation Out parameters:
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
10 00 00 00 00 00 00 00 00 ........
duration=0 ms
persistent reserve out: transport: Host_status=0x11 is invalid
Driver_status=0x00 [DRIVER_OK, SUGGEST_OK]
PR out: command failed
Resolution
Root Cause
- The current version of sg_persist in RHEL 5 and RHEL 6 does not recognize the new host bytes values of:
DID_TRANSPORT_DISRUPTED
DID_TRANSPORT_FAILFAST
DID_TARGET_FAILURE
DID_NEXUS_FAILURE
- Therefore when it receives one of these host byte codes it returns a message saying that the host_status is invalid. This problem does not exist upstream, and the patch is quite simple: It just adds the missing host byte codes.
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
