Re: [00/17] Large Blocksize Support V3

Jens Axboe
2007-04-26T17:46:37Z

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.

--
Jens Axboe