mbuf: remove deprecated macro
authorYongseok Koh <yskoh@mellanox.com>
Mon, 14 Jan 2019 05:20:54 +0000 (21:20 -0800)
committerThomas Monjalon <thomas@monjalon.net>
Mon, 14 Jan 2019 15:37:36 +0000 (16:37 +0100)
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 <yskoh@mellanox.com>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
doc/guides/rel_notes/deprecation.rst
doc/guides/rel_notes/release_19_02.rst
drivers/net/mlx4/mlx4_rxtx.h
drivers/net/mlx5/mlx5_rxtx.h
lib/librte_mbuf/rte_mbuf.h
test/bpf/mbuf.h

index bab8286..5f03443 100644 (file)
@@ -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,
index 5a46f1a..832ac8c 100644 (file)
@@ -192,6 +192,9 @@ API Changes
   ``rte_malloc_get_socket_stats()`` are no longer safe to call concurrently with
   ``rte_malloc_heap_create()`` or ``rte_malloc_heap_destroy()`` function calls.
 
+* mbuf: ``RTE_MBUF_INDIRECT()``, which was deprecated in 18.05, was replaced
+  with ``RTE_MBUF_CLONED()`` and removed in 19.02.
+
 * sched: As result of the new format of the mbuf sched field, the
   functions ``rte_sched_port_pkt_write()`` and
   ``rte_sched_port_pkt_read_tree_path()`` got an additional parameter of
index d7ec4e0..a5ef5c2 100644 (file)
@@ -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;
 }
index 75194a3..c2529f9 100644 (file)
@@ -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;
 }
index d53b682..10e28bb 100644 (file)
@@ -833,12 +833,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.
  *
@@ -1632,7 +1626,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);
 
index f24f908..b623d86 100644 (file)
@@ -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.