On 11/19/25 17:33, Leon Romanovsky wrote: > On Wed, Nov 19, 2025 at 03:53:30PM +0100, Christian König wrote: > > <...> > >>>>>>> +struct sg_table *dma_buf_map(struct dma_buf_attachment *attach, >>>>>> >>>>>> That is clearly not a good name for this function. We already have >>>>>> overloaded the term *mapping* with something completely different. >>>>> >>>>> This function performs DMA mapping, so what name do you suggest instead >>>>> of dma_buf_map()? >>>> >>>> Something like dma_buf_phys_vec_to_sg_table(). I'm not good at naming >>>> either. >>> >>> Can I call it simply dma_buf_mapping() as I plan to put that function in >>> dma_buf_mapping.c >>> file per-your request. >> >> No, just completely drop the term "mapping" here. This is about phys_vector >> to sg_table conversion and nothing else. > > In order to progress, I renamed these functions to be > dma_buf_phys_vec_to_sgt() and dma_buf_free_sgt(), and put everything in > dma_buf_mapping.c file.
Yeah, the problem is I even thought more about it and came to the conclusion that this is still not sufficient for an rb or an Ack-by. A core concept of DMA-buf is that the exporter takes care of all the mappings and not the framework. Calling pci_p2pdma_bus_addr_map(), dma_map_phys() or dma_map_phys() from DMA-buf code is extremely questionable. That should really be inside VFIO and not DMA-buf code, so to move forward I strongly suggest to either move that into VFIO or the DMA API directly. Regards, Christian. > > Thanks
