Red Hat Bugzilla – Bug 121716
Raw device I/O transfer size limited to 32KB.
Last modified: 2007-11-30 17:07:01 EST
Description of problem: After modifying the Qlogic HBA driver module to support large bock transfers, statistics were gathered that suggest to maximum transfer size was 32KB. Version-Release number of selected component (if applicable): kernel-smp-2.4.21-9.0.3.EL How reproducible: Always Steps to Reproduce: 1. Modify the Qlogic HBA driver (versions 6.06.65, 6.06.00b11, 6.06.10, and 7.00.00b23) to support large block transfers (qla2x00.h - SG_SEGMENTS defined as SG_ALL, max_sectors defined as 8192). 2. Compile and install driver. $make all install 3. Reload driver module $modprobe -r qla2300 $modprobe -v qla2300 4. Use dd to issue reads to /dev/raw/raw1 (raw device bound to /dev/sdb - LSI RAID disk). $dd if=/dev/raw/raw1 of=/dev/null bs=512K count=1024 $dd if=/dev/raw/raw1 of=/dev/null bs=512K count=1024 Actual results: Maximum transfer size: 32KB Expected results: Maximum transfer size: 512KB Additional info:
Kernel version 2.4.21-14 (from the beta channel) does not appear to resolve this issue with respect to raw devices. The transfer size is still limited to 32K. Block device transfer size was found to be ~128K. Command executed: dd if=/dev/raw/raw1 of=/dev/null bs=512k count=1000 (/dev/raw/raw1 bound to /dev/sda - LSI RAID disk) (The assumption was made that 2.4.21-14 contains the same fixes as 2.4.21-12 referenced in bug 104633.) Red Hat 7.3 kernel version 2.4.20-28.7 does not exhibit this behavior. The transfer size reported was 512K.
A patch to allow raw IOs ("superbh" IOs) larger than 32k has been committed for the U5 kernel.
The fix referred to in comment #7 was committed to the RHEL3 U5 patch pool on 23-Feb-2005 (in kernel version 2.4.21-28.EL).
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on the solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHSA-2005-294.html