From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andi Kleen Date: Sun, 13 Jul 2008 20:13:17 +0000 Subject: Re: [SUGGESTION]: drop virtual merge accounting in I/O requests Message-Id: <487A61DD.6090304@firstfloor.org> List-Id: References: <87iqvb2skz.fsf@basil.nowhere.org> <487A083F.9010301@firstfloor.org> <20080713.124610.193703496.davem@davemloft.net> In-Reply-To: <20080713.124610.193703496.davem@davemloft.net> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: David Miller Cc: mpatocka@redhat.com, sparclinux@vger.kernel.org, linux-kernel@vger.kernel.org, jens.axboe@oracle.com David Miller wrote: > From: Andi Kleen > 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 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756230AbYGMUN2 (ORCPT ); Sun, 13 Jul 2008 16:13:28 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1754976AbYGMUNU (ORCPT ); Sun, 13 Jul 2008 16:13:20 -0400 Received: from one.firstfloor.org ([213.235.205.2]:34891 "EHLO one.firstfloor.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754911AbYGMUNT (ORCPT ); Sun, 13 Jul 2008 16:13:19 -0400 Message-ID: <487A61DD.6090304@firstfloor.org> Date: Sun, 13 Jul 2008 22:13:17 +0200 From: Andi Kleen User-Agent: Thunderbird 1.5.0.12 (X11/20060911) MIME-Version: 1.0 To: David Miller CC: mpatocka@redhat.com, sparclinux@vger.kernel.org, linux-kernel@vger.kernel.org, jens.axboe@oracle.com Subject: Re: [SUGGESTION]: drop virtual merge accounting in I/O requests References: <87iqvb2skz.fsf@basil.nowhere.org> <487A083F.9010301@firstfloor.org> <20080713.124610.193703496.davem@davemloft.net> In-Reply-To: <20080713.124610.193703496.davem@davemloft.net> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org David Miller wrote: > From: Andi Kleen > 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