-* pci: The PCI resources map API (``pci_map_resource`` and
- ``pci_unmap_resource``) was not abstracting the Unix mmap flags (see the
- workaround for Windows support implemented in the commit
- 9d2b24593724 ("pci: keep API compatibility with mmap values")).
- This API will be removed from the public API in 20.11 and moved to the PCI
- bus driver along with the PCI resources lists and associated structures
- (``pci_map``, ``pci_msix_table``, ``mapped_pci_resource`` and
- ``mapped_pci_res_list``).
- With this removal, there won't be a need for the mentioned workaround which
- will be reverted.
-
-* pci: The ``rte_kernel_driver`` enum defined in rte_dev.h will be made private
- to the PCI subsystem as it is used only by the PCI bus driver and PCI
- drivers.
- The associated field ``kdrv`` in the ethdev ``rte_eth_dev_data`` structure
- will be removed as it gave no useful abstracted information to the
- applications and had no user (neither internal nor external).
-
-* mbuf: Some fields will be converted to dynamic API in DPDK 20.11
- in order to reserve more space for the dynamic fields, as explained in
- `this presentation <https://www.youtube.com/watch?v=Ttl6MlhmzWY>`_.
- The following static fields will be moved as dynamic:
-
- - ``timestamp``
- - ``userdata`` / ``udata64``
- - ``seqn``
-
- As a consequence, the layout of the ``struct rte_mbuf`` will be re-arranged,
- avoiding impact on vectorized implementation of the driver datapaths,
- while evaluating performance gains of a better use of the first cache line.
-
- The deprecated unioned fields ``buf_physaddr`` and ``refcnt_atomic``
- (as explained below) will be removed in DPDK 20.11.
-
-* mbuf: ``refcnt_atomic`` member in structures ``rte_mbuf`` and
- ``rte_mbuf_ext_shared_info`` is of type ``rte_atomic16_t``.
- Due to adoption of C11 atomic builtins, the field ``refcnt_atomic``
- will be replaced with ``refcnt`` of type ``uint16_t`` in DPDK 20.11.
-
-* ethdev: Split the ``struct eth_dev_ops`` struct to hide it as much as possible
- will be done in 20.11.
- Currently the ``struct eth_dev_ops`` struct is accessible by the application
- because some inline functions, like ``rte_eth_tx_descriptor_status()``,
- access the struct directly.
- The struct will be separate in two, the ops used by inline functions will be
- moved next to Rx/Tx burst functions, rest of the ``struct eth_dev_ops`` struct
- will be moved to header file for drivers to hide it from applications.
-
-* 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,
- HASH and L2_TUNNEL, is superseded by the generic flow API (rte_flow) in
- PMDs that implement the latter.
- The legacy API will be removed in DPDK 20.11.
-
-* ethdev: Update API functions returning ``void`` to return ``int`` with
- negative errno values to indicate various error conditions (e.g.
- invalid port ID, unsupported operation, failed operation):
-
- - ``rte_eth_dev_stop``
- - ``rte_eth_dev_close``
-
-* ethdev: The temporary flag RTE_ETH_DEV_CLOSE_REMOVE will be removed in 20.11.
- As a consequence, the new behaviour introduced in 18.11 will be effective
- for all drivers: generic port resources are freed on close operation.
- Private resources are expected to be released in the ``dev_close`` callback.
- More details in http://inbox.dpdk.org/dev/5248162.j6AOsuQRmx@thomas/