lkml.org 
[lkml]   [2008]   [Jul]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [SUGGESTION]: drop virtual merge accounting in I/O requests
From
From: Andi Kleen <andi@firstfloor.org>
Date: Sun, 13 Jul 2008 22:13:17 +0200

> 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?

Like I said, that code was written at a time when none of the block
segment check stuff existed, and therefore worked perfectly fine in
the environment in which it was created.

Someone added the segmenting code, but didn't bother to add proper
checking to the merging bits.

Usually we revert code that breaks things like that, right?

So I find it unusual for people to talk about turning off the
code that was working perfectly fine previously in situations
like this.



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