lkml.org 
[lkml]   [2008]   [Jul]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [SUGGESTION]: drop virtual merge accounting in I/O requests
On Sun, 13 Jul 2008, Andi Kleen wrote:

> David Miller wrote:
>> From: Andi Kleen <andi@firstfloor.org>
>> Date: Sun, 13 Jul 2008 15:50:55 +0200
>>
>>> Still I would expect that modern IO controllers are typically fast
>>> enough at processing SG lists that it shouldn't matter much.
>>
>> I know it matters a lot on sparc64 ESP scsi controllers.
>>
>> You can only have one address/len pair DMA'ing at a time and you have
>> to service an interrupt to load in the the next DMA sg elements into
>> the chips registers.
>>
>> Merging is essentially a must for performance on those cards.
>
> Well right now your setup breaks all controllers with "weird requirements"
> like 64k DMA or similar. You'll need to find some way to turn off BIO
> merge for those at least.
>
> Perhaps this needs to be really a block queue attribute instead of a global?
>
> -Andi

There is no need to turn BIO merge off --- the problem is caused by
accounting of BIO merging in block layer, not by BIO merging itself.

Just do #define BIO_VMERGE_BOUNDARY 0, and that disables the accounting,
but leaves merging as it is.

Mikulas


\
 
 \ /
  Last update: 2008-07-14 01:55    [W:0.113 / U:0.172 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site