On 31/03/2021 23:53, Thomas Monjalon wrote: > 01/04/2021 00:45, Thomas Monjalon: >> The operations of DMA mapping and unmapping are controlled in some >> bus drivers, following rte_bus specification. >> If the device driver don't provide any specific mapping operation, >> the bus driver may have a fallback (VFIO case for PCI). >> >> The DMA mapping done by the device drivers are called >> from the bus drivers via function pointers in bus-specific structures: >> rte_vdev_driver and rte_pci_driver. >> >> The device driver DMA mapping is not specific to the bus, >> so it can be generalized to all device drivers, based on rte_device. >> That's why the function pointers dma_map and dma_unmap >> are moved to rte_driver, avoiding useless casts of device object. >> >> The function prototypes rte_dev_dma_map_t and rte_dev_dma_unmap_t >> are removed from rte_bus.h because the definition in rte_dev.h is enough, >> but they are still used in rte_bus for bus drivers, >> while being added in rte_driver for device drivers, >> and removed from rte_vdev_driver/rte_pci_driver. >> >> The impacted device drivers are mlx5 (PCI) and virtio_user (vdev). >> >> Signed-off-by: Thomas Monjalon <tho...@monjalon.net> >> --- >> Depends-on: series-16017 ("pci: add rte prefix") >> --- >> drivers/bus/pci/pci_common.c | 8 ++-- >> drivers/bus/pci/rte_bus_pci.h | 40 -------------------- >> drivers/bus/vdev/rte_bus_vdev.h | 40 -------------------- >> drivers/bus/vdev/vdev.c | 32 +++++----------- >> drivers/common/mlx5/mlx5_common_pci.c | 30 ++++++++------- >> drivers/net/mlx5/mlx5.c | 4 +- >> drivers/net/mlx5/mlx5_mr.c | 50 +++++++++++++------------ >> drivers/net/mlx5/mlx5_rxtx.h | 4 +- >> drivers/net/virtio/virtio_user_ethdev.c | 22 +++++------ >> lib/librte_eal/include/rte_bus.h | 42 --------------------- >> lib/librte_eal/include/rte_dev.h | 49 +++++++++++++++++++++++- >> 11 files changed, 117 insertions(+), 204 deletions(-) > > The ABI checker reports some issues on the driver interface. > It needs to be carefully analyzed, because driver interface > should not be part of the ABI compatibility contract. >
The depends-on series-16017 is marked as superseded. This patch doesn't apply cleanly, even when the depends-on series is applied before it. Ray K