Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S265356AbUFXO61 (ORCPT ); Thu, 24 Jun 2004 10:58:27 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S265360AbUFXO61 (ORCPT ); Thu, 24 Jun 2004 10:58:27 -0400 Received: from cantor.suse.de ([195.135.220.2]:22924 "EHLO Cantor.suse.de") by vger.kernel.org with ESMTP id S265356AbUFXO6Z (ORCPT ); Thu, 24 Jun 2004 10:58:25 -0400 Date: Thu, 24 Jun 2004 16:58:24 +0200 Message-ID: From: Takashi Iwai To: Andi Kleen Cc: ak@muc.de, tripperda@nvidia.com, discuss@x86-64.org, linux-kernel@vger.kernel.org, andrea@suse.de Subject: Re: [discuss] Re: 32-bit dma allocations on 64-bit platforms In-Reply-To: <20040624164258.1a1beea3.ak@suse.de> References: <20040623213643.GB32456@hygelac> <20040623234644.GC38425@colin2.muc.de> <20040624112900.GE16727@wotan.suse.de> <20040624164258.1a1beea3.ak@suse.de> User-Agent: Wanderlust/2.10.1 (Watching The Wheels) SEMI/1.14.5 (Awara-Onsen) FLIM/1.14.5 (Demachiyanagi) APEL/10.6 MULE XEmacs/21.4 (patch 15) (Security Through Obscurity) (i386-suse-linux) MIME-Version: 1.0 (generated by SEMI 1.14.5 - "Awara-Onsen") Content-Type: text/plain; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1285 Lines: 37 At Thu, 24 Jun 2004 16:42:58 +0200, Andi Kleen wrote: > > On Thu, 24 Jun 2004 16:36:47 +0200 > Takashi Iwai wrote: > > > At Thu, 24 Jun 2004 13:29:00 +0200, > > Andi Kleen wrote: > > > > > > > Can't it be called with GFP_KERNEL at first, then with GFP_DMA if the > > > > allocated pages are out of dma mask, just like in pci-gart.c? > > > > (with ifdef x86-64) > > > > > > That won't work reliable enough in extreme cases. > > > > Well, it's not perfect, but it'd be far better than GFP_DMA only :) > > The only description for this patch I can think of is "russian roulette" Even if we have a bigger DMA zone, it's no guarantee that the obtained page is precisely in the given mask. We can unlikely define zones fine enough for all different 24, 28, 29, 30 and 31bit DMA masks. My patch for i386 works well in most cases, because such a device is usually equipped on older machines with less memory than DMA mask. Without the patch, the allocation is always <16MB, may fail even small number of pages. Takashi - 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/