Re: linux-next: build failure after merge of the tip tree

From: Mikko Perttunen
Date: Wed Apr 05 2017 - 03:25:09 EST


On 05.04.2017 06:36, Stephen Rothwell wrote:
Hi all,

After merging the tip tree, today's linux-next build (arm
multi_v7_defconfig) failed like this:

drivers/gpu/built-in.o:(__tracepoints+0x64): multiple definition of `__tracepoint_remove_device_from_group'
drivers/iommu/built-in.o:(__tracepoints+0x64): first defined here
drivers/gpu/built-in.o:(__tracepoints+0x3c): multiple definition of `__tracepoint_detach_device_from_domain'
drivers/iommu/built-in.o:(__tracepoints+0x3c): first defined here
drivers/gpu/built-in.o:(__tracepoints+0x0): multiple definition of `__tracepoint_io_page_fault'
drivers/iommu/built-in.o:(__tracepoints+0x0): first defined here
drivers/gpu/built-in.o:(__tracepoints+0x78): multiple definition of `__tracepoint_add_device_to_group'
drivers/iommu/built-in.o:(__tracepoints+0x78): first defined here
drivers/gpu/built-in.o:(__tracepoints+0x14): multiple definition of `__tracepoint_unmap'
drivers/iommu/built-in.o:(__tracepoints+0x14): first defined here
drivers/gpu/built-in.o:(__tracepoints+0x28): multiple definition of `__tracepoint_map'
drivers/iommu/built-in.o:(__tracepoints+0x28): first defined here
drivers/gpu/built-in.o:(__tracepoints+0x50): multiple definition of `__tracepoint_attach_device_to_domain'
drivers/iommu/built-in.o:(__tracepoints+0x50): first defined here

The tip tree has not changed since yesterday. However, reverting
the drm-tegra tree fixes the build problem. So there is some interaction
between the tip tree and today's drm-tegra tree.

So for now, I have reverted the merge of the drm-tegra tree.


Looks like this is caused by my patch to add IOMMU support to Host1x. I'm confused by how it doesn't appear on ARMv8, though. The cause is that host1x/dev.c defines CREATE_TRACE_POINTS and includes trace/events/host1x.h, which is fine. However, it then also includes, among other local files, dev.h. This used to be fine, but my patch adds an include of linux/iommu.h to dev.h, so we get this failure. I'll post a fix shortly.

Thanks,
Mikko.