Re: aacraid 2.4.0 kernel

Jens Axboe (axboe@suse.de)
Thu, 8 Feb 2001 04:18:14 +0100


On Wed, Feb 07 2001, Matt_Domsch@Dell.com wrote:
> Adaptec is still working on it. Basically (and as Jason discovered), the
> driver and firmware can't handle single I/O requests larger than 64KB. Even
> when scatter/gathered, if the total is >64KB, it chokes. This was just fine
> for 2.2.x (no one has ever run into this problem there), but the
> much-improved block layer of 2.4.x throws larger I/Os at the driver. So,
> the developers at Adaptec are busy trying to add support to break large
> requests into smaller chunks, and then gather them back together.

Poor hardware, even IDE does better than this with scatter gather.
However, that's not why I'm replying. A driver should never have
to deal with bigger requests than it can handle. This just leads
to duplicated code in the block drivers and someone getting it
wrong (in fact, 2.4.1-pre showed bugs in the cpqarray driver
doing this for sg). The block layer is flexible enough to stop
merging beyond the low level drivers limit.

I haven't seen this driver, but if it uses the SCSI layer instead
of being a "pure" block driver then I can see a slight problem
in that currently only understand max sg entry limits and not
total request sizes. I would rather fix this limitation then, and
would also be interested to know if any of the (older) SCSI drivers
have such limitations too.

-- 
Jens Axboe

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/