Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp38460ybt; Thu, 9 Jul 2020 14:50:57 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxBRlUncgoL1mgar+GJdLKQmL4sQdpbW1j5rG3VjO8IScF1demliIjDvGaov+KetLxO6OhS X-Received: by 2002:a17:906:6847:: with SMTP id a7mr56828047ejs.306.1594331457479; Thu, 09 Jul 2020 14:50:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1594331457; cv=none; d=google.com; s=arc-20160816; b=VXrGY3+9mAE6Rv2iSahNolLdBHvE4zfMBtiN7xX1UzSxWDsrCIAJbh1KxYmc0yDeat 4CMKjkpQMUBtG7CP9tr/nP/TyWhkHLABerieZaF/ABu0WIcE8eoz9nuZihF1bSaVwW3g f0MH/NE2U0r14QBByV7Q0M1ZdKlghmjd3MCgsk8HTsHbZ5hLM7THR6edxbpX6AmKPR/J tDCKiXTxLce9EIF/tzpO3NLyV+5ZTSa4hy7fJxDq9qlXc7L8KMqzR1BbPtFYJf9C4ecl /DgkvhbUGEHI9XxoblLVJTUxU9Z953ibpyZcrPBeedTZrbi2KOqVwT2l05u470yGJZ2H F/Jg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:user-agent:references :message-id:in-reply-to:subject:cc:to:from:date:dkim-signature; bh=hFr4sv4HqUSHsiMLFrScOT9Ngpz9Cto5b81cd6f0i7M=; b=Smxdug+T+sJK+lFEpe0spvoemGhGUj8rxi2kBtKQNE3mcxDOSWXtBVxpAqAHIGn8pY wp4PIVY69QLtVvmxlhc/8HVZ6xI2kDso/Vk5Uv6Ynhm5jSkmQZ83e20eYx9LWm7werJS WjOsg3xtqZOxSZpZCYzKCl78wvJczl3QasuiHtqKNvjbv0ccaawzHEMzBXH2jVVQ8s6G r/wyn4sricOGHKpcIrjCxP9z6BZCFkiSZ/p4mLb7JUmvWaKZRyGWOuJ3K/XyA1IJZDLj ysxuik7fr1vL0g4XTkMCDsDxNhDP9qt2oHP3m8MsZJ16k3PshaSyF9gXA/71Wkbx2UID Vs0Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=npT9p+MK; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id df18si2609241edb.501.2020.07.09.14.50.34; Thu, 09 Jul 2020 14:50:57 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=npT9p+MK; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726272AbgGIVtj (ORCPT + 99 others); Thu, 9 Jul 2020 17:49:39 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59302 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726193AbgGIVtj (ORCPT ); Thu, 9 Jul 2020 17:49:39 -0400 Received: from mail-pj1-x1041.google.com (mail-pj1-x1041.google.com [IPv6:2607:f8b0:4864:20::1041]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 09354C08C5CE for ; Thu, 9 Jul 2020 14:49:39 -0700 (PDT) Received: by mail-pj1-x1041.google.com with SMTP id mn17so1698534pjb.4 for ; Thu, 09 Jul 2020 14:49:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=date:from:to:cc:subject:in-reply-to:message-id:references :user-agent:mime-version; bh=hFr4sv4HqUSHsiMLFrScOT9Ngpz9Cto5b81cd6f0i7M=; b=npT9p+MKNUWXQYWnllvP0dSbLmAXzhuZ/YaLbF3/8MW4bc+uhAX1qaA89d9JVJxBR6 PbUgRXSVwJZeFnp0E9X5JZoApnSJT0NfL23ffg22fwzr5sxzXEzHcL/uaMA6f5Ni2Acd zT37F2Hko+N8k9JdOa4Txvp0uVcibFkV+cndLptq13d8npFhI8UlM2fR2zoAjgawPoTi eTPoxLFxZ3n/VbBci5vXHlMUlSvVgr/66p04oUNOMaidVbaLVmcpnaoKHdWCcCCq+jkA qtaAbzyPWkqMl390vWaIOCRnfftDYD1rUZt8xxobcI7XIrplNI2Xvy5x6HaBo4NjhGMZ L3UQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:in-reply-to:message-id :references:user-agent:mime-version; bh=hFr4sv4HqUSHsiMLFrScOT9Ngpz9Cto5b81cd6f0i7M=; b=oTf7dpwBLozWl4zIK/rw4Avic0ArhQrxJAH7cGLb65HaAcwJZf3qCt2VZCxDgz5aoj ptN9dJV5Kw7q//nSFKjVm5Vfq2aZTZuZaUuz3lRQtUu/vRcgrkuyu0OFuV/sVm1kEXcm fUueTeyfGXmLBVRz6Ze2/Xj5I6kJAfnrBG9UlB1TkwwYAQQLRNO1tNOKFZSApQuheLQF YyoJO34Nm9Jt05RObexrXkwWBnrkA85NdCA6n5fMjstS27d9c46Nl5JHT7KVZeNZf0lT eAhSbGkheyi14Z5+6jzWzt6O54fncGWsHoO6xhuQTsk9wjYjSyteYbMO9NlkCuEim2Z/ gXBQ== X-Gm-Message-State: AOAM533VwgPIyTLj4gQ8aM0uszYmv2leAcPheetd4JLJXfGoHFGNPRLw 3dLzOBepe67RHmOs9o2v5QkHjw== X-Received: by 2002:a17:90b:3c1:: with SMTP id go1mr2110948pjb.129.1594331378329; Thu, 09 Jul 2020 14:49:38 -0700 (PDT) Received: from [2620:15c:17:3:4a0f:cfff:fe51:6667] ([2620:15c:17:3:4a0f:cfff:fe51:6667]) by smtp.gmail.com with ESMTPSA id u74sm3454482pgc.58.2020.07.09.14.49.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 09 Jul 2020 14:49:37 -0700 (PDT) Date: Thu, 9 Jul 2020 14:49:37 -0700 (PDT) From: David Rientjes X-X-Sender: rientjes@chino.kir.corp.google.com To: Christoph Hellwig cc: Nicolas Saenz Julienne , Marek Szyprowski , Robin Murphy , linux-rpi-kernel@lists.infradead.org, jeremy.linton@arm.com, iommu@lists.linux-foundation.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] dma-pool: use single atomic pool for both DMA zones In-Reply-To: <20200708161010.GA30184@lst.de> Message-ID: References: <20200707122804.21262-1-nsaenzjulienne@suse.de> <20200708153509.GA26743@lst.de> <20200708161010.GA30184@lst.de> User-Agent: Alpine 2.23 (DEB 453 2020-06-18) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 8 Jul 2020, Christoph Hellwig wrote: > On Wed, Jul 08, 2020 at 06:00:35PM +0200, Nicolas Saenz Julienne wrote: > > On Wed, 2020-07-08 at 17:35 +0200, Christoph Hellwig wrote: > > > On Tue, Jul 07, 2020 at 02:28:04PM +0200, Nicolas Saenz Julienne wrote: > > > > When allocating atomic DMA memory for a device, the dma-pool core > > > > queries __dma_direct_optimal_gfp_mask() to check which atomic pool to > > > > use. It turns out the GFP flag returned is only an optimistic guess. > > > > The pool selected might sometimes live in a zone higher than the > > > > device's view of memory. > > > > > > > > As there isn't a way to grantee a mapping between a device's DMA > > > > constraints and correct GFP flags this unifies both DMA atomic pools. > > > > The resulting pool is allocated in the lower DMA zone available, if any, > > > > so as for devices to always get accessible memory while having the > > > > flexibility of using dma_pool_kernel for the non constrained ones. > > > > > > > > Fixes: c84dc6e68a1d ("dma-pool: add additional coherent pools to map to gfp > > > > mask") > > > > Reported-by: Jeremy Linton > > > > Suggested-by: Robin Murphy > > > > Signed-off-by: Nicolas Saenz Julienne > > > > > > Hmm, this is not what I expected from the previous thread. I thought > > > we'd just use one dma pool based on runtime available of the zones.. > > > > I may be misunderstanding you, but isn't that going back to how things used to > > be before pulling in David Rientjes' work? The benefit of having a GFP_KERNEL > > pool is that non-address-constrained devices can get their atomic memory there, > > instead of consuming somewhat scarcer low memory. > > Yes, I think we are misunderstanding each other. I don't want to remove > any pool, just make better runtime decisions when to use them. > Just to be extra explicit for the record and for my own understanding: Nicolas, your patch series "dma-pool: Fix atomic pool selection" obsoletes this patch, right? :)