[1/2] mbuf: remove deprecated macro

Message ID 20190114052055.12896-1-yskoh@mellanox.com (mailing list archive)
State Accepted, archived
Delegated to: Thomas Monjalon
Headers
Series [1/2] mbuf: remove deprecated macro |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Yongseok Koh Jan. 14, 2019, 5:20 a.m. UTC
  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>
---
 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(-)
  

Comments

Andrew Rybchenko Jan. 14, 2019, 7:40 a.m. UTC | #1
On 1/14/19 8:20 AM, Yongseok Koh wrote:
> 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>

<...>

> 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.
> +

May be order in New Features should be applicable in API changes as well.
  
Thomas Monjalon Jan. 14, 2019, 9:50 a.m. UTC | #2
14/01/2019 08:40, Andrew Rybchenko:
> On 1/14/19 8:20 AM, Yongseok Koh wrote:
> > 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>
> 
> <...>
> 
> > 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.
> > +
> 
> May be order in New Features should be applicable in API changes as well.

Yes
Usually I take care of it when applying, but would be better to be fixed
in the patch itself :)
  
Olivier Matz Jan. 14, 2019, 3:23 p.m. UTC | #3
On Mon, Jan 14, 2019 at 10:50:50AM +0100, Thomas Monjalon wrote:
> 14/01/2019 08:40, Andrew Rybchenko:
> > On 1/14/19 8:20 AM, Yongseok Koh wrote:
> > > 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>

> > 
> > <...>
> > 
> > > 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.
> > > +
> > 
> > May be order in New Features should be applicable in API changes as well.
> 
> Yes
> Usually I take care of it when applying, but would be better to be fixed
> in the patch itself :)
> 
>
  
Thomas Monjalon Jan. 14, 2019, 3:40 p.m. UTC | #4
14/01/2019 16:23, Olivier Matz:
> On Mon, Jan 14, 2019 at 10:50:50AM +0100, Thomas Monjalon wrote:
> > 14/01/2019 08:40, Andrew Rybchenko:
> > > On 1/14/19 8:20 AM, Yongseok Koh wrote:
> > > > 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>

Applied, thanks
  

Patch

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.