X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=doc%2Fguides%2Frel_notes%2Frelease_17_02.rst;h=753ef8a40884cd22f008c54bdab07c680b567962;hb=dd22740cc291568f354279f5c38eef4a1d1dd3a0;hp=d445d645d768ed3397a573dcd250fb74d8b1fa1b;hpb=b35d309710fe45c1726843a8892406fc18ec8a5b;p=dpdk.git diff --git a/doc/guides/rel_notes/release_17_02.rst b/doc/guides/rel_notes/release_17_02.rst index d445d645d7..753ef8a408 100644 --- a/doc/guides/rel_notes/release_17_02.rst +++ b/doc/guides/rel_notes/release_17_02.rst @@ -1,160 +1,272 @@ +.. SPDX-License-Identifier: BSD-3-Clause + Copyright 2017 The DPDK contributors + DPDK Release 17.02 ================== -.. **Read this first.** +New Features +------------ - The text below explains how to update the release notes. +* **Added support for representing buses in EAL** - Use proper spelling, capitalization and punctuation in all sections. + The ``rte_bus`` structure was introduced into the EAL. This allows for + devices to be represented by buses they are connected to. A new bus can be + added to DPDK by extending the ``rte_bus`` structure and implementing the + scan and probe functions. Once a new bus is registered using the provided + APIs, new devices can be detected and initialized using bus scan and probe + callbacks. - Variable and config names should be quoted as fixed width text: ``LIKE_THIS``. + With this change, devices other than PCI or VDEV type can be represented + in the DPDK framework. - Build the docs and view the output file to ensure the changes are correct:: +* **Added generic EAL API for I/O device memory read/write operations.** - make doc-guides-html + This API introduces 8 bit, 16 bit, 32 bit and 64 bit I/O device + memory read/write operations along with "relaxed" versions. - firefox build/doc/html/guides/rel_notes/release_17_02.html + Weakly-ordered architectures like ARM need an additional I/O barrier for + device memory read/write access over PCI bus. By introducing the EAL + abstraction for I/O device memory read/write access, the drivers can access + I/O device memory in an architecture-agnostic manner. The relaxed version + does not have an additional I/O memory barrier, which is useful in accessing + the device registers of integrated controllers which is implicitly strongly + ordered with respect to memory access. +* **Added generic flow API (rte_flow).** -New Features ------------- + This API provides a generic means to configure hardware to match specific + ingress or egress traffic, alter its behavior and query related counters + according to any number of user-defined rules. -.. This section should contain new features added in this release. Sample format: + In order to expose a single interface with an unambiguous behavior that is + common to all poll-mode drivers (PMDs) the ``rte_flow`` API is slightly + higher-level than the legacy filtering framework, which it encompasses and + supersedes (including all functions and filter types) . - * **Add a title in the past tense with a full stop.** + See the :doc:`../prog_guide/rte_flow` documentation for more information. - Add a short 1-2 sentence description in the past tense. The description - should be enough to allow someone scanning the release notes to understand - the new feature. +* **Added firmware version get API.** - If the feature adds a lot of sub-features you can use a bullet list like this. + Added a new function ``rte_eth_dev_fw_version_get()`` to fetch the firmware + version for a given device. - * Added feature foo to do something. - * Enhanced feature bar to do something else. +* **Added APIs for MACsec offload support to the ixgbe PMD.** - Refer to the previous release notes for examples. + Six new APIs have been added to the ixgbe PMD for MACsec offload support. + The declarations for the APIs can be found in ``rte_pmd_ixgbe.h``. - This section is a comment. do not overwrite or remove it. - Also, make sure to start the actual text at the margin. - ========================================================= +* **Added I219 NICs support.** -* **Added generic flow API (rte_flow).** + Added support for I219 Intel 1GbE NICs. - This API provides a generic means to configure hardware to match specific - ingress or egress traffic, alter its fate and query related counters - according to any number of user-defined rules. +* **Added VF Daemon (VFD) for i40e. - EXPERIMENTAL** - It is slightly higher-level than the legacy filtering framework which it - encompasses and supersedes (including all functions and filter types) in - order to expose a single interface with an unambiguous behavior that is - common to all poll-mode drivers (PMDs). + This is an EXPERIMENTAL feature to enhance the capability of the DPDK PF as + many VF management features are not currently supported by the kernel PF + driver. Some new private APIs are implemented directly in the PMD without an + abstraction layer. They can be used directly by some users who have the + need. - See the :ref:`Generic flow API ` documentation for more - information. + The new APIs to control VFs directly from PF include: -* **Added APIs for MACsec offload support to the ixgbe PMD.** + * Set VF MAC anti-spoofing. + * Set VF VLAN anti-spoofing. + * Set TX loopback. + * Set VF unicast promiscuous mode. + * Set VF multicast promiscuous mode. + * Set VF MTU. + * Get/reset VF stats. + * Set VF MAC address. + * Set VF VLAN stripping. + * Vf VLAN insertion. + * Set VF broadcast mode. + * Set VF VLAN tag. + * Set VF VLAN filter. - Six new APIs have been added to the ixgbe PMD for MACsec offload support. - The declarations for the APIs can be found in ``rte_pmd_ixgbe.h``. + VFD also includes VF to PF mailbox message management from an application. + When the PF receives mailbox messages from the VF the PF should call the + callback provided by the application to know if they're permitted to be + processed. + As an EXPERIMENTAL feature, please be aware it can be changed or even + removed without prior notice. -Resolved Issues ---------------- +* **Updated the i40e base driver.** -.. This section should contain bug fixes added to the relevant sections. Sample format: + Updated the i40e base driver, including the following changes: - * **code/section Fixed issue in the past tense with a full stop.** + * Replace existing legacy ``memcpy()`` calls with ``i40e_memcpy()`` calls. + * Use ``BIT()`` macro instead of bit fields. + * Add clear all WoL filters implementation. + * Add broadcast promiscuous control per VLAN. + * Remove unused ``X722_SUPPORT`` and ``I40E_NDIS_SUPPORT`` macros. - Add a short 1-2 sentence description of the resolved issue in the past tense. - The title should contain the code/lib section like a commit message. - Add the entries in alphabetic order in the relevant sections below. +* **Updated the enic driver.** - This section is a comment. do not overwrite or remove it. - Also, make sure to start the actual text at the margin. - ========================================================= + * Set new Rx checksum flags in mbufs to indicate unknown, good or bad checksums. + * Fix set/remove of MAC addresses. Allow up to 64 addresses per device. + * Enable TSO on outer headers. +* **Added Solarflare libefx-based network PMD.** -EAL -~~~ + Added a new network PMD which supports Solarflare SFN7xxx and SFN8xxx family + of 10/40 Gbps adapters. +* **Updated the mlx4 driver.** -Drivers -~~~~~~~ + * Addressed a few bugs. +* **Added support for Mellanox ConnectX-5 adapters (mlx5).** -Libraries -~~~~~~~~~ + Added support for Mellanox ConnectX-5 family of 10/25/40/50/100 Gbps + adapters to the existing mlx5 PMD. +* **Updated the mlx5 driver.** -Examples -~~~~~~~~ + * Improve Tx performance by using vector logic. + * Improve RSS balancing when number of queues is not a power of two. + * Generic flow API support for Ethernet, IPv4, IPv4, UDP, TCP, VLAN and + VXLAN pattern items with DROP and QUEUE actions. + * Support for extended statistics. + * Addressed several data path bugs. + * As of MLNX_OFED 4.0-1.0.1.0, the Toeplitz RSS hash function is not + symmetric anymore for consistency with other PMDs. -* **examples/ethtool: Fixed crash with non-PCI devices.** +* **virtio-user with vhost-kernel as another exceptional path.** - Querying a non-PCI device was dereferencing non-existent PCI data - resulting in a segmentation fault. + Previously, we upstreamed a virtual device, virtio-user with vhost-user as + the backend as a way of enabling IPC (Inter-Process Communication) and user + space container networking. + Virtio-user with vhost-kernel as the backend is a solution for the exception + path, such as KNI, which exchanges packets with the kernel networking stack. + This solution is very promising in: -Other -~~~~~ + * Maintenance: vhost and vhost-net (kernel) is an upstreamed and extensively + used kernel module. + * Features: vhost-net is designed to be a networking solution, which has + lots of networking related features, like multi-queue, TSO, multi-seg + mbuf, etc. + * Performance: similar to KNI, this solution would use one or more + kthreads to send/receive packets from user space DPDK applications, + which has little impact on user space polling thread (except that + it might enter into kernel space to wake up those kthreads if + necessary). +* **Added virtio Rx interrupt support.** -Known Issues ------------- + Added a feature to enable Rx interrupt mode for virtio pci net devices as + bound to VFIO (noiommu mode) and driven by virtio PMD. -.. This section should contain new known issues in this release. Sample format: + With this feature, the virtio PMD can switch between polling mode and + interrupt mode, to achieve best performance, and at the same time save + power. It can work on both legacy and modern virtio devices. In this mode, + each ``rxq`` is mapped with an excluded MSIx interrupt. - * **Add title in present tense with full stop.** + See the :ref:`Virtio Interrupt Mode ` documentation + for more information. - Add a short 1-2 sentence description of the known issue in the present - tense. Add information on any known workarounds. +* **Added ARMv8 crypto PMD.** - This section is a comment. do not overwrite or remove it. - Also, make sure to start the actual text at the margin. - ========================================================= + A new crypto PMD has been added, which provides combined mode cryptographic + operations optimized for ARMv8 processors. The driver can be used to enhance + performance in processing chained operations such as cipher + HMAC. +* **Updated the QAT PMD.** -API Changes ------------ + The QAT PMD has been updated with additional support for: -.. This section should contain API changes. Sample format: + * DES algorithm. + * Scatter-gather list (SGL) support. - * 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. +* **Updated the AESNI MB PMD.** - This section is a comment. do not overwrite or remove it. - Also, make sure to start the actual text at the margin. - ========================================================= + * The Intel(R) Multi Buffer Crypto for IPsec library used in + AESNI MB PMD has been moved to a new repository, in GitHub. + * Support has been added for single operations (cipher only and + authentication only). +* **Updated the AES-NI GCM PMD.** -ABI Changes ------------ + The AES-NI GCM PMD was migrated from the Multi Buffer library to the ISA-L + library. The migration entailed adding additional support for: -.. This section should contain ABI changes. Sample format: + * GMAC algorithm. + * 256-bit cipher key. + * Session-less mode. + * Out-of place processing + * Scatter-gather support for chained mbufs (only out-of place and destination + mbuf must be contiguous) - * Add a short 1-2 sentence description of the ABI change that was announced 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. +* **Added crypto performance test application.** - This section is a comment. do not overwrite or remove it. - Also, make sure to start the actual text at the margin. - ========================================================= + Added a new performance test application for measuring performance + parameters of PMDs available in the crypto tree. +* **Added Elastic Flow Distributor library (rte_efd).** + Added a new library which uses perfect hashing to determine a target/value + for a given incoming flow key. -Shared Library Versions ------------------------ + The library does not store the key itself for lookup operations, and + therefore, lookup performance is not dependent on the key size. Also, the + target/value can be any arbitrary value (8 bits by default). Finally, the + storage requirement is much smaller than a hash-based flow table and + therefore, it can better fit in CPU cache and scale to millions of flow + keys. -.. Update any library version updated in this release and prepend with a ``+`` - sign, like this: + See the :ref:`Elastic Flow Distributor Library ` documentation in + the Programmers Guide document, for more information. - librte_acl.so.2 - + librte_cfgfile.so.2 - librte_cmdline.so.2 - This section is a comment. do not overwrite or remove it. - ========================================================= +Resolved Issues +--------------- +Drivers +~~~~~~~ + +* **net/virtio: Fixed multiple process support.** + + Fixed a few regressions introduced in recent releases that break the virtio + multiple process support. + + +Examples +~~~~~~~~ + +* **examples/ethtool: Fixed crash with non-PCI devices.** + + Fixed issue where querying a non-PCI device was dereferencing non-existent + PCI data resulting in a segmentation fault. + + +API Changes +----------- + +* **Moved five APIs for VF management from the ethdev to the ixgbe PMD.** + + The following five APIs for VF management from the PF have been removed from + the ethdev, renamed, and added to the ixgbe PMD:: + + rte_eth_dev_set_vf_rate_limit() + rte_eth_dev_set_vf_rx() + rte_eth_dev_set_vf_rxmode() + rte_eth_dev_set_vf_tx() + rte_eth_dev_set_vf_vlan_filter() + + The API's have been renamed to the following:: + + rte_pmd_ixgbe_set_vf_rate_limit() + rte_pmd_ixgbe_set_vf_rx() + rte_pmd_ixgbe_set_vf_rxmode() + rte_pmd_ixgbe_set_vf_tx() + rte_pmd_ixgbe_set_vf_vlan_filter() + + The declarations for the API’s can be found in ``rte_pmd_ixgbe.h``. + + +Shared Library Versions +----------------------- The libraries prepended with a plus sign were incremented in this version. @@ -166,7 +278,7 @@ The libraries prepended with a plus sign were incremented in this version. librte_cryptodev.so.2 librte_distributor.so.1 librte_eal.so.3 - librte_ethdev.so.5 + + librte_ethdev.so.6 librte_hash.so.2 librte_ip_frag.so.1 librte_jobstats.so.1 @@ -194,53 +306,292 @@ The libraries prepended with a plus sign were incremented in this version. Tested Platforms ---------------- -.. This section should contain a list of platforms that were tested with this release. +This release has been tested with the below list of CPU/device/firmware/OS. +Each section describes a different set of combinations. - The format is: +* Intel(R) platforms with Mellanox(R) NICs combinations - #. Platform name. + * Platform details - * Platform details. - * Platform details. + * Intel(R) Xeon(R) CPU E5-2697 v2 @ 2.70GHz + * Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz + * Intel(R) Xeon(R) CPU E5-2697 v3 @ 2.60GHz - This section is a comment. do not overwrite or remove it. - Also, make sure to start the actual text at the margin. - ========================================================= + * OS: + * CentOS 7.0 + * Fedora 23 + * Fedora 24 + * FreeBSD 10.3 + * Red Hat Enterprise Linux 7.2 + * SUSE Enterprise Linux 12 + * Ubuntu 14.04 LTS + * Ubuntu 15.10 + * Ubuntu 16.04 LTS + * Wind River Linux 8 -Tested NICs ------------ + * MLNX_OFED: 4.0-1.0.1.0 -.. This section should contain a list of NICs that were tested with this release. + * NICs: - The format is: + * Mellanox(R) ConnectX(R)-3 Pro 40G MCX354A-FCC_Ax (2x40G) - #. NIC name. + * Host interface: PCI Express 3.0 x8 + * Device ID: 15b3:1007 + * Firmware version: 2.40.5030 - * NIC details. - * NIC details. + * Mellanox(R) ConnectX(R)-4 10G MCX4111A-XCAT (1x10G) - This section is a comment. do not overwrite or remove it. - Also, make sure to start the actual text at the margin. - ========================================================= + * Host interface: PCI Express 3.0 x8 + * Device ID: 15b3:1013 + * Firmware version: 12.18.1000 + * Mellanox(R) ConnectX(R)-4 10G MCX4121A-XCAT (2x10G) -Tested OSes ------------ + * Host interface: PCI Express 3.0 x8 + * Device ID: 15b3:1013 + * Firmware version: 12.18.1000 + + * Mellanox(R) ConnectX(R)-4 25G MCX4111A-ACAT (1x25G) + + * Host interface: PCI Express 3.0 x8 + * Device ID: 15b3:1013 + * Firmware version: 12.18.1000 + + * Mellanox(R) ConnectX(R)-4 25G MCX4121A-ACAT (2x25G) + + * Host interface: PCI Express 3.0 x8 + * Device ID: 15b3:1013 + * Firmware version: 12.18.1000 + + * Mellanox(R) ConnectX(R)-4 40G MCX4131A-BCAT/MCX413A-BCAT (1x40G) + + * Host interface: PCI Express 3.0 x8 + * Device ID: 15b3:1013 + * Firmware version: 12.18.1000 + + * Mellanox(R) ConnectX(R)-4 40G MCX415A-BCAT (1x40G) + + * Host interface: PCI Express 3.0 x16 + * Device ID: 15b3:1013 + * Firmware version: 12.18.1000 + + * Mellanox(R) ConnectX(R)-4 50G MCX4131A-GCAT/MCX413A-GCAT (1x50G) + + * Host interface: PCI Express 3.0 x8 + * Device ID: 15b3:1013 + * Firmware version: 12.18.1000 + + * Mellanox(R) ConnectX(R)-4 50G MCX414A-BCAT (2x50G) + + * Host interface: PCI Express 3.0 x8 + * Device ID: 15b3:1013 + * Firmware version: 12.18.1000 + + * Mellanox(R) ConnectX(R)-4 50G MCX415A-GCAT/MCX416A-BCAT/MCX416A-GCAT (2x50G) + + * Host interface: PCI Express 3.0 x16 + * Device ID: 15b3:1013 + * Firmware version: 12.18.1000 + + * Mellanox(R) ConnectX(R)-4 50G MCX415A-CCAT (1x100G) + + * Host interface: PCI Express 3.0 x16 + * Device ID: 15b3:1013 + * Firmware version: 12.18.1000 + + * Mellanox(R) ConnectX(R)-4 100G MCX416A-CCAT (2x100G) + + * Host interface: PCI Express 3.0 x16 + * Device ID: 15b3:1013 + * Firmware version: 12.18.1000 + + * Mellanox(R) ConnectX(R)-4 Lx 10G MCX4121A-XCAT (2x10G) + + * Host interface: PCI Express 3.0 x8 + * Device ID: 15b3:1015 + * Firmware version: 14.18.1000 + + * Mellanox(R) ConnectX(R)-4 Lx 25G MCX4121A-ACAT (2x25G) + + * Host interface: PCI Express 3.0 x8 + * Device ID: 15b3:1015 + * Firmware version: 14.18.1000 + + * Mellanox(R) ConnectX(R)-5 100G MCX556A-ECAT (2x100G) + + * Host interface: PCI Express 3.0 x16 + * Device ID: 15b3:1017 + * Firmware version: 16.18.1000 + + * Mellanox(R) ConnectX-5 Ex EN 100G MCX516A-CDAT (2x100G) + + * Host interface: PCI Express 4.0 x16 + * Device ID: 15b3:1019 + * Firmware version: 16.18.1000 + +* IBM(R) Power8(R) with Mellanox(R) NICs combinations + + * Machine: + + * Processor: POWER8E (raw), AltiVec supported + + * type-model: 8247-22L + * Firmware FW810.21 (SV810_108) + + * OS: Ubuntu 16.04 LTS PPC le + + * MLNX_OFED: 4.0-1.0.1.0 + + * NICs: + + * Mellanox(R) ConnectX(R)-4 10G MCX4111A-XCAT (1x10G) + + * Host interface: PCI Express 3.0 x8 + * Device ID: 15b3:1013 + * Firmware version: 12.18.1000 + + * Mellanox(R) ConnectX(R)-4 10G MCX4121A-XCAT (2x10G) + + * Host interface: PCI Express 3.0 x8 + * Device ID: 15b3:1013 + * Firmware version: 12.18.1000 + + * Mellanox(R) ConnectX(R)-4 25G MCX4111A-ACAT (1x25G) + + * Host interface: PCI Express 3.0 x8 + * Device ID: 15b3:1013 + * Firmware version: 12.18.1000 + + * Mellanox(R) ConnectX(R)-4 25G MCX4121A-ACAT (2x25G) + + * Host interface: PCI Express 3.0 x8 + * Device ID: 15b3:1013 + * Firmware version: 12.18.1000 + + * Mellanox(R) ConnectX(R)-4 40G MCX4131A-BCAT/MCX413A-BCAT (1x40G) + + * Host interface: PCI Express 3.0 x8 + * Device ID: 15b3:1013 + * Firmware version: 12.18.1000 + + * Mellanox(R) ConnectX(R)-4 40G MCX415A-BCAT (1x40G) + + * Host interface: PCI Express 3.0 x16 + * Device ID: 15b3:1013 + * Firmware version: 12.18.1000 + + * Mellanox(R) ConnectX(R)-4 50G MCX4131A-GCAT/MCX413A-GCAT (1x50G) + + * Host interface: PCI Express 3.0 x8 + * Device ID: 15b3:1013 + * Firmware version: 12.18.1000 + + * Mellanox(R) ConnectX(R)-4 50G MCX414A-BCAT (2x50G) + + * Host interface: PCI Express 3.0 x8 + * Device ID: 15b3:1013 + * Firmware version: 12.18.1000 + + * Mellanox(R) ConnectX(R)-4 50G MCX415A-GCAT/MCX416A-BCAT/MCX416A-GCAT (2x50G) + + * Host interface: PCI Express 3.0 x16 + * Device ID: 15b3:1013 + * Firmware version: 12.18.1000 + + * Mellanox(R) ConnectX(R)-4 50G MCX415A-CCAT (1x100G) + + * Host interface: PCI Express 3.0 x16 + * Device ID: 15b3:1013 + * Firmware version: 12.18.1000 + + * Mellanox(R) ConnectX(R)-4 100G MCX416A-CCAT (2x100G) + + * Host interface: PCI Express 3.0 x16 + * Device ID: 15b3:1013 + * Firmware version: 12.18.1000 + + * Mellanox(R) ConnectX(R)-4 Lx 10G MCX4121A-XCAT (2x10G) + + * Host interface: PCI Express 3.0 x8 + * Device ID: 15b3:1015 + * Firmware version: 14.18.1000 + + * Mellanox(R) ConnectX(R)-4 Lx 25G MCX4121A-ACAT (2x25G) + + * Host interface: PCI Express 3.0 x8 + * Device ID: 15b3:1015 + * Firmware version: 14.18.1000 + + * Mellanox(R) ConnectX(R)-5 100G MCX556A-ECAT (2x100G) + + * Host interface: PCI Express 3.0 x16 + * Device ID: 15b3:1017 + * Firmware version: 16.18.1000 + +* Intel(R) platforms with Intel(R) NICs combinations + + * Platform details + + * Intel(R) Atom(TM) CPU C2758 @ 2.40GHz + * Intel(R) Xeon(R) CPU D-1540 @ 2.00GHz + * Intel(R) Xeon(R) CPU E5-4667 v3 @ 2.00GHz + * Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz + * Intel(R) Xeon(R) CPU E5-2699 v3 @ 2.30GHz + * Intel(R) Xeon(R) CPU E5-2695 v4 @ 2.10GHz + * Intel(R) Xeon(R) CPU E5-2658 v2 @ 2.40GHz + + * OS: + + * CentOS 7.2 + * Fedora 25 + * FreeBSD 11 + * Red Hat Enterprise Linux Server release 7.3 + * SUSE Enterprise Linux 12 + * Wind River Linux 8 + * Ubuntu 16.04 + * Ubuntu 16.10 + + * NICs: + + * Intel(R) 82599ES 10 Gigabit Ethernet Controller + + * Firmware version: 0x61bf0001 + * Device id (pf/vf): 8086:10fb / 8086:10ed + * Driver version: 4.0.1-k (ixgbe) + + * Intel(R) Corporation Ethernet Connection X552/X557-AT 10GBASE-T + + * Firmware version: 0x800001cf + * Device id (pf/vf): 8086:15ad / 8086:15a8 + * Driver version: 4.2.5 (ixgbe) + + * Intel(R) Ethernet Converged Network Adapter X710-DA4 (4x10G) + + * Firmware version: 5.05 + * Device id (pf/vf): 8086:1572 / 8086:154c + * Driver version: 1.5.23 (i40e) + + * Intel(R) Ethernet Converged Network Adapter X710-DA2 (2x10G) + + * Firmware version: 5.05 + * Device id (pf/vf): 8086:1572 / 8086:154c + * Driver version: 1.5.23 (i40e) + + * Intel(R) Ethernet Converged Network Adapter XL710-QDA1 (1x40G) + + * Firmware version: 5.05 + * Device id (pf/vf): 8086:1584 / 8086:154c + * Driver version: 1.5.23 (i40e) + + * Intel(R) Ethernet Converged Network Adapter XL710-QDA2 (2X40G) + + * Firmware version: 5.05 + * Device id (pf/vf): 8086:1583 / 8086:154c + * Driver version: 1.5.23 (i40e) + + * Intel(R) Corporation I350 Gigabit Network Connection -.. This section should contain a list of OSes that were tested with this release. - The format is as follows, in alphabetical order: - - * CentOS 7.0 - * Fedora 23 - * Fedora 24 - * FreeBSD 10.3 - * Red Hat Enterprise Linux 7.2 - * SUSE Enterprise Linux 12 - * Ubuntu 15.10 - * Ubuntu 16.04 LTS - * Wind River Linux 8 - - This section is a comment. do not overwrite or remove it. - Also, make sure to start the actual text at the margin. - ========================================================= + * Firmware version: 1.48, 0x800006e7 + * Device id (pf/vf): 8086:1521 / 8086:1520 + * Driver version: 5.2.13-k (igb)