From mboxrd@z Thu Jan 1 00:00:00 1970 From: John McNamara Subject: =?utf-8?q?=5BPATCH_v1=5D_doc=3A_fix_release_notes_for_?= =?utf-8?q?16=2E04?= Date: Thu, 7 Apr 2016 17:02:33 +0100 Message-ID: <1460044953-11419-1-git-send-email-john.mcnamara@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Cc: thomas.monjalon@6wind.com, John McNamara To: dev@dpdk.org Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id 7FD792BA8 for ; Thu, 7 Apr 2016 18:02:51 +0200 (CEST) List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Fix grammar, spelling and formatting of DPDK 16.04 release notes. Signed-off-by: John McNamara --- doc/guides/rel_notes/release_16_04.rst | 266 +++++++++++++--------------= ------ 1 file changed, 104 insertions(+), 162 deletions(-) diff --git a/doc/guides/rel_notes/release_16_04.rst b/doc/guides/rel_note= s/release_16_04.rst index e293960..200053c 100644 --- a/doc/guides/rel_notes/release_16_04.rst +++ b/doc/guides/rel_notes/release_16_04.rst @@ -2,39 +2,9 @@ DPDK Release 16.04 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =20 =20 -**Read this first** - -The text below explains how to update the release notes. - -Use proper spelling, capitalization and punctuation in all sections. - -Variable and config names should be quoted as fixed width text: ``LIKE_T= HIS``. - -Build the docs and view the output file to ensure the changes are correc= t:: - - make doc-guides-html - - firefox build/doc/html/guides/rel_notes/release_16_04.html - - New Features ------------ =20 -This section should contain new features added in this release. Sample f= ormat: - -* **Add a title in the past tense with a full stop.** - - Add a short 1-2 sentence description in the past tense. The descriptio= n - should be enough to allow someone scanning the release notes to unders= tand - the new feature. - - If the feature adds a lot of sub-features you can use a bullet list li= ke this. - - * Added feature foo to do something. - * Enhanced feature bar to do something else. - - Refer to the previous release notes for examples. - * **Added function to check primary process state.** =20 A new function ``rte_eal_primary_proc_alive()`` has been added @@ -45,141 +15,145 @@ This section should contain new features added in t= his release. Sample format: * **Enabled bulk allocation of mbufs.** =20 A new function ``rte_pktmbuf_alloc_bulk()`` has been added to allow th= e user - to allocate a bulk of mbufs. + to bulk allocate mbufs. =20 * **Added device link speed capabilities.** =20 - The structure ``rte_eth_dev_info`` has now a ``speed_capa`` bitmap, wh= ich - allows the application to know the supported speeds of each device. + The structure ``rte_eth_dev_info`` now has a ``speed_capa`` bitmap, wh= ich + allows the application to determine the supported speeds of each devic= e. =20 * **Added bitmap of link speeds to advertise.** =20 - Allow defining a set of advertised speeds for auto-negotiation, + Added a feature to allow the definition of a set of advertised speeds = for auto-negotiation, explicitly disabling link auto-negotiation (single speed) and full auto-negotiation. =20 * **Added new poll-mode driver for Amazon Elastic Network Adapters (ENA)= .** =20 - The driver operates variety of ENA adapters through feature negotiatio= n + The driver operates for a variety of ENA adapters through feature nego= tiation with the adapter and upgradable commands set. - ENA driver handles PCI Physical and Virtual ENA functions. + The ENA driver handles PCI Physical and Virtual ENA functions. =20 -* **Restored vmxnet3 Tx data ring.** +* **Restored vmxnet3 TX data ring.** =20 - Tx data ring has been shown to improve small pkt forwarding performanc= e - on vSphere environment. + TX data ring has been shown to improve small packet forwarding perform= ance + on the vSphere environment. =20 -* **Added vmxnet3 Tx L4 checksum offload.** +* **Added vmxnet3 TX L4 checksum offload.** =20 - Support TCP/UDP checksum offload. + Added support for TCP/UDP checksum offload to vmxnet3. =20 * **Added vmxnet3 TSO support.** =20 + Added support for TSO to vmxnet3. + * **Added vmxnet3 support for jumbo frames.** =20 Added support for linking multi-segment buffers together to handle Jumbo packets. =20 -* **Virtio 1.0.** +* **Enabled Virtio 1.0 support.** =20 - Enabled virtio 1.0 support for virtio pmd driver. + Enabled Virtio 1.0 support for Virtio pmd driver. =20 -* **Supported virtio for ARM.** +* **Supported Virtio for ARM.** =20 - Enabled virtio support for armv7/v8. Tested for arm64. - Virtio for arm support VFIO-noiommu mode only. - Virtio can work with other non-x86 arch too like powerpc. + Enabled Virtio support for ARMv7/v8. Tested for ARM64. + Virtio for ARM supports VFIO-noiommu mode only. + Virtio can work with other non-x86 architectures as well, like PowerPC= . =20 -* **Supported virtio offload in vhost-user.** +* **Supported Virtio offload in vhost-user.** =20 - Add the offload and negotiation of checksum and TSO between vhost-user= and - vanilla Linux virtio guest. + Added the offload and negotiation of checksum and TSO between vhost-us= er and + vanilla Linux Virtio guest. =20 * **Added vhost-user live migration support.** =20 * **Added vhost driver.** =20 - Added virtual PMD that wraps librte_vhost. + Added a virtual PMD that wraps ``librte_vhost``. =20 * **Added multicast promiscuous mode support on VF for ixgbe.** =20 - Added multicast promiscuous mode support on ixgbe VF driver. So all th= e VFs + Added multicast promiscuous mode support for the ixgbe VF driver so al= l VFs can receive the multicast packets. =20 - Please note if we want to use this promiscuous mode, we need both PF a= nd VF - driver to support it. The reason is this VF feature is configured on P= F. - If use kernel PF driver + dpdk VF driver, make sure kernel PF driver s= upport - VF multicast promiscuous mode. If use dpdk PF + dpdk VF, better make s= ure PF - driver is the same version as VF. + Please note if you want to use this promiscuous mode, you need both PF= and VF + driver to support it. The reason is that this VF feature is configured= in the PF. + If you use kernel PF driver and the dpdk VF driver, make sure the kern= el PF driver supports + VF multicast promiscuous mode. If you use dpdk PF and dpdk VF ensure = the PF + driver is the same version as the VF. =20 * **Added support for E-tag on X550.** =20 - E-tag is defined in 802.1br. Please reference - http://www.ieee802.org/1/pages/802.1br.html. + E-tag is defined in `802.1BR - Bridge Port Extension `_. =20 - This feature is for VF, but the settings are on PF. It means - the CLIs should be used on PF, but some of their effects will be shown= on VF. - The forwarding of E-tag packets based on GRP and E-CID_base will have = effect - on PF. Theoretically the E-tag packets can be forwarded to any pool/qu= eue. - But normally we'd like to forward the packets to the pools/queues belo= nging - to the VFs. And E-tag insertion and stripping will have effect on VFs.= When - VF receives E-tag packets, it should strip the E-tag. When VF transmit= s - packets, it should insert the E-tag. Both can be offloaded. + This feature is for the VF, but the settings are on the PF. It means + the CLIs should be used on the PF, but some of their effects will be s= hown on the VF. + The forwarding of E-tag packets based on GRP and E-CID_base will have = an effect + on the PF. Theoretically, the E-tag packets can be forwarded to any po= ol/queue + but normally we'd like to forward the packets to the pools/queues belo= nging + to the VFs. And E-tag insertion and stripping will have an effect on V= Fs. When + a VF receives E-tag packets it should strip the E-tag. When the VF tra= nsmits + packets, it should insert the E-tag. Both actions can be offloaded. =20 When we want to use this E-tag support feature, the forwarding should = be - enabled to forward the packets received by PF to indicated VFs. And in= sertion - and stripping should be enabled for VFs to offload the effort to HW. + enabled to forward the packets received by the PF to the indicated VFs= . And insertion + and stripping should be enabled for VFs to offload the effort to hardw= are. + + Features added: =20 * Support E-tag offloading of insertion and stripping. * Support Forwarding E-tag packets to pools based on GRP and E-CID_base. =20 -* **Added support for VxLAN & NVGRE checksum off-load on X550.** +* **Added support for VxLAN and NVGRE checksum off-load on X550.** =20 - * Added support for VxLAN & NVGRE RX/TX checksum off-load on + * Added support for VxLAN and NVGRE RX/TX checksum off-load on X550. RX/TX checksum off-load is provided on both inner and outer IP header and TCP header. * Added functions to support VxLAN port configuration. The default VxLAN port number is 4789 but this can be updated programmatically. =20 -* **Added new X550EM_a devices.** +* **Added support for new X550EM_a devices.** =20 - Added new X550EM_a devices and their mac types, X550EM_a and X550EM_a_= vf. - Updated the code to use the new devices and mac types. + Added support for new X550EM_a devices and their MAC types, X550EM_a a= nd X550EM_a_vf. + Updated the relevant PMD to use the new devices and MAC types. =20 * **Added x550em_x V2 device support.** =20 - Only x550em_x V1 was supported before. Now V2 is supported. + Added support for x550em_x V2 device. Only x550em_x V1 was supported b= efore. A mask for V1 and V2 is defined and used to support both. =20 * **Supported link speed auto-negotiation on X550EM_X** =20 - Normally the auto-negotiation is supported by FW. SW need not care abo= ut - that. But on x550em_x, FW doesn't support auto-neg. As the ports of x5= 50em_x - are 10G, if we connect the port with a peer which is 1G, the link will= always + Normally the auto-negotiation is supported by firmware and software do= esn't care about + it. But on x550em_x, firmware doesn't support auto-negotiation. As the= ports of x550em_x + are 10GbE, if we connect the port with a peer which is 1GbE, the link = will always be down. - We added the support of auto-neg by SW to avoid this link down issue. + We added the support for auto-negotiation by software to avoid this li= nk down issue. =20 -* **Added sw-firmware sync on X550EM_a.** +* **Added software-firmware sync on X550EM_a.** =20 - Added support for sw-firmware sync for resource sharing. - Use the PHY token, shared between sw-fw for PHY access on X550EM_a. + Added support for software-firmware sync for resource sharing. + Use the PHY token, shared between software-firmware for PHY access on = X550EM_a. =20 * **Updated the i40e base driver.** =20 The i40e base driver was updated with changes including the following: =20 - * Use Rx control AQ commands to read/write Rx control registers. + * Use RX control AQ commands to read/write RX control registers. * Add new X722 device IDs, and removed X710 one was never used. * Expose registers for HASH/FD input set configuring. =20 * **Enabled PCI extended tag for i40e.** =20 - It enabled extended tag by checking and writing corresponding PCI conf= ig - space bytes, to boost the performance. In the meanwhile, it deprecated= the - legacy way via reading/writing sysfile supported by kernel module igb_= uio. + Enabled extended tag for i40e by checking and writing corresponding PC= I config + space bytes, to boost the performance. + The legacy method of reading/writing sysfile supported by kernel modul= e igb_uio + is now deprecated. =20 * **Added i40e support for setting mac addresses.** =20 @@ -197,22 +171,22 @@ This section should contain new features added in t= his release. Sample format: =20 * **Added PF reset event reporting in i40e VF driver.** =20 -* **Added fm10k Rx interrupt support.** +* **Added fm10k RX interrupt support.** =20 -* **Optimized fm10k Tx.** +* **Optimized fm10k TX.** =20 - * Free multiple mbufs at a time to reduce freeing mbuf cycles. + Optimized fm10k TX by freeing multiple mbufs at a time. =20 -* **Handled error flags in fm10k vector Rx.** +* **Handled error flags in fm10k vector RX.** =20 - Parse err flags in Rx desc and set error bits in mbuf with vector inst= ructions. + Parse error flags in RX descriptor and set error bits in mbuf with vec= tor instructions. =20 * **Added fm10k FTAG based forwarding support.** =20 * **Added mlx5 flow director support.** =20 - Added flow director support (RTE_FDIR_MODE_PERFECT and - RTE_FDIR_MODE_PERFECT_MAC_VLAN). + Added flow director support (``RTE_FDIR_MODE_PERFECT`` and + ``RTE_FDIR_MODE_PERFECT_MAC_VLAN``). =20 Only available with Mellanox OFED >=3D 3.2. =20 @@ -238,7 +212,7 @@ This section should contain new features added in thi= s release. Sample format: =20 * **Added mlx5 optional packet padding by HW.** =20 - Added an option to make PCI bus transactions rounded to multiple of a + Added an option to make PCI bus transactions rounded to a multiple of = a cache line size for better alignment. =20 Only available with Mellanox OFED >=3D 3.2. @@ -249,10 +223,10 @@ This section should contain new features added in t= his release. Sample format: =20 Only available with Mellanox OFED >=3D 3.2. =20 -* **Changed szedata2 type of driver from vdev to pdev.** +* **Changed szedata2 driver type from vdev to pdev.** =20 Previously szedata2 device had to be added by ``--vdev`` option. - Now szedata2 PMD recognises the device automatically during EAL + Now szedata2 PMD recognizes the device automatically during EAL initialization. =20 * **Added szedata2 functions for setting link up/down.** @@ -261,17 +235,17 @@ This section should contain new features added in t= his release. Sample format: =20 * **Added af_packet dynamic removal function.** =20 - Af_packet device can now be detached using API, like other PMD devices= . + An af_packet device can now be detached using the API, like other PMD = devices. =20 * **Increased number of next hops for LPM IPv4 to 2^24.** =20 - The next_hop field is extended from 8 bits to 24 bits for IPv4. + The ``next_hop`` field has been extended from 8 bits to 24 bits for IP= v4. =20 * **Added support of SNOW 3G (UEA2 and UIA2) for Intel Quick Assist devi= ces.** =20 - Enabled support for SNOW 3G wireless algorithm for Intel Quick Assist = devices. - Support for cipher only, hash only is also provided - along with alg-chaining operations. + Enabled support for the SNOW 3G wireless algorithm for Intel Quick Ass= ist devices. + Support for cipher-only and hash-only is also provided + along with algorithm-chaining operations. =20 * **Added SNOW3G SW PMD.** =20 @@ -281,31 +255,29 @@ This section should contain new features added in t= his release. Sample format: * **Added AES GCM PMD.** =20 Added new Crypto PMD to support AES-GCM authenticated encryption and - authenticated decryption in SW. + authenticated decryption in software. =20 * **Added NULL Crypto PMD** =20 - Added new Crypto PMD to support null crypto operations in SW. + Added new Crypto PMD to support null crypto operations in software. =20 * **Improved IP Pipeline Application.** =20 The following features have been added to ip_pipeline application; =20 * Added CPU utilization measurement and idle cycle rate computation. - * Added link idenfication support through existing port-mask option or= by + * Added link identification support through existing port-mask option = or by specifying PCI device in every LINK section in the configuration fil= e. * Added load balancing support in passthrough pipeline. =20 * **Added IPsec security gateway example.** =20 - New application implementing an IPsec Security Gateway. + Added a new application implementing an IPsec Security Gateway. =20 =20 Resolved Issues --------------- =20 -This section should contain bug fixes added to the relevant sections. Sa= mple format: - * **code/section: Fixed issue in the past tense with a full stop.** =20 Add a short 1-2 sentence description of the resolved issue in the past= tense. @@ -313,21 +285,17 @@ This section should contain bug fixes added to the = relevant sections. Sample for Add the entries in alphabetic order in the relevant sections below. =20 =20 -EAL -~~~ - - Drivers ~~~~~~~ =20 * **ethdev: Fixed overflow for 100Gbps.** =20 - 100Gbps in Mbps (100000) was exceeding 16-bit max value of ``link_spee= d`` + 100Gbps in Mbps (100000) was exceeding the 16-bit max value of ``link_= speed`` in ``rte_eth_link``. =20 * **ethdev: Fixed byte order consistency between fdir flow and mask.** =20 - Fixed issue in ethdev library that the structure for setting + Fixed issue in ethdev library where the structure for setting fdir's mask and flow entry was not consistent in byte ordering. =20 * **cxgbe: Fixed crash due to incorrect size allocated for RSS table.** @@ -338,12 +306,12 @@ Drivers =20 * **cxgbe: Fixed setting wrong device MTU.** =20 - Fixed an incorrect device MTU being set due to ethernet header and + Fixed an incorrect device MTU being set due to the Ethernet header and CRC lengths being added twice. =20 * **ixgbe: Fixed zeroed VF mac address.** =20 - Resolved an issue where VF mac address is zeroed out in cases where th= e VF + Resolved an issue where the VF MAC address is zeroed out in cases wher= e the VF driver is loaded while the PF interface is down. The solution is to only set it when we get an ACK from the PF. =20 @@ -370,7 +338,7 @@ Drivers It generates a MAC address for each VFs during PF host initialization, and keeps the VF MAC address the same among different VF launch. =20 -* **i40e: Fixed failure of reading/writing Rx control registers.** +* **i40e: Fixed failure of reading/writing RX control registers.** =20 Fixed i40e issue of failing to read/write rx control registers when under stress with traffic, which might result in application launch @@ -378,14 +346,14 @@ Drivers =20 * **i40e: Enabled vector driver by default.** =20 - Previously, vector driver is disabled by default as it cannot fill pac= ket type - info for l3fwd to work well. Now there is an option for l3fwd to analy= sis - packet type softly, so enable vector driver by default. + Previously, vector driver was disabled by default as it couldn't fill = packet type + info for l3fwd to work well. Now there is an option for l3fwd to analy= ze + the packet type so the vector driver is enabled by default. =20 * **i40e: Fixed link info of VF.** =20 - Previously, the VF's link speed kept as 10G and status always was up. - It did not change even the physical link's status changed. + Previously, the VF's link speed stayed at 10GbE and status always was = up. + It did not change even when the physical link's status changed. Now this issue is fixed to make VF's link info consistent with physica= l link. =20 * **mlx5: Fixed possible crash during initialization.** @@ -394,7 +362,7 @@ Drivers =20 * **mlx5: Added port type check.** =20 - Done to prevent port initialization on non-Ethernet link layers and + Added port type check to prevent port initialization on non-Ethernet l= ink layers and to report an error. =20 * **mlx5: Applied VLAN filtering to broadcast and IPv6 multicast flows.*= * @@ -407,10 +375,10 @@ Drivers =20 * **aesni_mb: Fixed wrong return value when creating a device.** =20 - cryptodev_aesni_mb_init() was returning the device id of the device cr= eated, - instead of 0 (when success), that rte_eal_vdev_init() expects. - This made impossible the creation of more than one aesni_mb device - from command line. + The ``cryptodev_aesni_mb_init()`` function was returning the device id= of the device created, + instead of 0 (on success) that ``rte_eal_vdev_init()`` expects. + This made it impossible to create more than one aesni_mb device + from the command line. =20 * **qat: Fixed AES GCM decryption.** =20 @@ -424,7 +392,7 @@ Libraries * **hash: Fixed CRC32c hash computation for non multiple of 4 bytes size= s.** =20 Fix crc32c hash functions to return a valid crc32c value for data leng= ths - not multiple of 4 bytes. + not a multiple of 4 bytes. =20 * **hash: Fixed hash library to support multi-process mode.** =20 @@ -440,7 +408,7 @@ Libraries ``rte_errno`` to ``EEXIST`` when the object name already exists. This = is the behavior described in the API documentation in the header file. The previous behavior was to return a pointer to the existing object i= n - that case, preventing the caller to know if the object had to be freed + that case, preventing the caller from knowing if the object had to be = freed or not. =20 * **lpm: Fixed return value when allocating an existing object.** @@ -449,7 +417,7 @@ Libraries ``rte_errno`` to ``EEXIST`` when the object name already exists. This = is the behavior described in the API documentation in the header file. The previous behavior was to return a pointer to the existing object i= n - that case, preventing the caller to know if the object had to be freed + that case, preventing the caller from knowing if the object had to be = freed or not. =20 * **librte_port: Fixed segmentation fault for ring and ethdev writer nod= rop.** @@ -468,39 +436,19 @@ Examples =20 * **l3fwd: Fixed using packet type blindly.** =20 - l3fwd makes use of packet type information without even query if devic= es or PMDs - really set it. For those don't set ptypes, add an option to parse it s= oftly. + l3fwd makes use of packet type information without querying if devices= or PMDs + really set it. For those devices that don't set ptypes, add an option = to parse it. =20 * **examples/vhost: Fixed frequent mbuf allocation failure.** =20 - vhost-switch often fails to allocate mbuf when dequeue from vring beca= use it + The vhost-switch often fails to allocate mbuf when dequeue from vring = because it wrongly calculates the number of mbufs needed. =20 =20 -Other -~~~~~ - - -Known Issues ------------- - -This section should contain new known issues in this release. Sample for= mat: - -* **Add title in present tense with full stop.** - - Add a short 1-2 sentence description of the known issue in the present - tense. Add information on any known workarounds. - - API Changes ----------- =20 -This section should contain API changes. Sample format: - -* Add a short 1-2 sentence description of the API change. Use fixed widt= h - quotes for ``rte_function_names`` or ``rte_struct_names``. Use the pas= t tense. - -* The ethdev statistics counter imissed is considered to be independent = of ierrors. +* The ethdev statistics counter ``imissed`` is considered to be independ= ent of ``ierrors``. All drivers are now counting the missed packets only once, i.e. driver= s will not increment ierrors anymore for missed packets. =20 @@ -524,13 +472,13 @@ This section should contain API changes. Sample for= mat: * A parameter ``vlan_type`` has been added to the function ``rte_eth_dev_set_vlan_ether_type``. =20 -* AF_packet device init function is no longer public. Device should be a= ttached - with API. +* The af_packet device init function is no longer public. The device sho= uld be attached + via the API. =20 * The LPM ``next_hop`` field is extended from 8 bits to 24 bits for IPv4 while keeping ABI compatibility. =20 -* A new ``rte_lpm_config`` structure is used so LPM library will allocat= e +* A new ``rte_lpm_config`` structure is used so the LPM library will all= ocate exactly the amount of memory which is necessary to hold application=E2= =80=99s rules. The previous ABI is kept for compatibility. =20 @@ -542,10 +490,6 @@ This section should contain API changes. Sample form= at: ABI Changes ----------- =20 -* Add a short 1-2 sentence description of the ABI change that was announ= ced in - the previous releases and made in this release. Use fixed width quotes= for - ``rte_function_names`` or ``rte_struct_names``. Use the past tense. - * The RETA entry size in ``rte_eth_rss_reta_entry64`` has been increased from 8-bit to 16-bit. =20 @@ -558,8 +502,6 @@ ABI Changes Shared Library Versions ----------------------- =20 -Update any library version updated in this release and prepend with a ``= +`` sign. - The libraries prepended with a plus sign were incremented in this versio= n. =20 .. code-block:: diff --=20 2.5.0