Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp1211956imu; Wed, 16 Jan 2019 14:55:39 -0800 (PST) X-Google-Smtp-Source: ALg8bN5D+T44P0ydqvWC6hmIuCSC+R0pckautIjlgtqLF1SHjznn94j2h0D3sxScwSLUmnzt/5tq X-Received: by 2002:a17:902:583:: with SMTP id f3mr12635087plf.202.1547679339878; Wed, 16 Jan 2019 14:55:39 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1547679339; cv=none; d=google.com; s=arc-20160816; b=bpY/yBnJZoR72PResQD6A/pzyJlvnVKmTMEQaH8fE4iwDGj6A77W66chG9ln9uSBUf FqsbM1MTmnA3ejKW5rp7CAdrCejCTb99FTwG6BMrqDHjFxe4FVrU9+kvc2yd4pgYeTlf klft9cplokadtGeRrYwTSc2V6ccgGrvrA/WOrJWeXelPlUFqhiBUWDi+qCFYdI5h3w+V EUKR4jpmBpNt2DZ1yXtkgn0GrLRjW46Vca7ty5EtmKKU49S1AUEhu167Gjp9uf5sVpra ZJXElFvsqjp41sUZ9qYcZzX4OOftsmHac+17HyDDaMBTO9vRMqFtD/f4TMBY7XXhv0dS kjvg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date; bh=zEiB9NMh0xVnCLyoXDJitiHemXhL4Z9fTlU3up7w6i4=; b=YrDj62heDGrvp+S7ZQ2CZB4FUVIjtAN7Vk6IcA0cjE3DNaHxVpAJbnx92S0ndti7gQ OZijjbaV95P+v6wcGyoDAEJZk99+iR/iIacW5nk58OjIVoEMS8OsUqZ5iqr1PqrmujWO s5k1kO2i0SmD7YW1OylNVDPwgKgjrtkS4oUbwhHItBPIM6nTf6UX9ho43EXKloGVtvba Xdvxn0RZBbXhbEaATSUxZJZfBz3VJ/KN8009tTKie+mNlcdE4sU+Rfipv4JKw3PIcVqE HJmdKn6lsJy1Yk09DOFjxdVVUIkv6afkfeUAfm3sqytDP7A6J8c2Sea8xnX8VFqjrytV A/Ow== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id bf4si7470902plb.163.2019.01.16.14.55.21; Wed, 16 Jan 2019 14:55:39 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2405160AbfAPQGl (ORCPT + 99 others); Wed, 16 Jan 2019 11:06:41 -0500 Received: from verein.lst.de ([213.95.11.211]:60290 "EHLO newverein.lst.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2405141AbfAPQGl (ORCPT ); Wed, 16 Jan 2019 11:06:41 -0500 Received: by newverein.lst.de (Postfix, from userid 2407) id 26CD668CEC; Wed, 16 Jan 2019 17:06:39 +0100 (CET) Date: Wed, 16 Jan 2019 17:06:39 +0100 From: "hch@lst.de" To: "Koenig, Christian" Cc: Thomas Hellstrom , "hch@lst.de" , "linux-kernel@vger.kernel.org" , "yong.zhi@intel.com" , "daniel.vetter@ffwll.ch" , "linux-rdma@vger.kernel.org" , "linux-media@vger.kernel.org" , "bingbu.cao@intel.com" , "jian.xu.zheng@intel.com" , "tian.shu.qiu@intel.com" , "shiraz.saleem@intel.com" , "sakari.ailus@linux.intel.com" , "dri-devel@lists.freedesktop.org" , "jgg@ziepe.ca" Subject: Re: [PATCH] lib/scatterlist: Provide a DMA page iterator Message-ID: <20190116160639.GA28619@lst.de> References: <20190114094856.GB29604@lst.de> <1fb20ab4b171b281e9994b6c55734c120958530b.camel@vmware.com> <2b440a3b-ed2f-8fd6-a21e-97ca0b2f5db9@gmail.com> <20190115152029.GB2325@lst.de> <41d0616e95fb48942404fb54d82249f5700affb1.camel@vmware.com> <20190115183133.GA12350@lst.de> <20190115205801.GA15432@lst.de> <01e5522bf88549bfdaea1430fece23cb3d1a1a55.camel@vmware.com> <8aadac80-da9b-b52a-a4bf-066406127117@amd.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <8aadac80-da9b-b52a-a4bf-066406127117@amd.com> User-Agent: Mutt/1.5.17 (2007-11-01) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Jan 16, 2019 at 07:28:13AM +0000, Koenig, Christian wrote: > To summarize once more: We have an array of struct pages and want to > coherently map that to a device. And the answer to that is very simple: you can't. What is so hard to understand about? If you want to map arbitrary memory it simply can't be done in a coherent way on about half of our platforms. > If that is not possible because of whatever reason we want to get an > error code or even not load the driver from the beginning. That is a bullshit attitude. Just like everyone else makes their drivers work you should not be lazy. > > bool dma_streaming_is_coherent(const struct device *) > > > > API to help us decide when to load or not. > > Yes, please. Hell no.