doc: announce ethdev API change for RSS configuration
[dpdk.git] / doc / guides / rel_notes / deprecation.rst
index d827438..149bf23 100644 (file)
@@ -41,6 +41,59 @@ Deprecation Notices
 * eal: new ``numa_node_count`` member will be added to ``rte_config`` structure
   in v18.05.
 
+* eal: due to internal data layout reorganization, there will be changes to
+  several structures and functions as a result of coming changes to support
+  memory hotplug in v18.05.
+  ``rte_eal_get_physmem_layout`` will be deprecated and removed in subsequent
+  releases.
+  ``rte_mem_config`` contents will change due to switch to memseg lists.
+  ``rte_memzone`` member ``memseg_id`` will no longer serve any useful purpose
+  and will be removed.
+
+* eal: a new set of mbuf mempool ops name APIs for user, platform and best
+  mempool names have been defined in ``rte_mbuf`` in v18.02. The uses of
+  ``rte_eal_mbuf_default_mempool_ops`` shall be replaced by
+  ``rte_mbuf_best_mempool_ops``.
+  The following function is now redundant and it is target to be deprecated
+  in 18.05:
+
+  - ``rte_eal_mbuf_default_mempool_ops``
+
+* mempool: several API and ABI changes are planned in v18.05.
+  The following functions, introduced for Xen, which is not supported
+  anymore since v17.11, are hard to use, not used anywhere else in DPDK.
+  Therefore they will be deprecated in v18.05 and removed in v18.08:
+
+  - ``rte_mempool_xmem_create``
+  - ``rte_mempool_xmem_size``
+  - ``rte_mempool_xmem_usage``
+
+  The following changes are planned:
+
+  - removal of ``get_capabilities`` mempool ops and related flags.
+  - substitute ``register_memory_area`` with ``populate`` ops.
+  - addition of new ops to customize required memory chunk calculation,
+    customize objects population and allocate contiguous
+    block of objects if underlying driver supports it.
+
+* mbuf: The control mbuf API will be removed in v18.05. The impacted
+  functions and macros are:
+
+  - ``rte_ctrlmbuf_init()``
+  - ``rte_ctrlmbuf_alloc()``
+  - ``rte_ctrlmbuf_free()``
+  - ``rte_ctrlmbuf_data()``
+  - ``rte_ctrlmbuf_len()``
+  - ``rte_is_ctrlmbuf()``
+  - ``CTRL_MBUF_FLAG``
+
+  The packet mbuf API should be used as a replacement.
+
+* mbuf: The opaque ``mbuf->hash.sched`` field will be updated to support generic
+  definition in line with the ethdev TM and MTR APIs. Currently, this field
+  is defined in librte_sched in a non-generic way. The new generic format
+  will contain: queue ID, traffic class, color. Field size will not change.
+
 * ethdev: a new Tx and Rx offload API was introduced on 17.11.
   In the new API, offloads are divided into per-port and per-queue offloads.
   Offloads are disabled by default and enabled per application request.
@@ -58,6 +111,10 @@ Deprecation Notices
   Target release for removal of the legacy API will be defined once most
   PMDs have switched to rte_flow.
 
+* ethdev: A new rss level field planned in 18.05.
+  The new API add rss_level field to ``rte_eth_rss_conf`` to enable a choice
+  of RSS hash calculation on outer or inner header of tunneled packet.
+
 * i40e: The default flexible payload configuration which extracts the first 16
   bytes of the payload for RSS will be deprecated starting from 18.02. If
   required the previous behavior can be configured using existing flow