Re: [PATCH 02/19] dma-iommu: cleanup dma-iommu.h

From: Robin Murphy
Date: Wed Feb 06 2019 - 10:08:31 EST


On 01/02/2019 16:13, Christoph Hellwig wrote:
On Fri, Feb 01, 2019 at 02:47:17PM +0000, Robin Murphy wrote:
On 14/01/2019 09:41, Christoph Hellwig wrote:
No need for a __KERNEL__ guard outside uapi, make sure we pull in the
includes unconditionally so users can rely on it, and add a missing
comment describing the #else cpp statement. Last but not least include
<linux/errno.h> instead of the asm version, which is frowned upon.

I think the __KERNEL__ and asm/errno.h slip-ups are things I cargo-culted
from the arch code as a fresh-faced noob yet to learn the finer details, so
ack for those parts. The forward-declarations, though, were a deliberate
effort to minimise header dependencies and compilation bloat for includers
who absolutely wouldn't care, and specifically to try to avoid setting
transitive include expectations since they always seem to end up breaking
someone's config somewhere down the line. Admittedly this little backwater
is hardly comparable to the likes of the sched.h business, but I'm still
somewhat on the fence about that change :/

As far as I can tell almost all users of linux/dma-iommu.h require
CONFIG_DMA_IOMMU to be enabled anyway..

Other than dma-iommu.c itself, none of them *require* it - only arch/arm64 selects it (the one from MTK_IOMMU is just bogus), and a lot of the drivers also build for at least one other architecture (and/or arm64 with !IOMMU_API).

Either way, I have no vehement objection to the change, I just don't see any positive value in it.

Robin.