From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 20222C433F5 for ; Tue, 22 Feb 2022 08:46:57 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 7E6278D0002; Tue, 22 Feb 2022 03:46:56 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 76EEA8D0001; Tue, 22 Feb 2022 03:46:56 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 637098D0002; Tue, 22 Feb 2022 03:46:56 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0069.hostedemail.com [216.40.44.69]) by kanga.kvack.org (Postfix) with ESMTP id 55F878D0001 for ; Tue, 22 Feb 2022 03:46:56 -0500 (EST) Received: from smtpin17.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id 1106D8249980 for ; Tue, 22 Feb 2022 08:46:56 +0000 (UTC) X-FDA: 79169785632.17.6384018 Received: from verein.lst.de (verein.lst.de [213.95.11.211]) by imf22.hostedemail.com (Postfix) with ESMTP id 8AFC8C0009 for ; Tue, 22 Feb 2022 08:46:55 +0000 (UTC) Received: by verein.lst.de (Postfix, from userid 2407) id B8BE368AA6; Tue, 22 Feb 2022 09:46:52 +0100 (CET) Date: Tue, 22 Feb 2022 09:46:52 +0100 From: Christoph Hellwig To: Hyeonggon Yoo <42.hyeyoo@gmail.com> Cc: Christoph Hellwig , Baoquan He , linux-kernel@vger.kernel.org, linux-mm@kvack.org, akpm@linux-foundation.org, cl@linux.com, penberg@kernel.org, rientjes@google.com, iamjoonsoo.kim@lge.com, vbabka@suse.cz, David.Laight@aculab.com, david@redhat.com, herbert@gondor.apana.org.au, davem@davemloft.net, linux-crypto@vger.kernel.org, steffen.klassert@secunet.com, netdev@vger.kernel.org, hca@linux.ibm.com, gor@linux.ibm.com, agordeev@linux.ibm.com, borntraeger@linux.ibm.com, svens@linux.ibm.com, linux-s390@vger.kernel.org, michael@walle.cc, linux-i2c@vger.kernel.org, wsa@kernel.org Subject: Re: [PATCH 22/22] mtd: rawnand: Use dma_alloc_noncoherent() for dma buffer Message-ID: <20220222084652.GB6210@lst.de> References: <20220219005221.634-1-bhe@redhat.com> <20220219005221.634-23-bhe@redhat.com> <20220219071900.GH26711@lst.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.17 (2007-11-01) X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 8AFC8C0009 X-Stat-Signature: wfxctgmm741z9srfqh7o5cx3jt4ms8j1 Authentication-Results: imf22.hostedemail.com; dkim=none; dmarc=none; spf=none (imf22.hostedemail.com: domain of hch@lst.de has no SPF policy when checking 213.95.11.211) smtp.mailfrom=hch@lst.de X-HE-Tag: 1645519615-898309 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Sat, Feb 19, 2022 at 11:18:24AM +0000, Hyeonggon Yoo wrote: > > I think it would be better to still allocate the buffer at allocation > > time and then just transfer ownership using dma_sync_single* in the I/O > > path to avoid the GFP_ATOMIC allocation. > > This driver allocates the buffer at initialization step and maps the buffer > for DMA_TO_DEVICE and DMA_FROM_DEVICE when processing IO. > > But after making this driver to use dma_alloc_noncoherent(), remapping > dma_alloc_noncoherent()-ed buffer is strange So I just made it to allocate > the buffer in IO path. You should not remap it. Just use dma_sync_single* to transfer ownership. > Hmm.. for this specific case, What about allocating two buffers > for DMA_TO_DEVICE and DMA_FROM_DEVICE at initialization time? That will work, but I don't see the benefit as you'd still need to call dma_sync_single* before and after each data transfer.