[dpdk-dev] [PATCH v4 0/4] Fixes on IOVA mode selection

David Marchand david.marchand at redhat.com
Mon Jul 22 14:56:49 CEST 2019


Following the issues reported by Jerin and the discussion that emerged
from it, here are fixes to restore and document the behavior of the EAL
and the pci bus driver.

I pondered all the arguments and tried to have the less changes
possible.
I can't find a need for a flag to just announce support of physical
addresses from the pmd point of view.
So it ended up with something really close to what Jerin had suggested.

But the problem is that this is still unfinished wrt the documentation.
I will be offline for 10 days and we need this to move forward, so
sending
anyway.

Changelog since v3:
- fixed typos in patch 2,
- updated patch 3 title,
- moved and reworded comments in the note section in patch 4,

Changelog since v2 (Jerin):
- Patch 2/4 - Remove personal appeals in log messages(Anatoly)
- Patch 4/4 - Added documentation (Anatoly)

Changelog since v1 (Jerin):
- Changed RTE_PCI_DRV_IOVA_AS_VA flag name as RTE_PCI_DRV_NEED_IOVA_AS_VA
  (patch 3/4)
- Changed IOVA mode as VA for default case(patch 4/4) with documentation
- Tested the patch series on octeontx2 platform

-- 
David Marchand

David Marchand (2):
  Revert "bus/pci: add Mellanox kernel driver type"
  eal: fix IOVA mode selection as VA for PCI drivers

Jerin Jacob (2):
  drivers: change IOVA as VA PCI flag name
  eal: select IOVA as VA mode for default case

 doc/guides/prog_guide/env_abstraction_layer.rst | 49 +++++++++++++++++++++++++
 drivers/bus/pci/linux/pci.c                     | 24 +++---------
 drivers/bus/pci/pci_common.c                    | 30 ++++++++++++---
 drivers/bus/pci/rte_bus_pci.h                   |  4 +-
 drivers/event/octeontx/timvf_probe.c            |  2 +-
 drivers/event/octeontx2/otx2_evdev.c            |  2 +-
 drivers/mempool/octeontx/octeontx_fpavf.c       |  2 +-
 drivers/mempool/octeontx2/otx2_mempool.c        |  2 +-
 drivers/net/atlantic/atl_ethdev.c               |  3 +-
 drivers/net/bnxt/bnxt_ethdev.c                  |  3 +-
 drivers/net/e1000/em_ethdev.c                   |  3 +-
 drivers/net/e1000/igb_ethdev.c                  |  5 +--
 drivers/net/enic/enic_ethdev.c                  |  3 +-
 drivers/net/fm10k/fm10k_ethdev.c                |  3 +-
 drivers/net/i40e/i40e_ethdev.c                  |  3 +-
 drivers/net/i40e/i40e_ethdev_vf.c               |  2 +-
 drivers/net/iavf/iavf_ethdev.c                  |  3 +-
 drivers/net/ice/ice_ethdev.c                    |  3 +-
 drivers/net/ixgbe/ixgbe_ethdev.c                |  5 +--
 drivers/net/mlx4/mlx4.c                         |  3 +-
 drivers/net/mlx5/mlx5.c                         |  2 +-
 drivers/net/nfp/nfp_net.c                       |  6 +--
 drivers/net/octeontx2/otx2_ethdev.c             |  7 +---
 drivers/net/qede/qede_ethdev.c                  |  6 +--
 drivers/raw/ioat/ioat_rawdev.c                  |  3 +-
 drivers/raw/octeontx2_dma/otx2_dpi_rawdev.c     |  2 +-
 lib/librte_eal/common/eal_common_bus.c          | 30 +++++++++++++--
 lib/librte_eal/common/include/rte_dev.h         |  1 -
 lib/librte_eal/linux/eal/eal.c                  |  6 +--
 29 files changed, 136 insertions(+), 81 deletions(-)

-- 
1.8.3.1



More information about the dev mailing list