From patchwork Wed Apr 5 10:00:53 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Olivier Matz X-Patchwork-Id: 23235 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id 49B492E8A; Wed, 5 Apr 2017 12:05:05 +0200 (CEST) Received: from proxy.6wind.com (host.76.145.23.62.rev.coltfrance.com [62.23.145.76]) by dpdk.org (Postfix) with ESMTP id DE7B89E3 for ; Wed, 5 Apr 2017 12:05:03 +0200 (CEST) Received: from glumotte.dev.6wind.com (unknown [10.16.0.195]) by proxy.6wind.com (Postfix) with ESMTP id 7623E23D40 for ; Wed, 5 Apr 2017 12:04:58 +0200 (CEST) From: Olivier Matz To: dev@dpdk.org Date: Wed, 5 Apr 2017 12:00:53 +0200 Message-Id: <20170405100053.15486-1-olivier.matz@6wind.com> X-Mailer: git-send-email 2.11.0 Subject: [dpdk-dev] [PATCH] mbuf: bump library version 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" The reorganization of the mbuf structure induces an ABI breakage. Bump the library version, and update the documentation accordingly. Signed-off-by: Olivier Matz --- doc/guides/rel_notes/deprecation.rst | 7 ------- doc/guides/rel_notes/release_17_05.rst | 21 ++++++++++++++++++++- lib/librte_mbuf/Makefile | 2 +- 3 files changed, 21 insertions(+), 9 deletions(-) diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst index 9708b3941..fcc2e865d 100644 --- a/doc/guides/rel_notes/deprecation.rst +++ b/doc/guides/rel_notes/deprecation.rst @@ -75,13 +75,6 @@ Deprecation Notices ``rte_pmd_ixgbe_bypass_wd_timeout_show``, ``rte_pmd_ixgbe_bypass_ver_show``, ``rte_pmd_ixgbe_bypass_wd_reset``. -* ABI changes are planned for 17.05 in the ``rte_mbuf`` structure: some fields - may be reordered to facilitate the writing of ``data_off``, ``refcnt``, and - ``nb_segs`` in one operation, because some platforms have an overhead if the - store address is not naturally aligned. Other mbuf fields, such as the - ``port`` field, may be moved or removed as part of this mbuf work. A - ``timestamp`` will also be added. - * The mbuf flags PKT_RX_VLAN_PKT and PKT_RX_QINQ_PKT are deprecated and are respectively replaced by PKT_RX_VLAN_STRIPPED and PKT_RX_QINQ_STRIPPED, that are better described. The old flags and diff --git a/doc/guides/rel_notes/release_17_05.rst b/doc/guides/rel_notes/release_17_05.rst index d5d520573..9b078e550 100644 --- a/doc/guides/rel_notes/release_17_05.rst +++ b/doc/guides/rel_notes/release_17_05.rst @@ -41,6 +41,20 @@ New Features Also, make sure to start the actual text at the margin. ========================================================= +* **Reorganized the mbuf structure.** + + * Align fields to facilitate the writing of ``data_off``, ``refcnt``, and + ``nb_segs`` in one operation. + * Use 2 bytes for port and number of segments. + * Move the sequence number in the second cache line. + * Add a timestamp field. + * Set default value for ``refcnt``, ``next`` and ``nb_segs`` at mbuf free. + +* **Added mbuf raw free API** + + Moved ``rte_mbuf_raw_free()`` and ``rte_pktmbuf_prefree_seg()`` functions to + the public API. + * **Added free Tx mbuf on demand API.** Added a new function ``rte_eth_tx_done_cleanup()`` which allows an application @@ -366,6 +380,11 @@ ABI Changes Also, make sure to start the actual text at the margin. ========================================================= +* **Reorganized the mbuf structure.** + + The order and size of the fields in the ``mbuf`` structure changed, + as described in the `New Features`_ section. + Removed Items ------------- @@ -413,7 +432,7 @@ The libraries prepended with a plus sign were incremented in this version. librte_kni.so.2 librte_kvargs.so.1 librte_lpm.so.2 - librte_mbuf.so.2 + + librte_mbuf.so.3 librte_mempool.so.2 librte_meter.so.1 librte_net.so.1 diff --git a/lib/librte_mbuf/Makefile b/lib/librte_mbuf/Makefile index 956902ab4..548273054 100644 --- a/lib/librte_mbuf/Makefile +++ b/lib/librte_mbuf/Makefile @@ -38,7 +38,7 @@ CFLAGS += $(WERROR_FLAGS) -I$(SRCDIR) -O3 EXPORT_MAP := rte_mbuf_version.map -LIBABIVER := 2 +LIBABIVER := 3 # all source are stored in SRCS-y SRCS-$(CONFIG_RTE_LIBRTE_MBUF) := rte_mbuf.c rte_mbuf_ptype.c