In 2011 I posted instructions on how to use kdb to compare a hdisk’s running queue depth value against the value stored in the AIX ODM. Something you often find if values are set but the system is not rebooted (or devices are not re-configured).

 

AIX 7.1 Technology Level 3 and AIX 6.1 Technology Level 9 introduce a new flag to the lsattr command. The new –P option will display the current ODM attribute settings i.e. this new option will display applied attributes that may not yet be in effect on the running system.

 

For example, we start with a hdisk, with a queue depth of 8. The lsattr command confirms that both the running and stored values match.

 

# lsattr -El hdisk1 -a queue_depth

queue_depth 8 Queue DEPTH True            << ODM

 

# lsattr -Pl hdisk1 -a queue_depth

queue_depth 8 Queue DEPTH True            << Running

 

The queue depth is then changed to 256 (using chdev –P, which only changes the stored ODM value). I can quickly detect this mismatch easily using lsattr. The command quickly highlights the differences.

 

# chdev -l hdisk1 -a queue_depth=256 -P

hdisk1 changed

 

# lsattr -El hdisk1 -a queue_depth

queue_depth 256 Queue DEPTH True                << ODM

 

# lsattr -Pl hdisk1 -a queue_depth

queue_depth 8 Queue DEPTH True                  << Running

 

This method should work for other devices as well. For example, if I change the rw_timeout value on a VSCSI adapter, the lsattr command highlights the configuration differences before and after.

 

# lsattr -El vscsi0 -a rw_timeout

rw_timeout 120 Virtual SCSI Read/Write Command Timeout True

 

# lsattr -Pl vscsi0 -a rw_timeout

rw_timeout 120 Virtual SCSI Read/Write Command Timeout True

 

# chdev -l vscsi0 -a rw_timeout=3600 -P

vscsi0 changed

 

# lsattr -El vscsi0 -a rw_timeout

rw_timeout 3600 Virtual SCSI Read/Write Command Timeout True

 

# lsattr -Pl vscsi0 -a rw_timeout

rw_timeout 120 Virtual SCSI Read/Write Command Timeout True