Thread (24 messages) 24 messages, 5 authors, 2024-01-31

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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help