From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com [66.111.4.28]) by dpdk.org (Postfix) with ESMTP id 0D5841B238 for ; Mon, 6 Nov 2017 02:42:10 +0100 (CET) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id 5D761205FC; Sun, 5 Nov 2017 20:42:10 -0500 (EST) Received: from frontend2 ([10.202.2.161]) by compute1.internal (MEProxy); Sun, 05 Nov 2017 20:42:10 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h= cc:date:from:in-reply-to:message-id:references:subject:to :x-me-sender:x-me-sender:x-sasl-enc; s=mesmtp; bh=hS67Qg2a1R60DB LZj2YL58UYCOfWZDJ1oQgznbQOHDU=; b=MbaZ4O4RkvIuSbsOi5ldjUeZfQIJEH 0KTOoDhFmtSt1aL/c39za4jSoheh+FPT4xaaJUDILX6RR6vnHZqq25bB9094ewLe qXDrWuMLLe62068yFKnjz4ynSkev4DTLw/wiEVNH7IIPgSKJnG8Vri+w8G5Z8X/d nfWcK8us0Eig8= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:date:from:in-reply-to:message-id :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; bh=hS67Qg2a1R60DBLZj2YL58UYCOfWZDJ1oQgznbQOHDU=; b=NOYOWrAf EEnInSQM9wIgg+3HRVT/QR1bTVX3XUzN3Dp50plAoDdPMR523TnlG7qBfROLrM+F gNTRbw//fFl40lanMN+nQUkfJkC0SHu5zVgdEhK0PgLyFE5eBSY40t0ZyJp3eeFJ ZMHgmsW9jfio5guNdL4GqHw9btsK1tML689od5JA4sbEVqz6zeWwo0BdXtN/mihj bo/WOqC2iAsERrjvYisOrGJDoYX2tm3J7+ffgHjwztiDSwm8t5Vt14zt9HxPZh42 1hy/pn+KA8WaQbwCOkFesckvRjH7LzmpBT2NF6HKvWHNLfRhGa2wfm55066XbAGe 4gELCeiO7o+PLA== X-ME-Sender: Received: from xps.monjalon.net (184.203.134.77.rev.sfr.net [77.134.203.184]) by mail.messagingengine.com (Postfix) with ESMTPA id 8C0532494B; Sun, 5 Nov 2017 20:42:09 -0500 (EST) From: Thomas Monjalon To: Santosh Shukla Cc: olivier.matz@6wind.com, sergio.gonzalez.monroy@intel.com, anatoly.burakov@intel.com, dev@dpdk.org Date: Mon, 6 Nov 2017 02:41:26 +0100 Message-Id: <20171106014141.13266-1-thomas@monjalon.net> X-Mailer: git-send-email 2.14.2 In-Reply-To: <20170814151537.29454-1-santosh.shukla@caviumnetworks.com> References: <20170814151537.29454-1-santosh.shukla@caviumnetworks.com> Subject: [dpdk-dev] [PATCH v4 00/15] make DPDK IOVA aware 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: , X-List-Received-Date: Mon, 06 Nov 2017 01:42:11 -0000 This v4 is a big rework to complete the patches sent by Santosh. The core components for memory handling (memseg, malloc, memzone, mempool, mbuf) are almost fully updated for IOVA awareness. It will ease maintenance and upcoming reworks; that's why we should push it in 17.11 LTS. The most important changes in this revision v4 are: - No API break: everything is aliased to keep old names during next releases. It will ease apps migration, waiting for major ABI break. - Rename type from iova_addr_t to rte_iova_t. - Convert memzone field. - Convert mempool fields. - Convert mbuf address helpers. - Reword doxygen comments and variable names in functions. In PMDs, only the address type is renamed. All PMDs will require some attention to transition to IOVA scheme. KNI and NXP bus drivers are not reworded. Santosh Shukla (5): mem: rename segment address from physical to IOVA malloc: use pointer diff macro in IOVA mapping mbuf: rename physical address to IOVA cryptodev: rename physical address type to IOVA drivers/net: rename physical address type to IOVA Thomas Monjalon (10): mem: hide physical address error in VA mode mem: introduce IOVA type mem: rename address mapping function to IOVA malloc: rename address mapping function to IOVA memzone: rename address from physical to IOVA mempool: rename addresses from physical to IOVA mempool: rename address mapping function to IOVA mempool: rename populate functions to IOVA mbuf: rename data address helpers to IOVA doc: add IOVA aware API changes in release notes app/test-crypto-perf/cperf_ops.c | 6 +- app/test-crypto-perf/cperf_test_common.c | 6 +- app/test-crypto-perf/cperf_test_vector_parsing.c | 4 +- app/test-crypto-perf/cperf_test_vectors.c | 6 +- app/test-crypto-perf/cperf_test_vectors.h | 4 +- doc/guides/prog_guide/cryptodev_lib.rst | 6 +- doc/guides/prog_guide/img/mbuf1.svg | 2 +- doc/guides/rel_notes/deprecation.rst | 7 -- doc/guides/rel_notes/release_17_11.rst | 17 ++++ drivers/bus/dpaa/base/qbman/qman.c | 2 +- drivers/bus/dpaa/base/qbman/qman.h | 2 +- drivers/bus/fslmc/portal/dpaa2_hw_pvt.h | 2 +- drivers/crypto/dpaa_sec/dpaa_sec.c | 28 +++--- drivers/crypto/mrvl/rte_mrvl_pmd.c | 4 +- drivers/crypto/qat/qat_adf/qat_algs.h | 6 +- drivers/crypto/qat/qat_crypto.c | 22 ++--- drivers/crypto/qat/qat_crypto.h | 2 +- drivers/crypto/qat/qat_qp.c | 8 +- drivers/mempool/dpaa/dpaa_mempool.c | 4 +- drivers/mempool/dpaa2/dpaa2_hw_mempool.c | 4 +- drivers/mempool/dpaa2/dpaa2_hw_mempool.h | 2 +- drivers/mempool/octeontx/octeontx_fpavf.c | 4 +- drivers/mempool/octeontx/rte_mempool_octeontx.c | 2 +- drivers/net/ark/ark_ddm.c | 2 +- drivers/net/ark/ark_ddm.h | 4 +- drivers/net/ark/ark_ethdev_rx.c | 24 ++--- drivers/net/ark/ark_ethdev_tx.c | 8 +- drivers/net/ark/ark_mpu.c | 2 +- drivers/net/ark/ark_mpu.h | 4 +- drivers/net/ark/ark_udm.c | 2 +- drivers/net/ark/ark_udm.h | 4 +- drivers/net/avp/avp_ethdev.c | 2 +- drivers/net/avp/rte_avp_common.h | 20 ++-- drivers/net/bnx2x/bnx2x.c | 44 ++++----- drivers/net/bnx2x/bnx2x.h | 22 ++--- drivers/net/bnx2x/bnx2x_rxtx.c | 14 +-- drivers/net/bnx2x/bnx2x_stats.c | 2 +- drivers/net/bnx2x/bnx2x_vfpf.c | 2 +- drivers/net/bnx2x/ecore_sp.h | 2 +- drivers/net/bnxt/bnxt.h | 10 +- drivers/net/bnxt/bnxt_cpr.h | 4 +- drivers/net/bnxt/bnxt_ethdev.c | 14 +-- drivers/net/bnxt/bnxt_hwrm.c | 26 +++--- drivers/net/bnxt/bnxt_ring.c | 10 +- drivers/net/bnxt/bnxt_ring.h | 4 +- drivers/net/bnxt/bnxt_rxr.h | 4 +- drivers/net/bnxt/bnxt_txr.h | 2 +- drivers/net/bnxt/bnxt_vnic.c | 8 +- drivers/net/bnxt/bnxt_vnic.h | 6 +- drivers/net/cxgbe/sge.c | 6 +- drivers/net/dpaa/dpaa_rxtx.c | 6 +- drivers/net/e1000/em_rxtx.c | 12 +-- drivers/net/e1000/igb_rxtx.c | 12 +-- drivers/net/ena/base/ena_plat_dpdk.h | 4 +- drivers/net/ena/ena_ethdev.c | 6 +- drivers/net/enic/enic_main.c | 8 +- drivers/net/enic/enic_rxtx.c | 6 +- drivers/net/fm10k/fm10k.h | 4 +- drivers/net/fm10k/fm10k_ethdev.c | 4 +- drivers/net/fm10k/fm10k_rxtx_vec.c | 4 +- drivers/net/i40e/i40e_ethdev.c | 2 +- drivers/net/i40e/i40e_fdir.c | 2 +- drivers/net/i40e/i40e_rxtx.c | 22 ++--- drivers/net/i40e/i40e_rxtx_vec_altivec.c | 4 +- drivers/net/i40e/i40e_rxtx_vec_neon.c | 6 +- drivers/net/i40e/i40e_rxtx_vec_sse.c | 6 +- drivers/net/ixgbe/ixgbe_rxtx.c | 18 ++-- drivers/net/ixgbe/ixgbe_rxtx_vec_neon.c | 6 +- drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c | 6 +- drivers/net/liquidio/lio_rxtx.c | 20 ++-- drivers/net/liquidio/lio_rxtx.h | 6 +- drivers/net/mrvl/mrvl_ethdev.c | 8 +- drivers/net/nfp/nfp_net.c | 8 +- drivers/net/octeontx/base/octeontx_pkovf.c | 4 +- drivers/net/octeontx/octeontx_rxtx.c | 2 +- drivers/net/qede/base/bcm_osal.c | 10 +- drivers/net/qede/base/bcm_osal.h | 2 +- drivers/net/qede/qede_fdir.c | 2 +- drivers/net/qede/qede_rxtx.c | 16 ++-- drivers/net/sfc/efsys.h | 2 +- drivers/net/sfc/sfc.c | 4 +- drivers/net/sfc/sfc_ef10_rx.c | 4 +- drivers/net/sfc/sfc_ef10_tx.c | 6 +- drivers/net/sfc/sfc_rx.c | 2 +- drivers/net/sfc/sfc_tso.c | 4 +- drivers/net/sfc/sfc_tx.c | 2 +- drivers/net/thunderx/base/nicvf_hw.c | 2 +- drivers/net/thunderx/base/nicvf_hw.h | 2 +- drivers/net/thunderx/base/nicvf_hw_defs.h | 6 +- drivers/net/thunderx/nicvf_ethdev.c | 10 +- drivers/net/thunderx/nicvf_ethdev.h | 6 +- drivers/net/thunderx/nicvf_rxtx.h | 4 +- drivers/net/thunderx/nicvf_struct.h | 6 +- drivers/net/virtio/virtio_ethdev.c | 10 +- drivers/net/virtio/virtio_rxtx.h | 4 +- drivers/net/virtio/virtqueue.h | 6 +- drivers/net/vmxnet3/vmxnet3_ethdev.c | 10 +- drivers/net/vmxnet3/vmxnet3_rxtx.c | 8 +- examples/ipsec-secgw/esp.c | 12 +-- examples/l2fwd-crypto/main.c | 8 +- lib/librte_cryptodev/rte_crypto.h | 2 +- lib/librte_cryptodev/rte_crypto_sym.h | 6 +- lib/librte_cryptodev/rte_cryptodev.c | 2 +- lib/librte_cryptodev/rte_cryptodev.h | 2 +- lib/librte_eal/bsdapp/eal/eal_memory.c | 15 ++- lib/librte_eal/common/eal_common_memory.c | 4 +- lib/librte_eal/common/eal_common_memzone.c | 6 +- lib/librte_eal/common/include/rte_malloc.h | 17 +++- lib/librte_eal/common/include/rte_memory.h | 28 +++++- lib/librte_eal/common/include/rte_memzone.h | 6 +- lib/librte_eal/common/rte_malloc.c | 22 ++--- lib/librte_eal/linuxapp/eal/eal_memory.c | 40 ++++---- lib/librte_eal/linuxapp/eal/eal_vfio.c | 6 +- lib/librte_eal/rte_eal_version.map | 3 +- lib/librte_kni/rte_kni.c | 2 +- lib/librte_mbuf/rte_mbuf.c | 6 +- lib/librte_mbuf/rte_mbuf.h | 53 ++++++++--- lib/librte_mempool/rte_mempool.c | 111 +++++++++++++---------- lib/librte_mempool/rte_mempool.h | 86 +++++++++++------- lib/librte_mempool/rte_mempool_ops.c | 4 +- lib/librte_mempool/rte_mempool_version.map | 2 + lib/librte_vhost/vhost.h | 2 +- lib/librte_vhost/vhost_user.c | 4 +- lib/librte_vhost/virtio_net.c | 2 +- test/test/test_cryptodev.c | 42 ++++----- test/test/test_cryptodev.h | 4 +- test/test/test_mbuf.c | 2 +- test/test/test_mempool.c | 4 +- test/test/test_memzone.c | 80 ++++++++-------- 129 files changed, 708 insertions(+), 591 deletions(-) -- 2.14.2