Am 19.08.19 um 21:02 schrieb Robin Murphy:
> On 19/08/2019 19:37, Stefan Wahren wrote:
>> Hi,
>>
>> i tried to cross compile arm/multi_v7_defconfig with CONFIG_XEN=y with
>> Linux 5.3-rc5 and i'm getting this:
>>
>> arch/arm/mm/dma-mapping.c: In function ‘arch_setup_dma_ops’:
>> arch/arm/mm/dma-mapping.c:2347:5: error: ‘struct device’ has no member
>> named ‘dma_coherent’
>> dev->dma_coherent = coherent;
>> ^~
>> arch/arm/mm/dma-mapping.c: At top level:
>> arch/arm/mm/dma-mapping.c:2385:6: error: redefinition of
>> ‘arch_sync_dma_for_device’
>> void arch_sync_dma_for_device(struct device *dev, phys_addr_t paddr,
>> ^~~~~~~~~~~~~~~~~~~~~~~~
>> In file included from arch/arm/mm/dma-mapping.c:18:0:
>> ./include/linux/dma-noncoherent.h:67:20: note: previous definition of
>> ‘arch_sync_dma_for_device’ was here
>> static inline void arch_sync_dma_for_device(struct device *dev,
>> ^~~~~~~~~~~~~~~~~~~~~~~~
>> arch/arm/mm/dma-mapping.c:2392:6: error: redefinition of
>> ‘arch_sync_dma_for_cpu’
>> void arch_sync_dma_for_cpu(struct device *dev, phys_addr_t paddr,
>> ^~~~~~~~~~~~~~~~~~~~~
>> In file included from arch/arm/mm/dma-mapping.c:18:0:
>> ./include/linux/dma-noncoherent.h:77:20: note: previous definition of
>> ‘arch_sync_dma_for_cpu’ was here
>> static inline void arch_sync_dma_for_cpu(struct device *dev,
>> ^~~~~~~~~~~~~~~~~~~~~
>> In file included from ./arch/arm/include/asm/page.h:149:0,
>> from ./arch/arm/include/asm/thread_info.h:14,
>> from ./include/linux/thread_info.h:38,
>> from ./include/asm-generic/preempt.h:5,
>> from ./arch/arm/include/generated/asm/preempt.h:1,
>> from ./include/linux/preempt.h:78,
>> from ./include/linux/spinlock.h:51,
>> from ./include/linux/seqlock.h:36,
>> from ./include/linux/time.h:6,
>> from ./include/linux/stat.h:19,
>> from ./include/linux/module.h:10,
>> from arch/arm/mm/dma-mapping.c:9:
>>
>> There is no build issue with Linux 5.2, so this must be introduced with
>> 5.3-rc. I hope you have a clue without bisecting this.
>
> Oh, that must be ad3c7b18c5b, since the dma-noncoherent stuff is only
> selected by CONFIG_ARM_LPAE, but the references to it are guarded by
> CONFIG_SWIOTLB, and CONFIG_XEN brings in the latter without the former.
Yes, reverting ad3c7b18c5b ("arm: use swiotlb for bounce buffering on
LPAE configs") avoid this build issue.
>
> Robin.
>
> _______________________________________________
> linux-arm-kernel mailing list
> [email protected]
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
_______________________________________________
iommu mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/iommu