Re: [PATCH net-next 1/7] dma: compile-out DMA sync op calls when not used
From: Robin Murphy <robin.murphy@arm.com>
Date: 2024-01-31 17:14:10
Also in:
bpf, linux-iommu, lkml
On 31/01/2024 4:52 pm, Simon Horman wrote:
On Fri, Jan 26, 2024 at 02:54:50PM +0100, Alexander Lobakin wrote:quoted
Some platforms do have DMA, but DMA there is always direct and coherent. Currently, even on such platforms DMA sync operations are compiled and called. Add a new hidden Kconfig symbol, DMA_NEED_SYNC, and set it only when either sync operations are needed or there is DMA ops or swiotlb enabled. Set dma_need_sync() and dma_skip_sync() (stub for now) depending on this symbol state and don't call sync ops when dma_skip_sync() is true. The change allows for future optimizations of DMA sync calls depending on compile-time or runtime conditions. Signed-off-by: Alexander Lobakin <aleksander.lobakin@intel.com>Hi Alexander, This seems to cause x86_64 allmodconfig builds to fail:
Oh yeah, the sync_single_range definitions shouldn't need touching at all, since they're unconditional wrappers around regular sync_single invocations (which already may or may not do anything). Thanks, Robin.
../drivers/media/platform/ti/omap3isp/ispstat.c:82:35: error: ‘dma_sync_single_range_for_device’ undeclared (first use in this function); did you mean ‘dma_sync_sgtable_for_device’?
82 | dma_sync_single_range_for_device);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| dma_sync_sgtable_for_device
../drivers/media/platform/ti/omap3isp/ispstat.c:82:35: note: each undeclared identifier is reported only once for each function it appears in
../drivers/media/platform/ti/omap3isp/ispstat.c: In function ‘isp_stat_buf_sync_magic_for_cpu’:
../drivers/media/platform/ti/omap3isp/ispstat.c:94:35: error: ‘dma_sync_single_range_for_cpu’ undeclared (first use in this function); did you mean ‘dma_sync_sgtable_for_cpu’?
94 | dma_sync_single_range_for_cpu);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| dma_sync_sgtable_for_cpu