X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=doc%2Fguides%2Frel_notes%2Frelease_16_04.rst;h=79d76e1f6359a579f6116ffd967169be82fdbeb4;hb=c8f9e99c7abdd4b2e4aae09313ba8f12df263a2a;hp=98c8680de7ec22f4555efd0a27c5f5d4c67ccd51;hpb=b054176460adb798253987fa39a241d50c27e7f3;p=dpdk.git diff --git a/doc/guides/rel_notes/release_16_04.rst b/doc/guides/rel_notes/release_16_04.rst index 98c8680de7..79d76e1f63 100644 --- a/doc/guides/rel_notes/release_16_04.rst +++ b/doc/guides/rel_notes/release_16_04.rst @@ -47,6 +47,28 @@ This section should contain new features added in this release. Sample format: A new function ``rte_pktmbuf_alloc_bulk()`` has been added to allow the user to allocate a bulk of mbufs. +* **Added new poll-mode driver for Amazon Elastic Network Adapters (ENA).** + + The driver operates variety of ENA adapters through feature negotiation + with the adapter and upgradable commands set. + ENA driver handles PCI Physical and Virtual ENA functions. + +* **Restored vmxnet3 Tx data ring.** + + Tx data ring has been shown to improve small pkt forwarding performance + on vSphere environment. + +* **Added vmxnet3 Tx L4 checksum offload.** + + Support TCP/UDP checksum offload. + +* **Added vmxnet3 TSO support.** + +* **Added vmxnet3 support for jumbo frames.** + + Added support for linking multi-segment buffers together to + handle Jumbo packets. + * **Virtio 1.0.** Enabled virtio 1.0 support for virtio pmd driver. @@ -64,6 +86,10 @@ This section should contain new features added in this release. Sample format: * **Added vhost-user live migration support.** +* **Added vhost driver.** + + Added virtual PMD that wraps librte_vhost. + * **Added multicast promiscuous mode support on VF for ixgbe.** Added multicast promiscuous mode support on ixgbe VF driver. So all the VFs @@ -144,8 +170,88 @@ This section should contain new features added in this release. Sample format: space bytes, to boost the performance. In the meanwhile, it deprecated the legacy way via reading/writing sysfile supported by kernel module igb_uio. +* **Added i40e support for setting mac addresses.** + +* **Added dump of i40e registers and EEPROM.** + * **Supported ether type setting of single and double VLAN for i40e** +* **Added VMDQ DCB mode in i40e.** + + Added support for DCB in VMDQ mode to i40e driver. + +* **Added i40e VEB switching support.** + +* **Added Flow director enhancements in i40e.** + +* **Added PF reset event reporting in i40e VF driver.** + +* **Added fm10k Rx interrupt support.** + +* **Optimized fm10k Tx.** + + * Free multiple mbufs at a time to reduce freeing mbuf cycles. + +* **Handled error flags in fm10k vector Rx.** + + Parse err flags in Rx desc and set error bits in mbuf with vector instructions. + +* **Added fm10k FTAG based forwarding support.** + +* **Added mlx5 flow director support.** + + Added flow director support (RTE_FDIR_MODE_PERFECT and + RTE_FDIR_MODE_PERFECT_MAC_VLAN). + + Only available with Mellanox OFED >= 3.2. + +* **Added mlx5 RX VLAN stripping support.** + + Added support for RX VLAN stripping. + + Only available with Mellanox OFED >= 3.2. + +* **Added mlx5 link up/down callbacks.** + + Implemented callbacks to bring link up and down. + +* **Added mlx5 support for operation in secondary processes.** + + Implemented TX support in secondary processes (like mlx4). + +* **Added mlx5 RX CRC stripping configuration.** + + Until now, CRC was always stripped. It can now be configured. + + Only available with Mellanox OFED >= 3.2. + +* **Added mlx5 optional packet padding by HW.** + + Added an option to make PCI bus transactions rounded to multiple of a + cache line size for better alignment. + + Only available with Mellanox OFED >= 3.2. + +* **Added mlx5 TX VLAN insertion support.** + + Added support for TX VLAN insertion. + + Only available with Mellanox OFED >= 3.2. + +* **Changed szedata2 type of driver from vdev to pdev.** + + Previously szedata2 device had to be added by ``--vdev`` option. + Now szedata2 PMD recognises the device automatically during EAL + initialization. + +* **Added szedata2 functions for setting link up/down.** + +* **Added szedata2 promiscuous and allmulticast modes.** + +* **Added af_packet dynamic removal function.** + + Af_packet device can now be detached using API, like other PMD devices. + * **Increased number of next hops for LPM IPv4 to 2^24.** The next_hop field is extended from 8 bits to 24 bits for IPv4. @@ -170,6 +276,15 @@ This section should contain new features added in this release. Sample format: Added new Crypto PMD to support null crypto operations in SW. +* **Improved IP Pipeline Application.** + + The following features have been added to ip_pipeline application; + + * Added CPU utilization measurement and idle cycle rate computation. + * Added link idenfication support through existing port-mask option or by + specifying PCI device in every LINK section in the configuration file. + * Added load balancing support in passthrough pipeline. + * **Added IPsec security gateway example.** New application implementing an IPsec Security Gateway. @@ -228,6 +343,12 @@ Drivers The driver now set the MDIO clock speed prior to initializing PHY ops and again after the MAC reset. +* **ixgbe: Fixed maximum number of available TX queues.** + + In IXGBE, the maximum number of TX queues varies depending on the NIC operating + mode. This was not being updated in the device information, providing + an incorrect number in some cases. + * **i40e: Generated MAC address for each VFs.** It generates a MAC address for each VFs during PF host initialization, @@ -239,6 +360,29 @@ Drivers under stress with traffic, which might result in application launch failure. +* **i40e: Enabled vector driver by default.** + + Previously, vector driver is disabled by default as it cannot fill packet type + info for l3fwd to work well. Now there is an option for l3fwd to analysis + packet type softly, so enable vector driver by default. + +* **mlx5: Fixed possible crash during initialization.** + + A crash could occur when failing to allocate private device context. + +* **mlx5: Added port type check.** + + Done to prevent port initialization on non-Ethernet link layers and + to report an error. + +* **mlx5: Applied VLAN filtering to broadcast and IPv6 multicast flows.** + + Prevented reception of multicast frames outside of configured VLANs. + +* **mlx5: Fixed RX checksum offload in non L3/L4 packets.** + + Fixed report of bad checksum for packets of unknown type. + * **aesni_mb: Fixed wrong return value when creating a device.** cryptodev_aesni_mb_init() was returning the device id of the device created, @@ -260,10 +404,25 @@ Libraries Fix crc32c hash functions to return a valid crc32c value for data lengths not multiple of 4 bytes. +* **librte_port: Fixed segmentation fault for ring and ethdev writer nodrop.** + + Fixed core dump issue on txq and swq when dropless is set to yes. + Examples ~~~~~~~~ +* **l3fwd-power: Fixed memory leak for non-IP packet.** + + Fixed issue in l3fwd-power where, on receiving packets of types + other than IPv4 or IPv6, the mbuf was not released, and caused + a memory leak. + +* **l3fwd: Fixed using packet type blindly.** + + l3fwd makes use of packet type information without even query if devices or PMDs + really set it. For those don't set ptypes, add an option to parse it softly. + * **examples/vhost: Fixed frequent mbuf allocation failure.** vhost-switch often fails to allocate mbuf when dequeue from vring because it @@ -293,6 +452,10 @@ This section should contain API changes. Sample format: * Add a short 1-2 sentence description of the API change. Use fixed width quotes for ``rte_function_names`` or ``rte_struct_names``. Use the past tense. +* The ethdev statistics counter imissed is considered to be independent of ierrors. + All drivers are now counting the missed packets only once, i.e. drivers will + not increment ierrors anymore for missed packets. + * The functions ``rte_eth_dev_udp_tunnel_add`` and ``rte_eth_dev_udp_tunnel_delete`` have been renamed into ``rte_eth_dev_udp_tunnel_port_add`` and ``rte_eth_dev_udp_tunnel_port_delete``. @@ -307,6 +470,9 @@ This section should contain API changes. Sample format: * A parameter ``vlan_type`` has been added to the function ``rte_eth_dev_set_vlan_ether_type``. +* AF_packet device init function is no longer public. Device should be attached + with API. + * The LPM ``next_hop`` field is extended from 8 bits to 24 bits for IPv4 while keeping ABI compatibility. @@ -329,6 +495,9 @@ ABI Changes * The RETA entry size in ``rte_eth_rss_reta_entry64`` has been increased from 8-bit to 16-bit. +* The ethdev flow director structure ``rte_eth_fdir_flow`` structure was + changed. New fields were added to extend flow director's input set. + * The cmdline buffer size has been increase from 256 to 512.