Re: [PATCH v3 2/2] dma: add IOMMU static calls with clear default ops

From: Leon Romanovsky
Date: Mon Jul 22 2024 - 12:06:06 EST


On Mon, Jul 22, 2024 at 05:49:29PM +0200, Christoph Hellwig wrote:
> On Mon, Jul 22, 2024 at 06:44:58PM +0300, Leon Romanovsky wrote:
> > On Mon, Jul 22, 2024 at 05:10:37PM +0200, Christoph Hellwig wrote:
> > > On Sun, Jul 21, 2024 at 10:49:11AM +0300, Leon Romanovsky wrote:
> > > > -static void iommu_dma_free_noncontiguous(struct device *dev, size_t size,
> > > > - struct sg_table *sgt, enum dma_data_direction dir)
> > > > +void iommu_dma_free_noncontiguous(struct device *dev, size_t size,
> > > > + struct sg_table *sgt,
> > > > + enum dma_data_direction dir)
> > >
> > > Why are you reformatting these to a much less readable coding style?
> >
> > I'm relying on clang-formatter to format the code, see .clang-format
> > file in the kernel root directory.
>
> Well, that uses a really horrible default then. Aligning to the opening
> brace not only is hard to read, but requireѕ reformatting with every
> addition and removal of a static like here, or when trivially changing
> the function name.

Should I need to reformat the code to your preferred style?
I can do it, but it will be manual work :(.

>
> > > > +static inline void dma_common_free_pages(struct device *dev, size_t size,
> > > > + struct page *vaddr,
> > > > + dma_addr_t dma_handle,
> > > > + enum dma_data_direction dir)
> > > > +{
> > > > +}
> > >
> > > dma-iommu very much depends on these. So we'll need to also
> > > build ops_helpers.o if dma-iommu is enabled. So we'll probably need
> > > a separate Kconfig option for it that the various users select.
> > >
> >
> > I removed them from dma-iommu.c and there are no calls to them in that file.
> > ➜ kernel git:(m/dma-v2) git grep dma_common_alloc_pages drivers/iommu/ | wc -l
>
> Well, you replaced them with direct calls from mapping.c, which now
> needs them if dma-iommu is supported. So while strictly speaking
> dma-iommu doesn't need them, proper operation with dma-iommu still
> needs them.

No problem, I can add.

Thanks

>