[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <96df804b6d9d467391fda27d90b5227c@huawei.com>
Date: Mon, 4 Nov 2024 10:40:49 +0000
From: Salil Mehta <salil.mehta@...wei.com>
To: Robin Murphy <robin.murphy@....com>, Arnd Bergmann <arnd@...nel.org>,
"shenjian (K)" <shenjian15@...wei.com>
CC: Arnd Bergmann <arnd@...db.de>, Will Deacon <will@...nel.org>, Joerg Roedel
<jroedel@...e.de>, "iommu@...ts.linux.dev" <iommu@...ts.linux.dev>, "Andrew
Lunn" <andrew+netdev@...n.ch>, "David S. Miller" <davem@...emloft.net>, "Eric
Dumazet" <edumazet@...gle.com>, Jakub Kicinski <kuba@...nel.org>, Paolo Abeni
<pabeni@...hat.com>, shaojijie <shaojijie@...wei.com>, wangpeiyang
<wangpeiyang1@...wei.com>, "netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: RE: [PATCH] [net-next] net: hns3: add IOMMU_SUPPORT dependency
HI Robin,
> From: Robin Murphy <robin.murphy@....com>
> Sent: Monday, November 4, 2024 10:29 AM
> To: Arnd Bergmann <arnd@...nel.org>; shenjian (K)
> <shenjian15@...wei.com>; Salil Mehta <salil.mehta@...wei.com>
> Cc: Arnd Bergmann <arnd@...db.de>; Will Deacon <will@...nel.org>;
> Joerg Roedel <jroedel@...e.de>; iommu@...ts.linux.dev; Andrew Lunn
> <andrew+netdev@...n.ch>; David S. Miller <davem@...emloft.net>; Eric
> Dumazet <edumazet@...gle.com>; Jakub Kicinski <kuba@...nel.org>;
> Paolo Abeni <pabeni@...hat.com>; shaojijie <shaojijie@...wei.com>;
> wangpeiyang <wangpeiyang1@...wei.com>; netdev@...r.kernel.org;
> linux-kernel@...r.kernel.org
> Subject: Re: [PATCH] [net-next] net: hns3: add IOMMU_SUPPORT
> dependency
>
> On 2024-11-04 8:21 am, Arnd Bergmann wrote:
> > From: Arnd Bergmann <arnd@...db.de>
> >
> > The hns3 driver started filling iommu_iotlb_gather structures itself,
> > which requires CONFIG_IOMMU_SUPPORT is enabled:
> >
> > drivers/net/ethernet/hisilicon/hns3/hns3_enet.c: In function
> 'hns3_dma_map_sync':
> > drivers/net/ethernet/hisilicon/hns3/hns3_enet.c:395:14: error: 'struct
> iommu_iotlb_gather' has no member named 'start'
> > 395 | iotlb_gather.start = iova;
> > | ^
> > drivers/net/ethernet/hisilicon/hns3/hns3_enet.c:396:14: error: 'struct
> iommu_iotlb_gather' has no member named 'end'
> > 396 | iotlb_gather.end = iova + granule - 1;
> > | ^
> > drivers/net/ethernet/hisilicon/hns3/hns3_enet.c:397:14: error: 'struct
> iommu_iotlb_gather' has no member named 'pgsize'
> > 397 | iotlb_gather.pgsize = granule;
> > | ^
> >
> > Add a Kconfig dependency to make it build in random configurations.
> >
> > Cc: Will Deacon <will@...nel.org>
> > Cc: Joerg Roedel <jroedel@...e.de>
> > Cc: Robin Murphy <robin.murphy@....com>
> > Cc: iommu@...ts.linux.dev
> > Fixes: f2c14899caba ("net: hns3: add sync command to sync io-pgtable")
> > Signed-off-by: Arnd Bergmann <arnd@...db.de>
> > ---
> > I noticed that no other driver does this, so it would be good to have
> > a confirmation from the iommu maintainers that this is how the
> > interface and the dependency is intended to be used.
>
> WTF is that patch doing!? No, random device drivers should absolutely not
> be poking into IOMMU driver internals, this is egregiously wrong and the
> correct action is to drop it entirely.
Absolutely agree with it. Sorry I haven't been in touch for quite some time. Let
me catch the whole story. Feel free to drop this patch.
Thanks
Salil.
>
> Thanks,
> Robin.
>
> > ---
> > drivers/net/ethernet/hisilicon/Kconfig | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/drivers/net/ethernet/hisilicon/Kconfig
> > b/drivers/net/ethernet/hisilicon/Kconfig
> > index 65302c41bfb1..790efc8d2de6 100644
> > --- a/drivers/net/ethernet/hisilicon/Kconfig
> > +++ b/drivers/net/ethernet/hisilicon/Kconfig
> > @@ -91,6 +91,7 @@ config HNS_ENET
> > config HNS3
> > tristate "Hisilicon Network Subsystem Support HNS3 (Framework)"
> > depends on PCI
> > + depends on IOMMU_SUPPORT
> > select NET_DEVLINK
> > select PAGE_POOL
> > help
>
Powered by blists - more mailing lists