White Papers
Abstract
The AIX Multipath I/O (MPIO) framework manages multiple paths to storage devices, ensuring redundancy and high availability.
This document explains the Closed Path Recovery feature and further describes how to
- Initiate automatic path recovery and obtain up-to-date disk path status without keeping disks open for extended period.
- Control the feature dynamically.
- Understand its behavior and resource implications.
Content
When the disk is no longer in use (i.e., "closed"), health checks and path status updates cease, and tools like lsmpio and lspath report the last known state from when the disk was closed. This can lead to outdated information.
- a path that fails while the disk is open but recovers after closure remains reported as "Failed" until the disk is reopened or path is reconfigured.
- a path that fails while the disk is closed remains reported as "Failed" until the disk is reopened or path is reconfigured.
Introduced in AIX 7.2 TL4, the Closed Path Recovery feature enhances AIX MPIO by providing up-to-date disk path status reporting without requiring disks to remain in open state.
The feature is disabled by default to maintain system efficiency and prevent unnecessary processing overhead from inactive disks.
The dynamic control and on-demand updates via lsmpio -o command, offer flexibility and improved visibility over the AIX MPIO devices path status.
The Closed Path Recovery is controlled via the dk_closed_path_recovery tunable, managed through the ioo utility.
ioo -o dk_closed_path_recovery Displays the current value (0 or 1)
ioo -o dk_closed_path_recovery=0 Disables the feature (default setting)
ioo -o dk_closed_path_recovery=1 Enables the feature
smitty ChShCurIO
Performance & Resource Scheduling
Tuning Kernel & Network Parameters
Tuning IO Parameters
Change / Show Current Parameters
| Aspect | dk_closed_path_recovery=0 | dk_closed_path_recovery=1 |
|---|---|---|
| Expected Behavior |
No recovery occurs for closed disks.
Path status reflects the last known state from disk closure.
|
Background attempts to recover failed paths occur every 60 seconds for closed disks, but only for those open at the enablement or opened later. |
| Resource Implications and Memory Usage |
No noticeable performance overhead.
|
Additional 20 KB for 2000 disks, regardless of failures. Negligible in healthy path environment. The overhead is structural and not directly tied to the tunable’s state, though it’s only relevant when failures occur. Slight increases in memory use during path failures. Adds minor overhead: Up to 320 KB for 2000 disks with 16 paths each (only when failures occur). |
All paths are in a closed (Clo) state, indicating they are not actively in use for I/O operations.
# lsmpio -l hdisk1
name path_id status path_status parent connection
hdisk1 0 Enabled Clo fscsi0 50050768102xxxxx,x000000000000
hdisk1 1 Enabled Clo fscsi0 50050768101xxxxx,x000000000000
hdisk1 2 Enabled Clo fscsi1 50050768102xxxxx,x000000000000
hdisk1 3 Enabled Clo fscsi1 50050768101xxxxx,x000000000000
# ioo -o dk_closed_path_recovery
dk_closed_path_recovery = 0
# lsmpio -l hdisk1
name path_id status path_status parent connection
hdisk1 0 Failed Clo fscsi0 50050768102xxxxx,x000000000000
hdisk1 1 Enabled Clo fscsi0 50050768101xxxxx,x000000000000
hdisk1 2 Failed Clo fscsi1 50050768102xxxxx,x000000000000
hdisk1 3 Enabled Clo fscsi1 50050768101xxxxx,x000000000000
# ioo -o dk_closed_path_recovery=1
Setting dk_closed_path_recovery to 1
# errpt -a|summ
Mar 7 12:46:05 closed_path_rec I SC_MPIO_INFO1 MPIO Tunable changed successfully
As a result, after the connectivity problem resolve, the paths continue to report as "Failed":
# lsmpio -l hdisk1
name path_id status path_status parent connection
hdisk1 0 Failed Clo fscsi0 50050768102xxxxx,x000000000000
hdisk1 1 Enabled Clo fscsi0 50050768101xxxxx,x000000000000
hdisk1 2 Failed Clo fscsi1 50050768102xxxxx,x000000000000
hdisk1 3 Enabled Clo fscsi1 50050768101xxxxx,x000000000000
# lsmpio -o
name path_id status path_status parent connection
hdisk1 0 Enabled Clo fscsi0 50050768102xxxxx,x000000000000
hdisk1 1 Enabled Clo fscsi0 50050768101xxxxx,x000000000000
hdisk1 2 Enabled Clo fscsi1 50050768102xxxxx,x000000000000
hdisk1 3 Enabled Clo fscsi1 50050768101xxxxx,x000000000000
Was this topic helpful?
Document Information
Modified date:
21 March 2025
UID
ibm17184977