From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mellanox.co.il (mail-il-dmz.mellanox.com [193.47.165.129]) by dpdk.org (Postfix) with ESMTP id 9A5B01B45A for ; Mon, 14 Jan 2019 06:21:05 +0100 (CET) Received: from Internal Mail-Server by MTLPINE1 (envelope-from yskoh@mellanox.com) with ESMTPS (AES256-SHA encrypted); 14 Jan 2019 07:20:59 +0200 Received: from scfae-sc-2.mti.labs.mlnx (scfae-sc-2.mti.labs.mlnx [10.101.0.96]) by labmailer.mlnx (8.13.8/8.13.8) with ESMTP id x0E5Kv81006882; Mon, 14 Jan 2019 07:20:58 +0200 From: Yongseok Koh To: konstantin.ananyev@intel.com, olivier.matz@6wind.com, thomas@monjalon.net Cc: dev@dpdk.org Date: Sun, 13 Jan 2019 21:20:54 -0800 Message-Id: <20190114052055.12896-1-yskoh@mellanox.com> X-Mailer: git-send-email 2.11.0 Subject: [dpdk-dev] [PATCH 1/2] mbuf: remove deprecated macro 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, 14 Jan 2019 05:21:05 -0000 RTE_MBUF_INDIRECT() is replaced with RTE_MBUF_CLONED() and removed. This macro was deprecated in release 18.05 when EXT_ATTACHED_MBUF was introduced. Signed-off-by: Yongseok Koh --- doc/guides/rel_notes/deprecation.rst | 7 ------- doc/guides/rel_notes/release_19_02.rst | 3 +++ drivers/net/mlx4/mlx4_rxtx.h | 2 +- drivers/net/mlx5/mlx5_rxtx.h | 2 +- lib/librte_mbuf/rte_mbuf.h | 8 +------- test/bpf/mbuf.h | 13 ++++++++++--- 6 files changed, 16 insertions(+), 19 deletions(-) diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst index bab82865fb..5f03443f88 100644 --- a/doc/guides/rel_notes/deprecation.rst +++ b/doc/guides/rel_notes/deprecation.rst @@ -44,13 +44,6 @@ Deprecation Notices structure would be made internal (or removed if all dependencies are cleared) in future releases. -* mbuf: the macro ``RTE_MBUF_INDIRECT()`` will be removed in v18.08 or later and - replaced with ``RTE_MBUF_CLONED()`` which is already added in v18.05. As - ``EXT_ATTACHED_MBUF`` is newly introduced in v18.05, ``RTE_MBUF_INDIRECT()`` - can no longer be mutually exclusive with ``RTE_MBUF_DIRECT()`` if the new - experimental API ``rte_pktmbuf_attach_extbuf()`` is used. Removal of the macro - is to fix this semantic inconsistency. - * ethdev: the legacy filter API, including ``rte_eth_dev_filter_supported()``, ``rte_eth_dev_filter_ctrl()`` as well as filter types MACVLAN, ETHERTYPE, FLEXIBLE, SYN, NTUPLE, TUNNEL, FDIR, diff --git a/doc/guides/rel_notes/release_19_02.rst b/doc/guides/rel_notes/release_19_02.rst index 5a46f1acdc..c4ad072412 100644 --- a/doc/guides/rel_notes/release_19_02.rst +++ b/doc/guides/rel_notes/release_19_02.rst @@ -210,6 +210,9 @@ API Changes function from now on. Failed to do so will cause ``rte_cryptodev_sym_session_create()`` function call return error. +* mbuf: ``RTE_MBUF_INDIRECT()``, which was deprecated in 18.05, was replaced + with ``RTE_MBUF_CLONED()`` and removed in 19.02. + ABI Changes ----------- diff --git a/drivers/net/mlx4/mlx4_rxtx.h b/drivers/net/mlx4/mlx4_rxtx.h index d7ec4e0c5f..a5ef5c2ae8 100644 --- a/drivers/net/mlx4/mlx4_rxtx.h +++ b/drivers/net/mlx4/mlx4_rxtx.h @@ -179,7 +179,7 @@ uint32_t mlx4_tx_update_ext_mp(struct txq *txq, uintptr_t addr, static inline struct rte_mempool * mlx4_mb2mp(struct rte_mbuf *buf) { - if (unlikely(RTE_MBUF_INDIRECT(buf))) + if (unlikely(RTE_MBUF_CLONED(buf))) return rte_mbuf_from_indirect(buf)->pool; return buf->pool; } diff --git a/drivers/net/mlx5/mlx5_rxtx.h b/drivers/net/mlx5/mlx5_rxtx.h index 75194a3fac..c2529f96bc 100644 --- a/drivers/net/mlx5/mlx5_rxtx.h +++ b/drivers/net/mlx5/mlx5_rxtx.h @@ -622,7 +622,7 @@ mlx5_tx_complete(struct mlx5_txq_data *txq) static inline struct rte_mempool * mlx5_mb2mp(struct rte_mbuf *buf) { - if (unlikely(RTE_MBUF_INDIRECT(buf))) + if (unlikely(RTE_MBUF_CLONED(buf))) return rte_mbuf_from_indirect(buf)->pool; return buf->pool; } diff --git a/lib/librte_mbuf/rte_mbuf.h b/lib/librte_mbuf/rte_mbuf.h index bc562dc8a9..6f1f7e3d8e 100644 --- a/lib/librte_mbuf/rte_mbuf.h +++ b/lib/librte_mbuf/rte_mbuf.h @@ -831,12 +831,6 @@ rte_mbuf_to_priv(struct rte_mbuf *m) #define RTE_MBUF_CLONED(mb) ((mb)->ol_flags & IND_ATTACHED_MBUF) /** - * Deprecated. - * Use RTE_MBUF_CLONED(). - */ -#define RTE_MBUF_INDIRECT(mb) RTE_MBUF_CLONED(mb) - -/** * Returns TRUE if given mbuf has an external buffer, or FALSE otherwise. * * External buffer is a user-provided anonymous buffer. @@ -1629,7 +1623,7 @@ __rte_pktmbuf_free_direct(struct rte_mbuf *m) { struct rte_mbuf *md; - RTE_ASSERT(RTE_MBUF_INDIRECT(m)); + RTE_ASSERT(RTE_MBUF_CLONED(m)); md = rte_mbuf_from_indirect(m); diff --git a/test/bpf/mbuf.h b/test/bpf/mbuf.h index f24f908d72..b623d8694f 100644 --- a/test/bpf/mbuf.h +++ b/test/bpf/mbuf.h @@ -520,14 +520,21 @@ struct rte_mbuf { /** - * Returns TRUE if given mbuf is indirect, or FALSE otherwise. + * Returns TRUE if given mbuf is cloned by mbuf indirection, or FALSE + * otherwise. + * + * If a mbuf has its data in another mbuf and references it by mbuf + * indirection, this mbuf can be defined as a cloned mbuf. */ -#define RTE_MBUF_INDIRECT(mb) ((mb)->ol_flags & IND_ATTACHED_MBUF) +#define RTE_MBUF_CLONED(mb) ((mb)->ol_flags & IND_ATTACHED_MBUF) /** * Returns TRUE if given mbuf is direct, or FALSE otherwise. + * + * If a mbuf embeds its own data after the rte_mbuf structure, this mbuf + * can be defined as a direct mbuf. */ -#define RTE_MBUF_DIRECT(mb) (!RTE_MBUF_INDIRECT(mb)) +#define RTE_MBUF_DIRECT(mb) (!RTE_MBUF_CLONED(mb)) /** * Private data in case of pktmbuf pool. -- 2.11.0