"Network Interface Controller Drivers" document for more details on this new
driver.
+* **Updated mlx5 driver.**
+
+ Updated the mlx5 driver including the following changes:
+
+ * Enabled PMD to run on top of upstream linux kernel and rdma-core libs.
+ By that removed the dependency on specific Mellanox OFED libraries.
+ * Improved PMD latency performance.
+ * Improved PMD memory footprint.
+ * Supported vectorized Rx/Tx burst for ARMv8.
+ * Supported secondary process.
+ * Supported flow counters.
+ * Supported Rx hardware timestamp offload.
+ * Supported device removal event.
+
* **Added SoftNIC PMD.**
Added new SoftNIC PMD. This virtual device offers applications a software
* Support for Flow API
* Support for Tx and Rx descriptor status functions
+* **Add bus agnostic functions to cryptodev for PMD initialisation**
+
+ Adds new PMD assist functions ``rte_cryptodev_pmd_parse_input_args()``,
+ ``rte_cryptodev_pmd_create()`` and ``rte_cryptodev_pmd_destroy()`` which
+ are bus independent for driver to manage creation and destruction of new
+ device instances.
+
* **Updated QAT crypto PMD.**
Performance enhancements:
checksums, and doesn't update checksums for output packets.
Additionally, the GSO library doesn't process IP fragmented packets.
+* **Added the Flow Classification Library.**
+
+ Added the Flow Classification library, it provides an API for DPDK
+ applications to classify an input packet by matching it against a set of flow
+ rules. It uses the librte_table API to manage the flow rules.
+
Resolved Issues
---------------
The function ``rte_cryptodev_allocate_driver()`` has been modified.
An extra parameter ``struct cryptodev_driver *crypto_drv`` has been added.
+* **Removed virtual device bus specific functions from librte_cryptodev.**
+
+ The functions ``rte_cryptodev_vdev_parse_init_params()`` and
+ ``rte_cryptodev_vdev_pmd_init()`` have been removed from librte_cryptodev
+ and have been replaced by non bus specific functions
+ ``rte_cryptodev_pmd_parse_input_args()`` and ``rte_cryptodev_pmd_create()``.
+
+* **Removed PCI device bus specific functions from librte_cryptodev.**
+
+ The functions ``rte_cryptodev_pci_generic_probe()`` and
+ ``rte_cryptodev_pci_generic_remove()`` have been removed from librte_cryptodev
+ and have been replaced by non bus specific functions
+ ``rte_cryptodev_pmd_create()`` and ``rte_cryptodev_pmd_destroy()``.
+
+* **Removed deprecated functions to manage log level or type.**
+
+ The functions ``rte_set_log_level()``, ``rte_get_log_level()``,
+ ``rte_set_log_type()`` and ``rte_get_log_type()`` have been removed.
+ They are respectively replaced by ``rte_log_set_global_level()``,
+ ``rte_log_get_global_level()``, ``rte_log_set_level()`` and
+ ``rte_log_get_level()``.
+
ABI Changes
-----------
.. code-block:: diff
librte_acl.so.2
- librte_bitratestats.so.2
+ + librte_bitratestats.so.2
librte_cfgfile.so.2
librte_cmdline.so.2
- librte_cryptodev.so.3
+ + librte_cryptodev.so.4
librte_distributor.so.1
- librte_eal.so.5
- librte_ethdev.so.8
- librte_eventdev.so.3
+ + librte_eal.so.6
+ + librte_ethdev.so.8
+ + librte_eventdev.so.3
+ + librte_flow_classify.so.1
librte_gro.so.1
- librte_gso.so.1
+ + librte_gso.so.1
librte_hash.so.2
librte_ip_frag.so.1
librte_jobstats.so.1
librte_meter.so.1
librte_metrics.so.1
librte_net.so.1
- librte_pdump.so.2
+ + librte_pdump.so.2
librte_pipeline.so.3
- librte_pmd_bnxt.so.2
- librte_pmd_bond.so.2
- librte_pmd_i40e.so.2
- librte_pmd_ixgbe.so.2
+ + librte_pmd_bnxt.so.2
+ + librte_pmd_bond.so.2
+ + librte_pmd_i40e.so.2
+ + librte_pmd_ixgbe.so.2
librte_pmd_ring.so.2
+ librte_pmd_softnic.so.1
- librte_pmd_vhost.so.2
+ + librte_pmd_vhost.so.2
librte_port.so.3
librte_power.so.1
librte_reorder.so.1
librte_ring.so.1
librte_sched.so.1
- librte_table.so.2
+ + librte_security.so.1
+ + librte_table.so.3
librte_timer.so.1
librte_vhost.so.3