doc: announce ethdev CRC strip flag deprecation
[dpdk.git] / doc / guides / rel_notes / deprecation.rst
index 1e2443c..103520c 100644 (file)
@@ -8,6 +8,16 @@ API and ABI deprecation notices are to be posted here.
 Deprecation Notices
 -------------------
 
+* eal: DPDK runtime configuration file (located at
+  ``/var/run/.<prefix>_config``) will be moved. The new path will be as follows:
+
+  - if DPDK is running as root, path will be set to
+    ``/var/run/dpdk/<prefix>/config``
+  - if DPDK is not running as root and $XDG_RUNTIME_DIR is set, path will be set
+    to ``$XDG_RUNTIME_DIR/dpdk/<prefix>/config``
+  - if DPDK is not running as root and $XDG_RUNTIME_DIR is not set, path will be
+    set to ``/tmp/dpdk/<prefix>/config``
+
 * eal: both declaring and identifying devices will be streamlined in v18.05.
   New functions will appear to query a specific port from buses, classes of
   device and device drivers. Device declaration will be made coherent with the
@@ -32,8 +42,8 @@ Deprecation Notices
   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:
+  The following function is deprecated since 18.05, and will be removed
+  in 18.08:
 
   - ``rte_eal_mbuf_default_mempool_ops``
 
@@ -42,6 +52,13 @@ Deprecation Notices
   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.
 
+* 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: 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.
@@ -51,6 +68,22 @@ Deprecation Notices
   - removal of ``txq_flags`` field from ``rte_eth_txconf`` struct.
   - removal of the offloads bit-field from ``rte_eth_rxmode`` struct.
 
+* ethdev: A new offloading flag ``DEV_RX_OFFLOAD_KEEP_CRC`` will be added in v18.08,
+  This will replace the usage of not setting ``DEV_RX_OFFLOAD_CRC_STRIP`` flag
+  and will be implemented in PMDs accordingly.
+  In v18.08 both ``DEV_RX_OFFLOAD_KEEP_CRC`` and ``DEV_RX_OFFLOAD_CRC_STRIP`` flags
+  will be available, usage will be:
+  ``CRC_STRIP``: Strip CRC from packet
+  ``KEEP_CRC``: Keep CRC in packet
+  Both ``CRC_STRIP`` & ``KEEP_CRC``: Invalid
+  No flag: Keep CRC in packet
+
+* ethdev: In v18.11 ``DEV_RX_OFFLOAD_CRC_STRIP`` offload flag will be removed, default
+  behavior without any flag will be changed to CRC strip.
+  To keep CRC ``DEV_RX_OFFLOAD_KEEP_CRC`` flag is required.
+  ``KEEP_CRC``: Keep CRC in packet
+  No flag: Strip CRC from packet
+
 * 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,
@@ -59,12 +92,6 @@ Deprecation Notices
   Target release for removal of the legacy API will be defined once most
   PMDs have switched to rte_flow.
 
-* 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
-  director APIs. There is no ABI/API break. This change will just remove a
-  global configuration setting and require explicit configuration.
-
 * pdump: As we changed to use generic IPC, some changes in APIs and structure
   are expected in subsequent release.