The Subsystem Device Driver (SDD) is a software solution to support the multipath configuration environments in supported storage devices. It resides in a host system with the native disk device driver and provides the following functions:

  • Enhanced data availability
  • Dynamic input/output (I/O) load-balancing across multiple paths
  • Automatic path failover protection
  • Concurrent download of licensed machine code
  • Prevention of a single-point-failure caused by host bus adapter (HBA), Fibre Channel (FC) cable, Ethernet cable, or host-interface adapter on supported storage

Hardware prerequisites

The following hardware components are needed:

  • One or more supported storage devices
  • A switch if using a SAN Volume Controller (no direct attachment is allowed for SVC)
  • Host system
  • Small Computer System Interface (SCSI) adapters and cables [for Enterprise Storage Server (ESS) only]
  • Fibre Channel adapters and cables

Software prerequisites

The following software components are needed:

  • AIX operating system: Starting with SDD, the SDD package for AIX 5.3 (devices.sdd.53.rte) requires AIX53 TL04 with APAR IY76997. Starting with SDD, the SDD package for AIX 5.2 (devices.sdd.52.rte) requires AIX52 TL08 or later and the SDD package for AIX 5.3 (devices.sdd.53.rte) requires AIX53 TL04 or later.
  • SCSI and Fibre Channel device drivers.
  • ibm2105.rte package for ESS devices [devices.scsi.disk.ibm2105.rte or devices.fcp.disk.ibm2105.rte package if using Network Installation Management (NIM)].
  • for IBM System Storage DS8000®, IBM System Storage DS6000™, and SAN Volume Controller.

You can download the necessary package from the Subsystem Device Driver Path Control Module (SDDPCM) page.

Figure 1. Download package
Download package

Before you install SDDPCM, you must:

  • Determine whether you have the correct installation package.
  • Remove the SDD package, if it is installed.
  • Remove ibm2105.rte (version 32.6.100.x) and (version 1.0.0.x), if they are installed.
  • Install the AIX Fibre Channel device drivers, if necessary.
  • Verify and upgrade the Fibre Channel adapter firmware level.
  • Install the SDDPCM host attachment: (version or later) or (version or later).

Procedure to install the SDDPCM driver

You need to perform the following steps to install the SDDPCM driver.

  1. Install the AIX SDDPCM host attachment package ( or before installing the SDDPCM package.
  2. Log in to the system with root access and extract the downloaded SDDPCM host attachment package (that is or and install it. You can also use the smit option.
    #installp -aXY
  3. Now, you need to install the SDDPCM package (devices.sddpcm.52.rte, devices.sddpcm.53.rte or devices.sddpcm.61.rte).
    #installp -aXY devices.sddpcm.61.rte
  4. After installing the prerequisites, install the .bff file.
    #installp -aXY devices.sddpcm.

After this installation, you need to set a SDD path-selection policy algorithm that can help you to increase the performance of multipath-configured and supported storage devices and make path failures transparent to applications. The following path-selection policies are supported:

  • Failover only (fo)
    All I/O operations for the device are sent to the same (preferred) path until the path fails because of I/O errors. Then an alternate path is chosen for subsequent I/O operations.
  • Load balancing (lb)
    The path to use for an I/O operation is chosen by estimating the load on the adapter to which each path is attached. The load is a function of the number of I/O operations currently in process. If multiple paths have the same load, a path is chosen at random from those paths. Load-balancing mode also incorporates failover protection. The load-balancing policy is also known as the optimized policy.
  • Load balancing sequential (lbs)
    This policy is the same as the load-balancing policy with optimization for sequential I/O. The load-balancing sequential policy is also known as the optimized sequential policy. This is the default setting.
  • Round robin (rr)
    The path to use for each I/O operation is chosen at random from paths that were not used for the last I/O operation. If a device has only two paths, SDD alternates between the two.
  • Round robin sequential (rrs)
    This policy is the same as the round-robin policy with optimization for sequential I/O.

You need to choose the best suitable SDD path-selection policy to your environment and apply it using the following method.

Note: Before changing the algorithm, you need to change the disk reservation policy to no_reserve.

# chdev -l hdiskX -a reserve_policy=no_reserve

Examples of commands to set different SDD path-selection policy algorithm

#chdev ‑l hdiskX ‑a algorithm=load_balance_port
#chdev ‑l hdiskX ‑a algorithm=round_robin

You can check the disk policy using the pcmpath query device command.

Figure 2. Round robin algorithm
Round robin algorithm

You can also check the FCS adapter usages using the nmon tool. This tool helps to understand which FCS adapters are being used.

Figure 3. nmon report
nmon report

Important SDDPCM commands and their functions:

  • pcmpath: Display and manage SDDPCM devices.
  • pcmpath query adapter: show adapter configuration
  • pcmpath query version: show the version of the SDDPCM
  • pcmpath query device: show the SDDPCM devices (pcmpath query device 44 shows only this device)
  • pcmpath query essmap: Show a complete overview
  • pcmpath set device algorithm: Dynamically change the path selection algorithm
  • pcmpath set device hc_mode: Dynamically change the path health check mode
  • pcmpath set device hc_interval: Dynamically change the path health check time interval
  • pcmpath set device Mpath N online/offline: Dynamically enable (online) or disable (offline) a path
  • pcmpath set adapter N online/offline: Dynamically enable (online) or disable (offline) an adapter (SDDPCM reserves the last path of a device, and it will fail if the device is using the last path)
  • pcmquerypr: Read and clear persistent reserve and registration keys
  • pcmquerypr -vh /dev/hdisk30: Query and display the persistent reservation (-V verbose mode and more details)
  • pcmquerypr -rh /dev/hdisk30: Release the persistent reservation if the device is reserved by the current host
  • pcmquerypr -ch /dev/hdisk30: Remove the persistent reservation and clear all reservation key registration
  • pcmquerypr -ph /dev/hdisk30: Remove the persistent reservation if the device is reserved by the other host
  • pcmgenprkey: Set or clear the PR_key_value Object Data Manager (ODM) attribute for all SDDPCM multipath I/O (MPIO) devices