Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933259AbcJUNIF (ORCPT ); Fri, 21 Oct 2016 09:08:05 -0400 Received: from b.ns.miles-group.at ([95.130.255.144]:44723 "EHLO radon.swed.at" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S932823AbcJUNIE (ORCPT ); Fri, 21 Oct 2016 09:08:04 -0400 Subject: Re: UBIFS with dma on 4.6 kernel is not working To: Christoph Hellwig References: <519a83bf-1244-5151-b873-bb8e1f2db3c6@nod.at> <20161021125313.GA16754@infradead.org> Cc: Naga Sureshkumar Relli , "dwmw2@infradead.org" , "computersforpeace@gmail.com" , "dedekind1@gmail.com" , "adrian.hunter@intel.com" , "michal.simek@xilinx.com" , Punnaiah Choudary Kalluri , "linux-mtd@lists.infradead.org" , "linux-kernel@vger.kernel.org" , Boris Brezillon From: Richard Weinberger Message-ID: Date: Fri, 21 Oct 2016 15:07:57 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2 MIME-Version: 1.0 In-Reply-To: <20161021125313.GA16754@infradead.org> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1105 Lines: 27 Christoph, On 21.10.2016 14:53, Christoph Hellwig wrote: > On Fri, Oct 21, 2016 at 11:29:16AM +0200, Richard Weinberger wrote: >> DMA to vmalloced memory not good, it may work by chance if you transfer >> less than PAGE_SIZE. >> Especially on ARM. > > DMA to vmalloc'ed or vmap memory is perfectly fine, you just have to be > very careful. > > I would suggest to not expose the vmalloc address to the lower layers > that do DMA, but instead expose the pages, either as an array or > scatterlist. Either allocate the pages using the normal page allocator > and then use vm_map_ram to generate a virtual address for them (that > is what XFS does for it's large metadata objects for example). Or if > you can't do that iterate over the vmalloc address in page size chunks > and use vmalloc_to_page (we still also do that for one piece of legacy > cruft in XFS, but I'd rather avoid that for new designs). > Hmm, thought this is still problematic on VIVT architectures. Boris tried to provide a solution for that some time ago: http://www.spinics.net/lists/arm-kernel/msg494025.html Thanks, //richard