mbox series

[v4,0/8] Make shared memory config non-public

Message ID cover.1562332112.git.anatoly.burakov@intel.com (mailing list archive)
Headers
Series Make shared memory config non-public |

Message

Anatoly Burakov July 5, 2019, 1:10 p.m. UTC
  This patchset removes the shared memory config from public
API, and replaces all usages of said config with new API
calls.

A lot of the patchset is a search-and-replace job and should
be pretty easy to review. The rest are pretty trivial EAL
changes.

v4:
- Rebase on top of latest master
- Squashed more commits
- Added some cleanups
  - Comment cleanup in mem config
  - Moved memseg list struct to rte_memory
- Fixed init in FreeBSD when storing data in config

v3:
- Rebase on top of latest master

v2:
- Collapsed all changes into fewer patches
- Addressed review comments
- Created a new file to store the code
- Changed namespace to "rte_mcfg_"
- Added some unification around config init
- Removed "packed" attribute from mem config
- Removed unnecessary inlining
- Added a check to explicitly forbid running multiprocess
  applications that differ in their DPDK versions

Anatoly Burakov (8):
  eal: add API to lock/unlock memory hotplug
  eal: add EAL tailq list lock/unlock API
  eal: add new API to lock/unlock mempool list
  eal: hide shared memory config
  eal: remove packed attribute from mcfg structure
  eal: uninline wait for mcfg complete function
  eal: unify and move mcfg complete function
  eal: unify internal config initialization

 app/test/test_fbarray.c                       |   1 +
 app/test/test_memzone.c                       |   1 +
 app/test/test_tailq.c                         |   1 +
 doc/guides/rel_notes/deprecation.rst          |   3 -
 doc/guides/rel_notes/release_19_08.rst        |   8 +-
 drivers/bus/fslmc/fslmc_vfio.c                |   8 +-
 drivers/bus/pci/linux/pci_vfio.c              |   1 +
 drivers/net/mlx4/mlx4_mr.c                    |  11 +-
 drivers/net/mlx5/mlx5_mr.c                    |  11 +-
 .../net/virtio/virtio_user/virtio_user_dev.c  |   7 +-
 lib/librte_acl/rte_acl.c                      |  20 +--
 lib/librte_distributor/rte_distributor.c      |   5 +-
 lib/librte_distributor/rte_distributor_v20.c  |   5 +-
 lib/librte_eal/common/eal_common_mcfg.c       | 134 +++++++++++++++++
 lib/librte_eal/common/eal_common_memory.c     |  44 +++---
 lib/librte_eal/common/eal_common_memzone.c    |   1 +
 lib/librte_eal/common/eal_common_tailqs.c     |   5 +-
 lib/librte_eal/common/eal_memcfg.h            |  88 ++++++++++++
 lib/librte_eal/common/include/rte_eal.h       |  10 --
 .../common/include/rte_eal_memconfig.h        | 135 ++++++++----------
 lib/librte_eal/common/include/rte_fbarray.h   |   1 -
 lib/librte_eal/common/include/rte_memory.h    |  24 +++-
 lib/librte_eal/common/malloc_heap.c           |  16 +--
 lib/librte_eal/common/malloc_mp.c             |   1 +
 lib/librte_eal/common/meson.build             |   1 +
 lib/librte_eal/common/rte_malloc.c            |  33 ++---
 lib/librte_eal/freebsd/eal/Makefile           |   3 +-
 lib/librte_eal/freebsd/eal/eal.c              |  17 +--
 lib/librte_eal/freebsd/eal/eal_memory.c       |   1 +
 lib/librte_eal/linux/eal/Makefile             |   3 +-
 lib/librte_eal/linux/eal/eal.c                |  37 +----
 lib/librte_eal/linux/eal/eal_memalloc.c       |   1 +
 lib/librte_eal/linux/eal/eal_memory.c         |   1 +
 lib/librte_eal/linux/eal/eal_vfio.c           |  17 +--
 lib/librte_eal/meson.build                    |   2 +-
 lib/librte_eal/rte_eal_version.map            |  12 ++
 lib/librte_efd/rte_efd.c                      |  15 +-
 lib/librte_eventdev/rte_event_ring.c          |  16 +--
 lib/librte_hash/rte_cuckoo_hash.c             |  17 +--
 lib/librte_hash/rte_fbk_hash.c                |  15 +-
 lib/librte_kni/rte_kni.c                      |  16 +--
 lib/librte_lpm/rte_lpm.c                      |  25 ++--
 lib/librte_lpm/rte_lpm6.c                     |  15 +-
 lib/librte_member/rte_member.c                |  17 +--
 lib/librte_mempool/rte_mempool.c              |  27 ++--
 lib/librte_rcu/rte_rcu_qsbr.h                 |   1 +
 lib/librte_reorder/rte_reorder.c              |  15 +-
 lib/librte_ring/rte_ring.c                    |  19 +--
 lib/librte_stack/rte_stack.c                  |  18 +--
 49 files changed, 546 insertions(+), 339 deletions(-)
 create mode 100644 lib/librte_eal/common/eal_common_mcfg.c
 create mode 100644 lib/librte_eal/common/eal_memcfg.h