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 X-Spam-Level: X-Spam-Status: No, score=-5.3 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id D3F3AC43461 for ; Tue, 8 Sep 2020 12:22:39 +0000 (UTC) Received: from lists.ozlabs.org (lists.ozlabs.org [203.11.71.2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id E79B6221F0 for ; Tue, 8 Sep 2020 12:22:38 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org E79B6221F0 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=lst.de Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Received: from bilbo.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 4Bm46M3hpmzDqSH for ; Tue, 8 Sep 2020 22:22:35 +1000 (AEST) Authentication-Results: lists.ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lst.de (client-ip=213.95.11.211; helo=verein.lst.de; envelope-from=hch@lst.de; receiver=) Authentication-Results: lists.ozlabs.org; dmarc=none (p=none dis=none) header.from=lst.de Received: from verein.lst.de (verein.lst.de [213.95.11.211]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 4Bm4335Td7zDqN9 for ; Tue, 8 Sep 2020 22:19:42 +1000 (AEST) Received: by verein.lst.de (Postfix, from userid 2407) id 618B668AFE; Tue, 8 Sep 2020 14:19:37 +0200 (CEST) Date: Tue, 8 Sep 2020 14:19:37 +0200 From: Christoph Hellwig To: Alexey Kardashevskiy Subject: Re: [PATCH kernel] powerpc/dma: Fix dma_map_ops::get_required_mask Message-ID: <20200908121937.GA31559@lst.de> References: <20200908015106.79661-1-aik@ozlabs.ru> <20200908054416.GA13585@lst.de> <94353228-2262-cfa1-7177-7eed2288ca63@ozlabs.ru> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <94353228-2262-cfa1-7177-7eed2288ca63@ozlabs.ru> User-Agent: Mutt/1.5.17 (2007-11-01) X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Oliver O'Halloran , linuxppc-dev@lists.ozlabs.org, Christoph Hellwig , =?iso-8859-1?Q?C=E9dric?= Le Goater Errors-To: linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Sender: "Linuxppc-dev" On Tue, Sep 08, 2020 at 10:06:56PM +1000, Alexey Kardashevskiy wrote: > On 08/09/2020 15:44, Christoph Hellwig wrote: >> On Tue, Sep 08, 2020 at 11:51:06AM +1000, Alexey Kardashevskiy wrote: >>> What is dma_get_required_mask() for anyway? What "requires" what here? >> >> Yes, it is a really odd API. It comes from classic old PCI where >> 64-bit addressing required an additional bus cycle, and various devices >> had different addressing schemes, with the smaller addresses beeing >> more efficient. So this allows the driver to request the "required" >> addressing mode to address all memory. "preferred" might be a better >> name as we'll bounce buffer if it isn't met. I also don't really see >> why a driver would ever want to use it for a modern PCIe device. > > > a-ha, this makes more sense, thanks. Then I guess we need to revert that > one bit from yours f1565c24b596, do not we? Why? The was the original intent of the API, but now we also use internally to check the addressing capabilities.