Re: [00/17] Large Blocksize Support V3

Eric W. Biederman
2007-04-26T19:00:43Z

Jens Axboe <jens.axboe@oracle.com> writes:

> On Fri, Apr 27 2007, Nick Piggin wrote:
>> Why do we limit drivers to 128 sg entries?
>
> No particular reason, except than to avoid 2^bigger order allocations.
> 2MiB requests would require 3 contig pages to setup the sg list, which
> is (probably) a little troublesome especially since it's sometimes
> atomically allocated.
>
> Larger pages are by no means a prerequisite to getting larger requests,
> assuming your hardware can handle the bigger sglist. There are other
> ways of doing that, I've contemplated doing chained sglists and adding
> sg_for_each_segment() macros for iterating these things. Drivers that
> want larger sglists would then be required to update their sg mapping
> loop to use the provided macros. It wouldn't be too hard.

Thanks. At least in the long term supporting larger scatter gather lists
in the kernel looks like something we need to do assuming bandwidth
goes up exponentially but I/O device latency remains high.

Eric