Re: Buffered I/O to block device very slow and other SCSI issues...

From: Andrew Morton
Date: Thu Mar 20 2008 - 06:21:07 EST


On Wed, 19 Mar 2008 18:08:07 -0700 Jeremy Higdon <jeremy@xxxxxxx> wrote:
>

(cc's added. It matters)

> On Thu, Mar 20, 2008 at 10:16:54AM +1100, David Chinner wrote:
> > 4p ia64, 24GB RAM, 2.6.25-rc3, qla1280, 15krpm scsi disk.
> >
> > Direct I/O:
> >
> > dgc@budgie:~/xfstests$ sudo dd if=/dev/zero of=/dev/sdb6 bs=1024k count=1024 oflag=direct
> > 1024+0 records in
> > 1024+0 records out
> > 1073741824 bytes (1.1 GB) copied, 27.8974 s, 38.5 MB/s
> >
> > Doing approximately 80 512k I/os per second (disk bandwidth).
> >
> > Buffered I/O:
> >
> > dgc@budgie:~/xfstests$ sudo dd if=/dev/zero of=/dev/sdb6 bs=1024k count=4096
> > 4096+0 records in
> > 4096+0 records out
> > 4294967296 bytes (4.3 GB) copied, 427.872 s, 10.0 MB/s
>
> How big is sdb6? How many '2's do you see in
>
> factor `cat /sys/block/sdb/sdb6/size`

There have always been problems with thsi and I'm not sure that anyone
cared enough about buffered writes to blockdevs to get to the bottom of
them.

I assume you aren't running i386 highmem...


> > I also suspect that CTQ has not been set up correctly on this
> > kernel, because:
> >
> > $ cat /sys/block/sdb/device/queue_depth
> > 3
> > $ ls -l /sys/block/sdb/device/queue_depth
> > -r--r--r-- 1 root root 0 Mar 20 09:59 /sys/block/sdb/device/queue_depth
> > $
> >
> > It appears to be hard coded to 3 and can't be changed....
>
> That's a bug in the qla1280 driver. I thought that had gotten fixed.
> It's looking at the wrong mailbox register after setting device parameters.
>

Was there a patch anywhere?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/