Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752157AbXEXR05 (ORCPT ); Thu, 24 May 2007 13:26:57 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1750729AbXEXR0s (ORCPT ); Thu, 24 May 2007 13:26:48 -0400 Received: from hancock.steeleye.com ([71.30.118.248]:58885 "EHLO hancock.sc.steeleye.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750698AbXEXR0r (ORCPT ); Thu, 24 May 2007 13:26:47 -0400 Subject: RE: [PATCH] [scsi] Remove __GFP_DMA From: James Bottomley To: Christoph Lameter Cc: "Salyzyn, Mark" , Aubrey Li , Bernhard Walle , linux-scsi@vger.kernel.org, Andrew Morton , linux-kernel@vger.kernel.org, Alan Cox In-Reply-To: References: <1180018752.3692.16.camel@mulgrave.il.steeleye.com> <1180026917.3692.47.camel@mulgrave.il.steeleye.com> Content-Type: text/plain Date: Thu, 24 May 2007 12:26:45 -0500 Message-Id: <1180027605.3692.51.camel@mulgrave.il.steeleye.com> Mime-Version: 1.0 X-Mailer: Evolution 2.8.3 (2.8.3-2.fc6) Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1520 Lines: 36 On Thu, 2007-05-24 at 10:22 -0700, Christoph Lameter wrote: > On Thu, 24 May 2007, James Bottomley wrote: > > > The idea was basically to match an allocation to a device mask. I was > > going to do a generic implementation (which would probably kmalloc, > > check the physaddr and fall back to GFP_DMA if we were unlucky) but > > allow the architectures to override. > > Hmmmm... We could actually implement something like it in the slab > allocators. The mask parameter would lead the allocator to check if the > objects are in a satisfactory range. If not it could examine its partial > lists for slabs that satisfy the range. If that does not work then it > would eventually go to the page allocator to ask for a page in a fitting > range. > > That wont be fast though. How performance sensitive are the allocations? Most of them aren't very. They're usually things that are set at driver intialisation time (shared mailbox memory etc). If the allocation is performance sensitive and has to be done at command or ioctl submission time, we tend to feed the consistent or mapped memory into a dma pool which pre allocates and solves the performance issue. In the aacraid case, the mbox is done at ioctl time, but isn't incredibly performance sensitive. James - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/