The default Max Queue Depth setting is 32 for Red Hat. You can change it to configure /etc/modprobe.conf [RHEL 5] and also add new config file to /etc/modprobe.d/ [for RHEL 6].
In some particular situations, you should change this to a higher or lower value. It depends on your storage vendor. Please before set it to ask your vendor what is the recommended value for the storage side.
Check your Red Hat version and also qdepth value:
#cat /etc/redhat-release Red Hat Enterprise Linux Server release 6.6 (Santiago)[/shell] [shell]# modinfo qla2xxx | grep ql2xmaxqdepth parm: ql2xmaxqdepth:Maximum queue depth to report for target devices. (int) # cat /sys/module/qla2xxx/parameters/ql2xmaxqdepth 32
RHEL 5
Just add this configuration to /etc/modprobe.conf file and restart the server.
#vi /etc/modprobe.conf[/shell] alias scsi_hostadapter1 qla2xxx options qla2xxx ql2xmaxqdepth=16
RHEL 6
Step 1:Create a config file under modprobe.d
Changing qdepth on Red Hat 6 is a bit complicated but very clear steps. First off all you need to re-create "initramfs" file. Before start operation takes a backup of initramfs.
# vi /etc/modprobe.d/qlx.conf options qla2xxx ql2xmaxqdepth=16
Step 2:Copy current initramfs and create new one
# ls -ld /boot/initramfs-$(uname -r).img -rw-------. 1 root root 24217151 Mar 2 09:24 /boot/initramfs-2.6.32-573.18.1.el6.x86_64.img # cp /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.$(date +%m-%d-%H%M%S).bak
Re-create new initramfs file
# dracut -f -v
The last line 'll be same as like this which depends on your kernel version
I: Wrote /boot/initramfs-2.6.32-573.18.1.el6.x86_64.img
I: -rw-------. 1 root root 24216130 Mar 2 11:21 /boot/initramfs-2.6.32-573.18.1.el6.x86_64.img
***If you are in a kernel which different from initrd version you should run dracut command with kernel option.
#dracut -f /boot/initramfs-2.6.32-220.7.1.el6.x86_64.img 2.6.32-220.7.1.el6.x86_64
Step 3: Restart Server and check new qdepth
#shudown -r now # cat /sys/module/qla2xxx/parameters/ql2xmaxqdepth 16