[{"id":1770593,"web_url":"http://patchwork.ozlabs.org/comment/1770593/","msgid":"<20170918.171858.667084185425779267.davem@davemloft.net>","list_archive_url":null,"date":"2017-09-19T00:18:58","subject":"Re: [PATCH net 1/3] net: mvpp2: fix the dma_mask and\n\tcoherent_dma_mask settings for PPv2.2","submitter":{"id":15,"url":"http://patchwork.ozlabs.org/api/people/15/","name":"David Miller","email":"davem@davemloft.net"},"content":"From: Antoine Tenart <antoine.tenart@free-electrons.com>\nDate: Mon, 18 Sep 2017 15:04:06 +0200\n\n> The dev->dma_mask usually points to dev->coherent_dma_mask. This is an\n> issue as setting both of them will override the other. This is\n> problematic here as the PPv2 driver uses a 32-bit-mask for coherent\n> accesses (txq, rxq, bm) and a 40-bit mask for all other accesses due to\n> an hardware limitation.\n> \n> This can lead to a memory remap for all dma_map_single() calls when\n> dealing with memory above 4GB.\n> \n> Fixes: 2067e0a13cfe (\"net: mvpp2: set dma mask and coherent dma mask on PPv2.2\")\n> Reported-by: Stefan Chulski <stefanc@marvell.com>\n> Signed-off-by: Antoine Tenart <antoine.tenart@free-electrons.com>\n\nYikes.\n\nI surrmise that if the platform has made dev->dma_mask point to\n&dev->coherent_dma_mask, it is because it does not allow the two\nsettings to be set separately.\n\nBy rearranging the pointer, you are bypassing that, and probably\nbreaking things or creating a situation that the DMA mapping\nlayer is not expecting.\n\nI want to know more about the situations where dma_mask is set to\npoint to &coherent_dma_mask and how that is supposed to work.\n\nAt a minimum this commit log message needs to go into more detail.\n\nThanks.","headers":{"Return-Path":"<netdev-owner@vger.kernel.org>","X-Original-To":"patchwork-incoming@ozlabs.org","Delivered-To":"patchwork-incoming@ozlabs.org","Authentication-Results":"ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=netdev-owner@vger.kernel.org;\n\treceiver=<UNKNOWN>)","Received":["from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3xx3QX1t77z9s7M\n\tfor <patchwork-incoming@ozlabs.org>;\n\tTue, 19 Sep 2017 10:19:16 +1000 (AEST)","(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1751283AbdISATB (ORCPT <rfc822;patchwork-incoming@ozlabs.org>);\n\tMon, 18 Sep 2017 20:19:01 -0400","from shards.monkeyblade.net ([184.105.139.130]:59826 \"EHLO\n\tshards.monkeyblade.net\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org\n\twith ESMTP id S1751016AbdISAS7 (ORCPT\n\t<rfc822;netdev@vger.kernel.org>); Mon, 18 Sep 2017 20:18:59 -0400","from localhost (74-93-104-98-Washington.hfc.comcastbusiness.net\n\t[74.93.104.98]) (using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(Client did not present a certificate)\n\t(Authenticated sender: davem-davemloft)\n\tby shards.monkeyblade.net (Postfix) with ESMTPSA id A34B5102A7036;\n\tMon, 18 Sep 2017 17:18:58 -0700 (PDT)"],"Date":"Mon, 18 Sep 2017 17:18:58 -0700 (PDT)","Message-Id":"<20170918.171858.667084185425779267.davem@davemloft.net>","To":"antoine.tenart@free-electrons.com","Cc":"andrew@lunn.ch, gregory.clement@free-electrons.com,\n\tthomas.petazzoni@free-electrons.com,\n\tmiquel.raynal@free-electrons.com, nadavh@marvell.com,\n\tlinux@armlinux.org.uk, linux-kernel@vger.kernel.org,\n\tmw@semihalf.com, stefanc@marvell.com, netdev@vger.kernel.org","Subject":"Re: [PATCH net 1/3] net: mvpp2: fix the dma_mask and\n\tcoherent_dma_mask settings for PPv2.2","From":"David Miller <davem@davemloft.net>","In-Reply-To":"<20170918130408.23114-2-antoine.tenart@free-electrons.com>","References":"<20170918130408.23114-1-antoine.tenart@free-electrons.com>\n\t<20170918130408.23114-2-antoine.tenart@free-electrons.com>","X-Mailer":"Mew version 6.7 on Emacs 25.2 / Mule 6.0 (HANACHIRUSATO)","Mime-Version":"1.0","Content-Type":"Text/Plain; charset=us-ascii","Content-Transfer-Encoding":"7bit","X-Greylist":"Sender succeeded SMTP AUTH, not delayed by\n\tmilter-greylist-4.5.12 (shards.monkeyblade.net\n\t[149.20.54.216]); Mon, 18 Sep 2017 17:18:59 -0700 (PDT)","Sender":"netdev-owner@vger.kernel.org","Precedence":"bulk","List-ID":"<netdev.vger.kernel.org>","X-Mailing-List":"netdev@vger.kernel.org"}},{"id":1772839,"web_url":"http://patchwork.ozlabs.org/comment/1772839/","msgid":"<20170921142413.GH3568@kwain>","list_archive_url":null,"date":"2017-09-21T14:24:13","subject":"Re: [PATCH net 1/3] net: mvpp2: fix the dma_mask and\n\tcoherent_dma_mask settings for PPv2.2","submitter":{"id":61603,"url":"http://patchwork.ozlabs.org/api/people/61603/","name":"Antoine Tenart","email":"antoine.tenart@free-electrons.com"},"content":"Hi David,\n\nOn Mon, Sep 18, 2017 at 05:18:58PM -0700, David Miller wrote:\n> From: Antoine Tenart <antoine.tenart@free-electrons.com>\n> Date: Mon, 18 Sep 2017 15:04:06 +0200\n> \n> > The dev->dma_mask usually points to dev->coherent_dma_mask. This is an\n> > issue as setting both of them will override the other. This is\n> > problematic here as the PPv2 driver uses a 32-bit-mask for coherent\n> > accesses (txq, rxq, bm) and a 40-bit mask for all other accesses due to\n> > an hardware limitation.\n> > \n> > This can lead to a memory remap for all dma_map_single() calls when\n> > dealing with memory above 4GB.\n> > \n> > Fixes: 2067e0a13cfe (\"net: mvpp2: set dma mask and coherent dma mask on PPv2.2\")\n> > Reported-by: Stefan Chulski <stefanc@marvell.com>\n> > Signed-off-by: Antoine Tenart <antoine.tenart@free-electrons.com>\n> \n> I surrmise that if the platform has made dev->dma_mask point to\n> &dev->coherent_dma_mask, it is because it does not allow the two\n> settings to be set separately.\n\nThat's also the default when the platform does not allocate dma_mask.\nYou have a point, that could be because it's not supported. But I don't\nknow what would be a good check then.\n\n> By rearranging the pointer, you are bypassing that, and probably\n> breaking things or creating a situation that the DMA mapping\n> layer is not expecting.\n> \n> I want to know more about the situations where dma_mask is set to\n> point to &coherent_dma_mask and how that is supposed to work.\n\nFrom what I see in other parts of the kernel, dma_mask points to\n&coherent_dma_mask by default and having two different values for these\ntwo masks isn't a use case for many drivers.\n\nAntoine","headers":{"Return-Path":"<netdev-owner@vger.kernel.org>","X-Original-To":"patchwork-incoming@ozlabs.org","Delivered-To":"patchwork-incoming@ozlabs.org","Authentication-Results":"ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=netdev-owner@vger.kernel.org;\n\treceiver=<UNKNOWN>)","Received":["from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3xyf4q2vVbz9s7g\n\tfor <patchwork-incoming@ozlabs.org>;\n\tFri, 22 Sep 2017 00:24:27 +1000 (AEST)","(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1751919AbdIUOYQ convert rfc822-to-8bit (ORCPT\n\t<rfc822;patchwork-incoming@ozlabs.org>);\n\tThu, 21 Sep 2017 10:24:16 -0400","from mail.free-electrons.com ([62.4.15.54]:50845 \"EHLO\n\tmail.free-electrons.com\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org\n\twith ESMTP id S1751387AbdIUOYO (ORCPT\n\t<rfc822;netdev@vger.kernel.org>); Thu, 21 Sep 2017 10:24:14 -0400","by mail.free-electrons.com (Postfix, from userid 110)\n\tid F390020852; Thu, 21 Sep 2017 16:24:12 +0200 (CEST)","from localhost (LStLambert-657-1-97-87.w90-63.abo.wanadoo.fr\n\t[90.63.216.87])\n\tby mail.free-electrons.com (Postfix) with ESMTPSA id C2F6420852;\n\tThu, 21 Sep 2017 16:24:12 +0200 (CEST)"],"X-Spam-Checker-Version":"SpamAssassin 3.4.0 (2014-02-07) on\n\tmail.free-electrons.com","X-Spam-Level":"","X-Spam-Status":"No, score=-1.0 required=5.0 tests=ALL_TRUSTED,SHORTCIRCUIT,\n\tURIBL_BLOCKED shortcircuit=ham autolearn=disabled version=3.4.0","Date":"Thu, 21 Sep 2017 16:24:13 +0200","From":"Antoine Tenart <antoine.tenart@free-electrons.com>","To":"David Miller <davem@davemloft.net>","Cc":"antoine.tenart@free-electrons.com, andrew@lunn.ch,\n\tgregory.clement@free-electrons.com, thomas.petazzoni@free-electrons.com,\n\tmiquel.raynal@free-electrons.com, nadavh@marvell.com,\n\tlinux@armlinux.org.uk, linux-kernel@vger.kernel.org,\n\tmw@semihalf.com, stefanc@marvell.com, netdev@vger.kernel.org","Subject":"Re: [PATCH net 1/3] net: mvpp2: fix the dma_mask and\n\tcoherent_dma_mask settings for PPv2.2","Message-ID":"<20170921142413.GH3568@kwain>","References":"<20170918130408.23114-1-antoine.tenart@free-electrons.com>\n\t<20170918130408.23114-2-antoine.tenart@free-electrons.com>\n\t<20170918.171858.667084185425779267.davem@davemloft.net>","MIME-Version":"1.0","Content-Type":"text/plain; charset=iso-8859-1","Content-Disposition":"inline","Content-Transfer-Encoding":"8BIT","In-Reply-To":"<20170918.171858.667084185425779267.davem@davemloft.net>","User-Agent":"Mutt/1.8.3 (2017-05-23)","Sender":"netdev-owner@vger.kernel.org","Precedence":"bulk","List-ID":"<netdev.vger.kernel.org>","X-Mailing-List":"netdev@vger.kernel.org"}},{"id":1773024,"web_url":"http://patchwork.ozlabs.org/comment/1773024/","msgid":"<20170921.100718.386894052177530033.davem@davemloft.net>","list_archive_url":null,"date":"2017-09-21T17:07:18","subject":"Re: [PATCH net 1/3] net: mvpp2: fix the dma_mask and\n\tcoherent_dma_mask settings for PPv2.2","submitter":{"id":15,"url":"http://patchwork.ozlabs.org/api/people/15/","name":"David Miller","email":"davem@davemloft.net"},"content":"From: Antoine Tenart <antoine.tenart@free-electrons.com>\nDate: Thu, 21 Sep 2017 16:24:13 +0200\n\n> That's also the default when the platform does not allocate dma_mask.\n\nThat's the problem that needs to be fixed then.","headers":{"Return-Path":"<netdev-owner@vger.kernel.org>","X-Original-To":"patchwork-incoming@ozlabs.org","Delivered-To":"patchwork-incoming@ozlabs.org","Authentication-Results":"ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=netdev-owner@vger.kernel.org;\n\treceiver=<UNKNOWN>)","Received":["from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3xykKZ0tyXz9sRq\n\tfor <patchwork-incoming@ozlabs.org>;\n\tFri, 22 Sep 2017 03:35:46 +1000 (AEST)","(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1752356AbdIURff (ORCPT <rfc822;patchwork-incoming@ozlabs.org>);\n\tThu, 21 Sep 2017 13:35:35 -0400","from shards.monkeyblade.net ([184.105.139.130]:48518 \"EHLO\n\tshards.monkeyblade.net\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org\n\twith ESMTP id S1751681AbdIURHU (ORCPT\n\t<rfc822;netdev@vger.kernel.org>); Thu, 21 Sep 2017 13:07:20 -0400","from localhost (74-93-104-98-Washington.hfc.comcastbusiness.net\n\t[74.93.104.98]) (using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(Client did not present a certificate)\n\t(Authenticated sender: davem-davemloft)\n\tby shards.monkeyblade.net (Postfix) with ESMTPSA id 74B0A1030CAA5;\n\tThu, 21 Sep 2017 10:07:19 -0700 (PDT)"],"Date":"Thu, 21 Sep 2017 10:07:18 -0700 (PDT)","Message-Id":"<20170921.100718.386894052177530033.davem@davemloft.net>","To":"antoine.tenart@free-electrons.com","Cc":"andrew@lunn.ch, gregory.clement@free-electrons.com,\n\tthomas.petazzoni@free-electrons.com,\n\tmiquel.raynal@free-electrons.com, nadavh@marvell.com,\n\tlinux@armlinux.org.uk, linux-kernel@vger.kernel.org,\n\tmw@semihalf.com, stefanc@marvell.com, netdev@vger.kernel.org","Subject":"Re: [PATCH net 1/3] net: mvpp2: fix the dma_mask and\n\tcoherent_dma_mask settings for PPv2.2","From":"David Miller <davem@davemloft.net>","In-Reply-To":"<20170921142413.GH3568@kwain>","References":"<20170918130408.23114-2-antoine.tenart@free-electrons.com>\n\t<20170918.171858.667084185425779267.davem@davemloft.net>\n\t<20170921142413.GH3568@kwain>","X-Mailer":"Mew version 6.7 on Emacs 25.2 / Mule 6.0 (HANACHIRUSATO)","Mime-Version":"1.0","Content-Type":"Text/Plain; charset=us-ascii","Content-Transfer-Encoding":"7bit","X-Greylist":"Sender succeeded SMTP AUTH, not delayed by\n\tmilter-greylist-4.5.12 (shards.monkeyblade.net\n\t[149.20.54.216]); Thu, 21 Sep 2017 10:07:19 -0700 (PDT)","Sender":"netdev-owner@vger.kernel.org","Precedence":"bulk","List-ID":"<netdev.vger.kernel.org>","X-Mailing-List":"netdev@vger.kernel.org"}},{"id":1774700,"web_url":"http://patchwork.ozlabs.org/comment/1774700/","msgid":"<20170925124005.GD19364@kwain>","list_archive_url":null,"date":"2017-09-25T12:40:05","subject":"Re: [PATCH net 1/3] net: mvpp2: fix the dma_mask and\n\tcoherent_dma_mask settings for PPv2.2","submitter":{"id":61603,"url":"http://patchwork.ozlabs.org/api/people/61603/","name":"Antoine Tenart","email":"antoine.tenart@free-electrons.com"},"content":"On Thu, Sep 21, 2017 at 10:07:18AM -0700, David Miller wrote:\n> From: Antoine Tenart <antoine.tenart@free-electrons.com>\n> Date: Thu, 21 Sep 2017 16:24:13 +0200\n> \n> > That's also the default when the platform does not allocate dma_mask.\n> \n> That's the problem that needs to be fixed then.\n\nOK, I'll drop this patch until I find a proper solution.\n\nThanks,\nAntoine","headers":{"Return-Path":"<netdev-owner@vger.kernel.org>","X-Original-To":"patchwork-incoming@ozlabs.org","Delivered-To":"patchwork-incoming@ozlabs.org","Authentication-Results":"ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=netdev-owner@vger.kernel.org;\n\treceiver=<UNKNOWN>)","Received":["from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3y13Zh0KpNz9tXD\n\tfor <patchwork-incoming@ozlabs.org>;\n\tMon, 25 Sep 2017 22:40:11 +1000 (AEST)","(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S935248AbdIYMkJ (ORCPT <rfc822;patchwork-incoming@ozlabs.org>);\n\tMon, 25 Sep 2017 08:40:09 -0400","from mail.free-electrons.com ([62.4.15.54]:42748 \"EHLO\n\tmail.free-electrons.com\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org\n\twith ESMTP id S935216AbdIYMkH (ORCPT\n\t<rfc822;netdev@vger.kernel.org>); Mon, 25 Sep 2017 08:40:07 -0400","by mail.free-electrons.com (Postfix, from userid 110)\n\tid 09AF62094D; Mon, 25 Sep 2017 14:40:05 +0200 (CEST)","from localhost (LStLambert-657-1-97-87.w90-63.abo.wanadoo.fr\n\t[90.63.216.87])\n\tby mail.free-electrons.com (Postfix) with ESMTPSA id D4FB4208DD;\n\tMon, 25 Sep 2017 14:40:04 +0200 (CEST)"],"X-Spam-Checker-Version":"SpamAssassin 3.4.0 (2014-02-07) on\n\tmail.free-electrons.com","X-Spam-Level":"","X-Spam-Status":"No, score=-1.0 required=5.0 tests=ALL_TRUSTED,SHORTCIRCUIT\n\tshortcircuit=ham autolearn=disabled version=3.4.0","Date":"Mon, 25 Sep 2017 14:40:05 +0200","From":"Antoine Tenart <antoine.tenart@free-electrons.com>","To":"David Miller <davem@davemloft.net>","Cc":"antoine.tenart@free-electrons.com, andrew@lunn.ch,\n\tgregory.clement@free-electrons.com, thomas.petazzoni@free-electrons.com,\n\tmiquel.raynal@free-electrons.com, nadavh@marvell.com,\n\tlinux@armlinux.org.uk, linux-kernel@vger.kernel.org,\n\tmw@semihalf.com, stefanc@marvell.com, netdev@vger.kernel.org","Subject":"Re: [PATCH net 1/3] net: mvpp2: fix the dma_mask and\n\tcoherent_dma_mask settings for PPv2.2","Message-ID":"<20170925124005.GD19364@kwain>","References":"<20170918130408.23114-2-antoine.tenart@free-electrons.com>\n\t<20170918.171858.667084185425779267.davem@davemloft.net>\n\t<20170921142413.GH3568@kwain>\n\t<20170921.100718.386894052177530033.davem@davemloft.net>","MIME-Version":"1.0","Content-Type":"text/plain; charset=iso-8859-1","Content-Disposition":"inline","Content-Transfer-Encoding":"8bit","In-Reply-To":"<20170921.100718.386894052177530033.davem@davemloft.net>","User-Agent":"Mutt/1.9.0 (2017-09-02)","Sender":"netdev-owner@vger.kernel.org","Precedence":"bulk","List-ID":"<netdev.vger.kernel.org>","X-Mailing-List":"netdev@vger.kernel.org"}}]