Querying AIX device attribute values with the AIX kernel debugger
We all know that you can modify online certain attributes on AIX devices, like queue_depth on disks for example :
However, some attributes changes need a reboot as the device property is in use at that time. You can modify the property by specifying that it will be modified at boot time, with the 'chdev -P' option. This can lead to quite some confusion : imagine a junior sysadmin changing the property, but forgetting the reboot. The 'lsattr' command will report the modified value, but not if it is effectively in use.
We can obtain the currently used value by interrogating the AIX kernel with the kernel debugger, quite a handy feature.
The following command shows the current value of cmd_num_elems on the virtual fiber adapter :
The following command lists the current values of the queue_depth parameter on hdisk15 :
# chdev -l hdisk15 -a queue_depth=16
However, some attributes changes need a reboot as the device property is in use at that time. You can modify the property by specifying that it will be modified at boot time, with the 'chdev -P' option. This can lead to quite some confusion : imagine a junior sysadmin changing the property, but forgetting the reboot. The 'lsattr' command will report the modified value, but not if it is effectively in use.
We can obtain the currently used value by interrogating the AIX kernel with the kernel debugger, quite a handy feature.
The following command shows the current value of cmd_num_elems on the virtual fiber adapter :
echo vfcs fcs0
The following command lists the current values of the queue_depth parameter on hdisk15 :
# echo scsidisk hdisk3
ushort queue_depth = 0x8;