From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id D3CD9A0487 for ; Fri, 5 Jul 2019 19:26:33 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 3FAD21BE33; Fri, 5 Jul 2019 19:26:32 +0200 (CEST) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by dpdk.org (Postfix) with ESMTP id 051A61BE29 for ; Fri, 5 Jul 2019 19:26:29 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga107.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 05 Jul 2019 10:26:29 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.63,455,1557212400"; d="scan'208";a="172723219" Received: from silpixa00399498.ir.intel.com (HELO silpixa00399498.ger.corp.intel.com) ([10.237.223.125]) by FMSMGA003.fm.intel.com with ESMTP; 05 Jul 2019 10:26:27 -0700 From: Anatoly Burakov To: dev@dpdk.org Cc: thomas@monjalon.net, david.marchand@redhat.com, stephen@networkplumber.org Date: Fri, 5 Jul 2019 18:26:18 +0100 Message-Id: X-Mailer: git-send-email 2.17.1 In-Reply-To: References: Subject: [dpdk-dev] [PATCH v5 0/9] Make shared memory config non-public X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 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. v5: - Accidentally squashed last patch into another patch 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 (9): 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 eal: prevent different primary/secondary process versions 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 | 149 ++++++++++++++++++ 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 | 94 +++++++++++ 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 | 21 ++- lib/librte_eal/freebsd/eal/eal_memory.c | 1 + lib/librte_eal/linux/eal/Makefile | 3 +- lib/librte_eal/linux/eal/eal.c | 41 ++--- 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, 575 insertions(+), 339 deletions(-) create mode 100644 lib/librte_eal/common/eal_common_mcfg.c create mode 100644 lib/librte_eal/common/eal_memcfg.h -- 2.17.1