X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=doc%2Fguides%2Frel_notes%2Frelease_18_05.rst;h=c4e6bdb5cbf888937b45ac66ebc6d43a8932430a;hb=feb888c61e5bf2f5e26bed98f1109ed5655b4cf4;hp=760c45c6b057c82c12e7b42fef53ce10031260fe;hpb=fd943c764a63e5ed4ec4df6ca78e5d7fa8835d4d;p=dpdk.git diff --git a/doc/guides/rel_notes/release_18_05.rst b/doc/guides/rel_notes/release_18_05.rst index 760c45c6b0..c4e6bdb5cb 100644 --- a/doc/guides/rel_notes/release_18_05.rst +++ b/doc/guides/rel_notes/release_18_05.rst @@ -41,6 +41,15 @@ New Features Also, make sure to start the actual text at the margin. ========================================================= +* **Added bucket mempool driver.** + + Added bucket mempool driver which provides a way to allocate contiguous + block of objects. + Number of objects in the block depends on how many objects fit in + RTE_DRIVER_MEMPOOL_BUCKET_SIZE_KB memory chunk which is build time option. + The number may be obtained using rte_mempool_ops_get_info() API. + Contiguous blocks may be allocated using rte_mempool_get_contig_blocks() API. + * **Added PMD-recommended Tx and Rx parameters** Applications can now query drivers for device-tuned values of @@ -62,6 +71,8 @@ New Features * Added support for Solarflare XtremeScale X2xxx family adapters. * Added support for NVGRE, VXLAN and GENEVE filters in flow API. * Added support for DROP action in flow API. + * Added support for equal stride super-buffer Rx mode (X2xxx only). + * Added support for MARK and FLAG actions in flow API (X2xxx only). * **Added Ethernet poll mode driver for AMD XGBE devices.** @@ -72,6 +83,10 @@ New Features * **Updated szedata2 PMD.** Added support for new NFB-200G2QL card. + New API was introduced in the libsze2 library which the szedata2 PMD depends + on thus the new version of the library was needed. + New versions of the packages are available and the minimum required version + is 4.4.1. * **Added support for Broadcom NetXtreme-S (BCM58800) family of controllers (aka Stingray)** @@ -83,6 +98,15 @@ New Features The ARM CPU subsystem features eight ARMv8 Cortex-A72 CPUs at 3.0 GHz, arranged in a multi-cluster configuration. +* **Added IFCVF vDPA driver.** + + Added IFCVF vDPA driver to support Intel FPGA 100G VF device. IFCVF works + as a HW vhost data path accelerator, it supports live migration and is + compatible with virtio 0.95 and 1.0. This driver registers ifcvf vDPA driver + to vhost lib, when virtio connected, with the help of the registered vDPA + driver the assigned VF gets configured to Rx/Tx directly to VM's virtio + vrings. + * **Added support for virtio-user server mode.** In a container environment if the vhost-user backend restarts, there's no way for it to reconnect to virtio-user. To address this, support for server mode @@ -122,6 +146,32 @@ New Features timer expiry events. This new type of event is scheduled by an event device along with existing types of events. +* **Added OcteonTx TIM Driver (Event timer adapter).** + + The OcteonTx Timer block enables software to schedule events for a future + time, it is exposed to an application via Event timer adapter library. + + See the :doc:`../eventdevs/octeontx` guide for more details + +* **Added DPAA2 QDMA Driver (in rawdev).** + + The DPAA2 QDMA is an implementation of the rawdev API, that provide means + to initiate a DMA transaction from CPU. The initiated DMA is performed + without CPU being involved in the actual DMA transaction. + + See the :doc:`../rawdevs/dpaa2_qdma` guide for more details. + +* **Added DPAA2 Command Interface Driver (in rawdev).** + + The DPAA2 CMDIF is an implementation of the rawdev API, that provides + communication between the GPP and NXP's QorIQ based AIOP Block (Firmware). + Advanced IO Processor i.e. AIOP is clusters of programmable RISC engines + optimised for flexible networking and I/O operations. The communication + between GPP and AIOP is achieved via using DPCI devices exposed by MC for + GPP <--> AIOP interaction. + + See the :doc:`../rawdevs/dpaa2_cmdif` guide for more details. + * **Added device event monitor framework.** Added a general device event monitor framework at EAL, for device dynamic management. @@ -134,6 +184,12 @@ New Features Linux uevent is supported as backend of this device event notification framework. +* **Added support for procinfo and pdump on eth vdev.** + + For ethernet virtual devices (like tap, pcap, etc), with this feature, we can get + stats/xstats on shared memory from secondary process, and also pdump packets on + those virtual devices. + API Changes ----------- @@ -148,6 +204,19 @@ API Changes Also, make sure to start the actual text at the margin. ========================================================= +* service cores: no longer marked as experimental. + + The service cores functions are no longer marked as experimental, and have + become part of the normal DPDK API and ABI. Any future ABI changes will be + announced at least one release before the ABI change is made. There are no + ABI breaking changes planned. + +* eal: ``rte_lcore_has_role()`` return value changed. + + This function now returns true or false, respectively, + rather than 0 or <0 for success or failure. + It makes use of the function more intuitive. + * mempool: capability flags and related functions have been removed. Flags ``MEMPOOL_F_CAPA_PHYS_CONTIG`` and @@ -221,6 +290,45 @@ API Changes fall-back value. Previously, setting ``nb_tx_desc`` to zero would have resulted in an error. +* ethdev: several changes were made to the flow API. + + * Unused DUP action was removed. + * Actions semantics in flow rules: list order now matters ("first + to last" instead of "all simultaneously"), repeated actions are now + all performed, and they do not individually have (non-)terminating + properties anymore. + * Flow rules are now always terminating unless a PASSTHRU action is + present. + * C99-style flexible arrays were replaced with standard pointers in RSS + action and in RAW pattern item structures due to compatibility issues. + * The RSS action was modified to not rely on external + ``struct rte_eth_rss_conf`` anymore to instead expose its own and more + appropriately named configuration fields directly + (``rss_conf->rss_key`` => ``key``, + ``rss_conf->rss_key_len`` => ``key_len``, + ``rss_conf->rss_hf`` => ``types``, + ``num`` => ``queue_num``), and the addition of missing RSS parameters + (``func`` for RSS hash function to apply and ``level`` for the + encapsulation level). + * The VLAN pattern item (``struct rte_flow_item_vlan``) was modified to + include inner EtherType instead of outer TPID. Its default mask was also + modified to cover the VID part (lower 12 bits) of TCI only. + * A new transfer attribute was added to ``struct rte_flow_attr`` in order + to clarify the behavior of some pattern items. + * PF and VF pattern items are now only accepted by PMDs that implement + them (bnxt and i40e) when the transfer attribute is also present for + consistency. + * Pattern item PORT was renamed PHY_PORT to avoid confusion with DPDK port + IDs. + * An action counterpart to the PHY_PORT pattern item was added in order to + redirect matching traffic to a specific physical port. + * PORT_ID pattern item and actions were added to match and target DPDK + port IDs at a higher level than PHY_PORT. + +* ethdev: change flow APIs regarding count action: + * ``rte_flow_create()`` API count action now requires the ``struct rte_flow_action_count``. + * ``rte_flow_query()`` API parameter changed from action type to action structure. + ABI Changes ----------- @@ -250,6 +358,8 @@ ABI Changes Callback ``get_capabilities`` has been removed from ``rte_mempool_ops`` since its features are covered by ``calc_mem_size`` and ``populate`` callbacks. + Callback ``register_memory_area`` has been removed from ``rte_mempool_ops`` + since the new callback ``populate`` may be used instead of it. * **Additional fields in rte_eth_dev_info.** @@ -259,6 +369,19 @@ ABI Changes type ``uint16_t``: ``burst_size``, ``ring_size``, and ``nb_queues``. These are parameter values recommended for use by the PMD. +* ethdev: ABI for all flow API functions was updated. + + This includes functions ``rte_flow_copy``, ``rte_flow_create``, + ``rte_flow_destroy``, ``rte_flow_error_set``, ``rte_flow_flush``, + ``rte_flow_isolate``, ``rte_flow_query`` and ``rte_flow_validate``, due to + changes in error type definitions (``enum rte_flow_error_type``), removal + of the unused DUP action (``enum rte_flow_action_type``), modified + behavior for flow rule actions (see API changes), removal of C99 flexible + array from RAW pattern item (``struct rte_flow_item_raw``), complete + rework of the RSS action definition (``struct rte_flow_action_rss``), + sanity fix in the VLAN pattern item (``struct rte_flow_item_vlan``) and + new transfer attribute (``struct rte_flow_attr``). + Removed Items ------------- @@ -350,6 +473,8 @@ The libraries prepended with a plus sign were incremented in this version. librte_pmd_bond.so.2 librte_pmd_i40e.so.2 librte_pmd_ixgbe.so.2 + + librte_pmd_dpaa2_cmdif.so.1 + + librte_pmd_dpaa2_qdma.so.1 librte_pmd_ring.so.2 librte_pmd_softnic.so.1 librte_pmd_vhost.so.2