The AIX system has resources allocated to attached devices.
Use this procedure to change the system software allocations for SAS
controllers.
There are built-in limits for the maximum values that can
be used for setting the driver resource allocation parameters. The
adapter driver resource sizing limits vary depending on the adapter
family. In addition, some of the limits are enforced by adapter hardware
or system I/O resource allocation policies.
AIX® system software allocation attributes
cannot be changed from the disk array manager displays. The attributes
must be changed from the command line by running the chdev command
on an unconfigured SAS controller. Optionally, you can run the chdev command
on a configured SAS controller with the -P option.
This action activates the change on the next configuration of the
adapter.
The details of the driver resource allocation parameters
and the maximum values that can be used for setting the parameters
are provided in the following tables. See Table 1, Table 2, and Table 3.
- Attached Devices
- The limit for the maximum number of physical devices that can
be attached to the specified adapter family.
Table 1. Maximum number of attached devices| PCI-X and PCIe adapter family |
PCIe2 and PCIe3 adapter families |
| 256 |
8000 |
Note: The value of the parameter Maximum Number
of Attached Devices cannot be changed in the PCI-X and
PCIe adapter family. The value can be changed in the PCIe2 adapter
family.
- Commands to Queue
- The limits for the maximum number of commands that can be outstanding
simultaneously to the specified adapter family.
Table 2. Maximum number of commands that can be outstanding| |
PCI-X and PCIe adapter family |
PCIe2 and PCIe3 adapter families |
| Values for maximum number of commands |
Multiples of 10 |
Multiples of 8 |
| Maximum number of JBOD commands |
980 |
984 |
| Maximum number of RAID commands |
890 |
984 |
| Maximum number of SATA commands |
980 |
984 |
| Maximum sum of all JBOD, RAID, SATA commands |
1000 |
1000 |
- Data Transfer Window
- The limits for the maximum total data transfer space (direct memory
access space) that can be outstanding to the specified adapter family.
Table 3. Maximum total data transfer space| |
PCI-X and PCIe adapter family |
PCIe2 and PCIe3 adapter families |
| Maximum JBOD command transfer space |
1 GB - 48 MB (0x3D000000) |
1 GB - 48 MB (0x3D000000) |
| Maximum RAID command transfer space |
1 GB - 48 MB (0x3D000000) |
1 GB - 48 MB (0x3D000000) |
| Maximum SATA command transfer space |
1 GB - 48 MB (0x3D000000) |
1 GB - 48 MB (0x3D000000) |
| Maximum sum of all JBOD, RAID, and SATA transfer
spaces |
1 GB (0x40000000) |
1 GB (0x40000000) |
Note: Specifying a value of zero for any device class (JBOD,
RAID, or SATA) must be counted as 16 MB because the driver enforces
a minimum window to protect against accidental prevention of any data
transfer implied by a value of 0. The driver reserves 48 MB of space
for this purpose, allowing a maximum individual (per class) size of
1 GB - 48 MB (0x3D000000) bytes.
Use the chdev command to change the attribute
for the specific system software resource allocation.
The following sections provide information about the usage
of the
chdev command to change the attributes.
- Attached devices
- Use the chdev command with the max_devices attribute
on the SAS controller as shown in the following example:
chdev
-1 sissasN -a " max_devices=value "
- Where:
- sissasN represents the name of a SAS controller.
- value is the value you assign for the maximum
number of attached devices that you want the AIX software to be prepared to handle.
Note: The default attached devices might be sufficient. This
setting must never be less than the default, because you might not
be able to reboot the system.
- Commands to queue
- Use chdev to set the max_cmd_elems attribute
on the SAS controller as shown in the following example:
chdev
-1 sissasN -a " max_cmd_elems=value_JBOD,value_RAID,value_SATA "
- Where:
- sissasN represents the name of a SAS controller.
- value_JBOD is the value you assign for the
maximum number of JBOD commands.
- value_RAID is the value you assign for the
maximum number of RAID commands.
- value_SATA is the value you assign for the
maximum number of SATA commands that you want the AIX software to handle.
- Data transfer window
- Use chdev to set the max_dma_window attribute
on the SAS controller as shown in the following example: chdev
-1 sissasN -a " max_dma_window=value_JBOD,value_RAID,value_SATA "
- Where:
- sissasN represents the name of a SAS controller.
- value_JBOD is the value you assign for the
maximum JBOD command transfer space.
- value_RAID is the value you assign for the
maximum RAID command transfer space.
- value_SATA is the value you assign for the
maximum SATA command transfer space that you want the AIX software to handle.
Examples- To configure sissas1 for a maximum of 100 commands to RAID arrays
and have it take effect now:
rmdev -Rl sissas1
chdev -l sissas1 -a max_cmd_elems=0,100,0
cfgmgr
- To leave sissas1 unchanged for now, but set it to take effect
when configured next time, for example, the next time you boot:
chdev -l sissas1 -a max_cmd_elems=0,100,0 -P
- To configure sissas2 to use the maximum data transfer window for
RAID while leaving minimal resources to allow a few JBOD and SATA
commands to run through:
rmdev -Rl sissas2
chdev -l sissas2 -a max_dma_window=0,0x3D000000,0
cfgmgr