Printable version

Drivers & software

* RECOMMENDED * Mellanox InfiniBand and Ethernet Driver for Operating System Windows Server 2012

By downloading, you agree to the terms and conditions of the Hewlett Packard Enterprise Software License Agreement.
Note:  Some software requires a valid warranty, current Hewlett Packard Enterprise support contract, or a license fee.

Type: Driver - Network
Version: 4.2(6 Nov 2012)
Operating System(s): Microsoft Windows Server 2012
File name: MLNX_VPI_win8_x64_4_2.zip (21 MB)
InfiniBand and Ethernet driver for use with Microsoft Windows Server 2012

Upgrade Requirement:
Recommended - HP recommends users update to this version at their earliest convenience.

It is recommended to make sure that the inbox Mellanox driver is not in use, prior to installing WinOF v4.2 on a Windows 2012 machine. This is done by removing any Mellanox adapters from "Device Manager". Please refer "installation notes" for details.


General Features:

  • Modified RSS cores and changed VMQ affinity on the fly.
  • Fixed restart issue when there are not enough MSI-X vectors for each machine core.
  • Added support for K-GROUPS processors (more than 64 processors support) to allow assignment of MSI-X affinity for multiple processor groups.
  • Set an adequate number of MTTs to map all physical memory.
  • Allocated firmware and ICM memory in chunks of non-paged memory instead of using contiguous physical memory.
  • Fixed RSS indirection table mapping building when there are less RX rings than RSS cores.
  • Fixed a bug, preventing standard work with BAR value more than 4GB.
  • Fixed memory leaks.
  • Fixed error flows causing a Bluescreen in driver startup\unload.
  • Fixed a Bluescreen occurrence upon shutdown due to leak in active resources.
  • Changed device names in device manager and their hardware IDs. The changes were made to distinguish between ConnectX-2 and ConnectX-3:
    • for ConnectX-2: MLX4\ConnectX-2_Eth and IBA\ConnectX-2_IPoIB
    • for ConnectX-3: MLX4\ConnectX-3_Eth and IBA\ConnectX-3_IPoIB
    • Set QoS settings only for ConnectX-3. Changing the hardware ID, forces the OS to install new device and re-build the registry keys.
  • Added an event log to indicate driver failure upon start if there are two HCA burned with the same GUID.
  • Added firmware upgrade support as part of the setup process. The setup burns the new firmware only on Mellanox cards. Firmware burning failure does not prevent the driver’s installation, therefore, it will show a warning. In this case, it is recommended to update the firmware manually.
  • Enabled configuration of TxRingNum registry key from the UI.
  • Improved the "Port Protocol" dialog.
  • Added Registry key documentation to the setup package.
Performance Enhancements:
  • Optimized code performance.
  • Increased send parallelism.
  • Memory used in receive flow is now allocated with the same affinity of the handling processor for faster access.
  • Statistics parameters are now directly read from hardware instead of being calculated by software.
  • Added support for BlueFlame. BlueFlame is now the default working mode for all packets that have a descriptor which fits into a BF register (currently 256 bytes). Use "BlueFlame" registry key to enable\disable this feature.
  • Added support for RSS functionality on available processors numbers. Used to be restricted to start at the first processor.
  • Changed RSS registry defaults to give better out of the box performance.
  • Added a performance UI to tune performance under various scenarios.
  • Added a tool to tune performance under various scenarios.
Ethernet Features:
  • Added support for multiple TX rings.
  • Added an option to verify that the number of multicast groups used is no higher than the firmware limits.
  • Improved performance in virtualization when using VMQ.
IPoIB Features:
  • Fixed a bug that prevented IBAL applications from working on machines with 2 cards.
  • Fixed a bug that caused packet drop on remote node when the first sent packet is not an ARP or a multicast packet.
  • Added support for multiple TX rings. The new driver advertises its TSS capability (using multiple TX rings). This feature will not be used when communicating with older version drivers (such as the inbox driver). This way IPv4 communication in a mixed environment that includes the inbox driver should work. IPv6 communication may be problematic in such an environment.
  • Eliminated some race conditions in IPoIB mcast handling.
  • Added mcast addresses according to the Windows mcast table in addition to mcast addresses from igmp\mld queries, in order to connect to such mcasts that are not reported by the queries.
  • Removed redundant LID_CHANGE events. This fixes the redundant reconnection of all IPoIB mcasts.
  • Added support for VM migration. When a VM is migrated from one host to another it does not send a new ARP to hosts it already knew when it was sitting on the first host. In order to prevent communication interruption to such hosts, the driver will initiate an ARP to learn them again.
  • Fixed IPoIB VMQ affinity update bugs.
  • Fixed IPoIB VMQ parent queue management race during reset.
  • Fixed a bug in passing DHCP packets from a Linux VM.
  • Fixed bug in RDMA statistics for NDK.
  • Removed affinity restriction to group 0 for NDK.
  • Added support for the part_man tool. It can create only one additional IPoIB interface per port GUID. This feature can be utilized to use different IPoIB interfaces for SMB and Hyper-V. The virtual ports configuration is removed during uninstallation.
  • The following tools were added to the setup package:
    • ibv_asyncwatch.exe
    • ibv_atomic_bw.exe
    • ibv_atomic_lat.exe
    • ibv_devinfo.exe
    • ibv_rc_pingpong.exe
    • ibv_rdma_bw.exe
    • ibv_rdma_lat.exe
    • ibaddr.exe
    • ibcacheedit.exe
    • iblinkinfo.exe
    • ibqueryerrors.exe
    • ibsysstat.exe
    • saquery.exe
    • smpdump.exe

Prerequisites:

  • Mellanox CX2 device running Firmware version 2.10.0720 or newer.
  • Mellanox CX3 device running Firmware version 2.11.0500 or newer.

To ensure the integrity of your download, HP recommends verifying your results with this MD5 Checksum value:

MLNX_VPI_win8_x64_4_2.zip 06d6132b83a7729527b11f4cfe0c5f5d

Reboot Requirement:
Reboot is required after installation for updates to take effect and hardware stability to be maintained.


Installation:

It is recommended to make sure that the inbox Mellanox driver is not in use, prior to installing WinOF v4.2 on a Windows 2012 machine. This is done by removing any Mellanox adapters from "Device Manager". Detailed steps are mentioned below:

  1. Open "Control Panel -> Hardware -> Device Manager".
  2. Under "Network Adapters", right click "Mellanox IPoIB adapter" and select "Uninstall".
  3. A dialog box opens with a warning "You are about to uninstall the device from your system". Confirm by clicking "OK".
  4. Repeat steps 2 and 3 for "Mellanox IPoIB adapter #2", in case it exists.

Note: Ensure "Scan for hardware changes" or reboot is not done at this point.

Steps for Installing Mellanox VPI driver version 4.2:

  1. Download "MLNX_VPI_win8_x64_4_2.zip" on to the node.
  2. Extract contents of the zip file.
  3. Double click "MLNX_VPI_win8_x64_4_2.exe" and follow the instructions for installation as explained below:
  • Click “NEXT” on the Welcome screen.
  • Accept license agreement and click “NEXT”.
  • Accept default location “C:\Program Files\Mellanox\MLNX_VPI\” and click “NEXT”.
  • For HP supported Mellanox adapters, a message "An old firmware version was detected. Please contact your OEM to upgrade to a newer version" is displayed in case the firmware version is outdated. Click "Next".
  • Check the box "Configure your system for maximum 10GigE performance" and click "NEXT".
  • Select setup type "Complete" and click "Next".
  • Click "Install".
  • Once complete, click “Finish”.
  • Restart the node when prompted.
  1. It is highly recommended to follow instructions from "Performance_Tuning_Guide_for_Mellanox_Network_Adapters_v1.6.pdf" (also included in the zip file) for optimal performance of Mellanox network adapters.

End User License Agreements:
Hewlett-Packard End User License Agreement


Upgrade Requirement:
Recommended - HP recommends users update to this version at their earliest convenience.

It is recommended to make sure that the inbox Mellanox driver is not in use, prior to installing WinOF v4.2 on a Windows 2012 machine. This is done by removing any Mellanox adapters from "Device Manager". Please refer "installation notes" for details.


Important:
Beta Features:

  • OpenSM is currently at beta level. We do not recommend using it in deployment setups. If Subnet Manager is required in your setup, please use Mellanox Managed switch or download the OpenSM from http://openfabrics.org
  • WinVerbs is currently at beta level. We recommend using ND over IBAL
Known Issues:
  • General Known Issues
  • On rare occasions, as a result of port configuration change (IB/ETH and enabling or disabling RoCE) the UI may get stuck for up to a few minutes. This effect does not require any user action. The UI returns to its proper functionality after a few minutes.
  • WinOF inbox driver does not support upgrade. It is recommended to uninstall the inbox driver pior to installing WinOF v4.2 on a Windows 2012 machine
  • In order to get higher performance when using multicast packets, the user should use different UDP ports. Without separate ports for each stream, WinSock multiplexes every packet to every subscriber socket and then filters it out. This is different to Linux which performs no additional filtering, and each socket will see all the packets.
  • The "Packets Received Discarded" and "Packets Received Errors" counter may display wrong results.
  • Firmware upgrade may fail during installation if there was a prior firmware upgrade on the machine without a reboot after it. A firmware upgrade failure does not fail the whole installation.
  • The drivers’ functionality is limited up to 1TB of memory and up to 128 cores.
  • Applications compiled with the SDK of previous WinOF versions should be recompiled with the latest SDK. 
  • InfiniBand Drivers Known Issues
    • IPoIB does not support:
      • MAC address change
      • QoS (packet priority)
      • Load balancing and fail-over (LBFO)
      • Connected Mode
      • Partitions
    • In an interoperability environment that has both Linux and Windows OSs, the MTU value must be the same, otherwise packets larger than the minimum will not go through. The default MTU for Linux is 2K and for Windows it's 4K.
    • Old InfiniBand application must be recompiled with latest SDK.
    • iSCSI boot over IPoIB is currently not functional.
    • OpenSM is not run as a service during installation. The reason is that since the SM should get the GUID parameter to decide which port it works on, setting it in setup will lead it to work only for first port and not for others.
      • To run OpenSM as a service, assuming the package was installed in default path, use:
        sc create opensm binPath= "c:\Program Files\Mellanox\MLNX_VPI\IB\Tools\opensm.exe"
      • To start the service run:
        sc start opensm
    • Tools issues:
      • ibportstate doesn't work on RoCE ports
      • The user can run both IBAL and winverbs ND providers at same time
      • MpiTest may get stuck on winverbs. WinVerbs is currently at beta level. We recommend using ND over IBAL
      • ibdiagpath may crash on Hyper-V machines
    • If an application which uses InfiniBand runs while the driver is being restarted, a bluescreen or an NMI may occur.
    • If OpenSM is up during driver restart on the same machine, it might stop working when the driver is back up. To resume operation, stop the OpenSM and restart the driver again while OpenSM is down.
    • Virtual IPoIB interface, created by part_man, reports Active state when the physical link is in Initializing state and OpenSM is not running in the subnet. 
  • Ethernet Drivers Known Issues
    • High multicast drop rate on multicast storming. 
  • RDMA over Converged Ethernet (RoCE) Known Issues
    • RoCE does not support:
      • Traffic cannot go through the router. It works in the same subnet only
      • Multicast traffic
      • VLAN
      • Layer-3 features
    • RoCE dynamic priority change is not supported in firmware version 2.11.500. It will be supported in firmware version 2.11.1000 
  • Hyper-V Known Issues:
    • When the vSwitch is detached from the ETH\IPoIB device while the driver is disabled, the device does not reacquire the static IP it had before the attachment of the vSwitch. When the vSwitch is attached to the ETH\IPoIB device while there is no link, it will not receive the device IP when the link is back up.
    • After attaching the vSwitch to the ETH\IPoIB device, changing the “Jumbo Packet” registry key on the ETH\IPoIB device does not affect the vSwitch configuration.
      • Workaround: Reattach the vSwitch to sync with the value set in the ETH\IPoIB device.
    • When VMQ is enabled after reset, the driver loads all the VMQs that existed before the reset. It is not guaranteed that each VMQ will receive the same QP number it had before the reset. This can cause some delay as a result of resetting before connectivity is reestablished. The delay is caused by the time it takes for the ARP table to update after initiating the Gratuitous ARP.
    • When the vSwitch is detached from the ETH\IPoIB device while the driver is disabled, the device does not reacquire the static IP it had before the attachment of the vSwitch. When the vSwitch is attached to the ETH\IPoIB device while there is no link, it will not receive the device IP when the link is back up.
    • After disabling and enabling a port on a guest, a ping to it may be renewed after one minute. The ARP requests sent by Windows are less frequent as the time passes. If the guest port was down for a while, it could take time until Windows decides to send another ARP request to it.
    • In IPoIB when using long Multicast traffic from a Virtual Machine (VM) to an external host there might be up to 0.5% loss in 5% bursts.
    • In Ethernet to achieve better iperf TCP performance between a Linux VM and a Windows VM on different hosts, when using MS MUX over the Ethernet driver, use the non VMQ mode for the VMs.
    • The IPoIB non-VMQ mode is supported only when the VMQ is enabled according to the registry values.
      • Workaround: To use the non-VMQ mode for a VM, change its settings as follows:
        • Select "Settings" on the VM
        • Go to Network Adapter -> Hardware Acceleration
        • Un-check the "Enable virtual machine queue"

Notes:

Certain software including drivers and documents may be available from Mellanox. If you select a URL that directs you to http://www.mellanox.com/, you are then leaving HP.com. Please follow the instructions on http://www.mellanox.com/ to download Mellanox software or documentation. When downloading the Mellanox software or documentation, you may be subject to Mellanox terms and conditions, including licensing terms, if any, provided on its website or otherwise. HP is not responsible for your use of any software or documents that you download from http://www.mellanox.com/, except that HP may provide a limited warranty for Mellanox software in accordance with the terms and conditions of your purchase of the HP product or solution.

Driver installation guide, Release notes and User manual are available from Mellanox website at the below link:
http://www.mellanox.com/content/pages.php?pg=products_dyn&product_family=32&menu_section=34#tab-two


Beta Features:
  • OpenSM is currently at beta level. We do not recommend using it in deployment setups. If Subnet Manager is required in your setup, please use Mellanox Managed switch or download the OpenSM from http://openfabrics.org
  • WinVerbs is currently at beta level. We recommend using ND over IBAL
Known Issues:
  • General Known Issues
  • On rare occasions, as a result of port configuration change (IB/ETH and enabling or disabling RoCE) the UI may get stuck for up to a few minutes. This effect does not require any user action. The UI returns to its proper functionality after a few minutes.
  • WinOF inbox driver does not support upgrade. It is recommended to uninstall the inbox driver pior to installing WinOF v4.2 on a Windows 2012 machine
  • In order to get higher performance when using multicast packets, the user should use different UDP ports. Without separate ports for each stream, WinSock multiplexes every packet to every subscriber socket and then filters it out. This is different to Linux which performs no additional filtering, and each socket will see all the packets.
  • The "Packets Received Discarded" and "Packets Received Errors" counter may display wrong results.
  • Firmware upgrade may fail during installation if there was a prior firmware upgrade on the machine without a reboot after it. A firmware upgrade failure does not fail the whole installation.
  • The drivers’ functionality is limited up to 1TB of memory and up to 128 cores.
  • Applications compiled with the SDK of previous WinOF versions should be recompiled with the latest SDK. 
  • InfiniBand Drivers Known Issues
    • IPoIB does not support:
      • MAC address change
      • QoS (packet priority)
      • Load balancing and fail-over (LBFO)
      • Connected Mode
      • Partitions
    • In an interoperability environment that has both Linux and Windows OSs, the MTU value must be the same, otherwise packets larger than the minimum will not go through. The default MTU for Linux is 2K and for Windows it's 4K.
    • Old InfiniBand application must be recompiled with latest SDK.
    • iSCSI boot over IPoIB is currently not functional.
    • OpenSM is not run as a service during installation. The reason is that since the SM should get the GUID parameter to decide which port it works on, setting it in setup will lead it to work only for first port and not for others.
      • To run OpenSM as a service, assuming the package was installed in default path, use:
        sc create opensm binPath= "c:\Program Files\Mellanox\MLNX_VPI\IB\Tools\opensm.exe"
      • To start the service run:
        sc start opensm
    • Tools issues:
      • ibportstate doesn't work on RoCE ports
      • The user can run both IBAL and winverbs ND providers at same time
      • MpiTest may get stuck on winverbs. WinVerbs is currently at beta level. We recommend using ND over IBAL
      • ibdiagpath may crash on Hyper-V machines
    • If an application which uses InfiniBand runs while the driver is being restarted, a bluescreen or an NMI may occur.
    • If OpenSM is up during driver restart on the same machine, it might stop working when the driver is back up. To resume operation, stop the OpenSM and restart the driver again while OpenSM is down.
    • Virtual IPoIB interface, created by part_man, reports Active state when the physical link is in Initializing state and OpenSM is not running in the subnet. 
  • Ethernet Drivers Known Issues
    • High multicast drop rate on multicast storming. 
  • RDMA over Converged Ethernet (RoCE) Known Issues
    • RoCE does not support:
      • Traffic cannot go through the router. It works in the same subnet only
      • Multicast traffic
      • VLAN
      • Layer-3 features
    • RoCE dynamic priority change is not supported in firmware version 2.11.500. It will be supported in firmware version 2.11.1000 
  • Hyper-V Known Issues:
    • When the vSwitch is detached from the ETH\IPoIB device while the driver is disabled, the device does not reacquire the static IP it had before the attachment of the vSwitch. When the vSwitch is attached to the ETH\IPoIB device while there is no link, it will not receive the device IP when the link is back up.
    • After attaching the vSwitch to the ETH\IPoIB device, changing the “Jumbo Packet” registry key on the ETH\IPoIB device does not affect the vSwitch configuration.
      • Workaround: Reattach the vSwitch to sync with the value set in the ETH\IPoIB device.
    • When VMQ is enabled after reset, the driver loads all the VMQs that existed before the reset. It is not guaranteed that each VMQ will receive the same QP number it had before the reset. This can cause some delay as a result of resetting before connectivity is reestablished. The delay is caused by the time it takes for the ARP table to update after initiating the Gratuitous ARP.
    • When the vSwitch is detached from the ETH\IPoIB device while the driver is disabled, the device does not reacquire the static IP it had before the attachment of the vSwitch. When the vSwitch is attached to the ETH\IPoIB device while there is no link, it will not receive the device IP when the link is back up.
    • After disabling and enabling a port on a guest, a ping to it may be renewed after one minute. The ARP requests sent by Windows are less frequent as the time passes. If the guest port was down for a while, it could take time until Windows decides to send another ARP request to it.
    • In IPoIB when using long Multicast traffic from a Virtual Machine (VM) to an external host there might be up to 0.5% loss in 5% bursts.
    • In Ethernet to achieve better iperf TCP performance between a Linux VM and a Windows VM on different hosts, when using MS MUX over the Ethernet driver, use the non VMQ mode for the VMs.
    • The IPoIB non-VMQ mode is supported only when the VMQ is enabled according to the registry values.
      • Workaround: To use the non-VMQ mode for a VM, change its settings as follows:
        • Select "Settings" on the VM
        • Go to Network Adapter -> Hardware Acceleration
        • Un-check the "Enable virtual machine queue"
Version:5.50.50000 (13 Aug 2018)
Fixes

Upgrade Requirement:
Recommended - HPE recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 5.50.50000:

  • System would cease functioning when the vNic was detached from the VM during heavy traffic when in VMQ\VMMQ mode.
  • RoCE connection failed occasionally when the Universal/Local (U/L) bit in the MAC was set to 1.
  • Disabled the option to stop the uninstall process once the driver uninstallation process started.
  • Networks with new Subnet Managers (OpenSM 4.7.0 and up) would drop malformed multicast-join packets issued by the driver. The driver now constructs the multicast join request correctly.
  • Driver would not load due to a race condition that existed between the resiliency flow and the FLR request when issuing an OID_SRIOV_RESET_VF request to reset a specified PCI Express (PCIe) Virtual Function (VF).
  • The driver would reset the adapter as a result of a false alarm indicating that a receive queue was not processing.
  • The Memory Region (MR) was displayed as registered when it was not, thus prevented the user from accessing it. This incorrect status display of MR was a result of the ND function “INDEndpoint” reporting error status when it returned from the underlying functions. This fix verifies that the user will receive the correct error status upon such scenario.
  • MSI-X cores in Virtual Function was limited 8. This limit has been expanded to 128.
  • BSOD occurred on servers with more than 64 cores because the Tx traffic did not honor the Tx affinity implied by the TSS, when the number of potential RSS CPUs was greater than 64.
  • When the mlxtool dbg resources command executed, the FS_RULE quota number displayed instead of the "Managed by PF" message.
  • When setting the LogNumQp and LogNumRdmaRc registry settings to their maximum value, the WinOF bus driver failed to load.
  • The "TX Ring Is Full Packets" perfmon counter did not function properly on IPoIB.
  • When installing the driver over Microsoft Windows Server 2012 R2 inbox driver, the LogNumQP parameter remained in the registry. Thus, a number of QPs were limited to 64K instead of 512K (the driver’s default).
  • Communication Manager would stop functioning while attempting to obtain ND/NDK connection.
  • Command failure and protection domain violation occurred when running the ND application.
  • Mlxtool command, “mlxtool dbg ipoib-ep []”, reported partial results of the EndPoint list when there was a large number of endpoints.
  • VM would stop functioning when restarting the PF drivers and their peers in the target machine. The VM had to be force-restarted to restore the functionality.
  • Set a wrong value to the *ReceiveBuffers key when it was restored to default.
  • System would stop functioning and had to be force-restarted when any one or more of the following conditions occurred:
    • When changing the Ethernet IP address while RDMA traffic was running.
    • During driver startup when working in RSS mode
    • When the interface connected to vSwitch was disabled and the operating system did not clean all VMQs.
    • Upon ND connection establishment.
    • Occasionally, on driver load, when the driver was waiting for firmware boot to be completed before accessing the firmware.
  • A BSOD that occurred when a memory allocation failed upon driver startup.
  • The connection port numbers did not increase sequentially when running nd_*_bw application with multiple QPs.
  • Tx traffic did not honor the Tx affinity implied by the TSS when the number of potential RSS CPUs was greater than 64.
  • When the driver was installed over Microsoft Windows Server 2012 R2 inbox driver, the number of QPs was limited to 64K instead of 512K (the driver’s default) because the LogNumQP parameter remained in the registry/.
  • Removing a PKey that was a part of an IPoIB team interface disabled the team and the option to delete it.
  • An incorrect number of HCAs was returned from executing the Get-MlnxPCIDeviceSriovSetting command.
  • The mlxtool dbg resources command failed to pull information about the last VF, and showed the PF as VF0.
  • Using invalid parameters in mlxtool perfstat command resulted in infinite waiting time and results were not returned.
  • The Get-MlnxPCIDeviceSriovSetting command failed on a server with more than one device, when one of the devices was disabled. Following the fix, the command returned results only for the devices that were enabled.
  • When installing the driver on Microsoft Windows Server 2012 virtual machine in SR-IOV mode with more than 2 VFs, the installation time was excessively long.
  • A wrong link state was reported by “ibstat” command when the PF physical port was 2.
  • When running mlxtool, show perfstats, incorrect Rx counters were returned when working in polling mode.
  • When a bus driver restart was followed by a miniport driver restart, the vSwitch port setting changed to internal.
  • Black screen occurred on driver startup in a VM with two VFs or more.
  • BSOD occurred while installing WinOF v5.35 due to stack usage overrun.
  • RoCE fallback mode did not work when SR-IOV was enabled.
  • When running the ND application, a command failure and protection domain violation occurred.
  • On hypervisor, when one Ethernet port was binded to vmswitch in which SR-IOV was enabled, Network Direct applications did not work on the second port.
  • QP state change command was allowed to execute when the QP was not in a valid state. This caused event viewer flooding.
Enhancements

New Features in Version 5.50.50000:

  • Dump Me Now (DMN), a bus driver (mlx4_bus.sys) feature that generates dumps and traces from various components, including hardware, firmware and software, upon internally detected issues (by the resiliency sensors), user requests (mlxtool) or ND application requests via the extended Mellanox ND API. DMN is unsupported on VFs
  • Support for systems with up to 252 logical processors when Hyperthreading is enabled and up to 126 logical processors when Hyperthreading is disabled
  • RSC solution in TCP/IP traffic to reduce CPU overhead
  • NDSPI to control CQ moderation
  • A new counter for packets with no destination resource
  • A new registry key that allows users to configure the E2E Congestion Control feature
  • Ability to collect firmware MST dumps in cases of system bug check
  • A counter for the number of packets discarded due to an invalid QP number.
  • DSCP based counters to support traffic where no VLAN/priority is present.
  • Added support for servers with more than 64 cores.

Improvements to existing functionality in version 5.50.50000:

  • Vlan_config tool now includes the ability to create VLANs for the Physical Function (PF) in addition to the Virtual Function (VF).
  • VMQ over IPoIB is now supported with Microsoft Windows Server 2016.
  • An event log message (ID 273) is printed when the number of resources to load the VF is insufficient.
  • RoCE TTL default value has been changed from 128 to 16 which improves the overall packet routing efficiency.

Version:5.35.FUR (6 Aug 2017)
Fixes

Upgrade Requirement:
Recommended - HPE recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 5.35 Fast Update Release (FUR):

  • A fragmented packet (with more than 41 fragments) could lead to duplicated headers when working with LSO (Large Send offload).
  • Low bandwidth issue when using Software vRSS (Virtual Receive Side Scaling).

The following issues have been resolved in version 5.35:

  • Non-optimal out of box performance occured for virtual function.
  • Firmware upgrade failure (error code 9) occured during installation, when RoCE was disabled.
  • Miniport reset led to a driver hang when occurred during driver disabling, or to a system crash when occurred during driver shutdown.

The following issues have been resolved in version 5.22:

  • Fixed an issue that caused the perf_tuning.exe tool cease to function in case of Microsoft Windows 10 operating system, when running a dual-port configuration. 
  • Old SriovEnable registry key is now obsolete. SR-IOV is now enabled by default.
  • The system would unexpectedly cease to function due to a wrong detection of the Forwarding scenario. 
  • Improved the notification about the port type settings events in the Windows systrem event Logs.
  • Fixed an issue where the RDSH service had to be disabled even if the CIM provider was not selected as part of the installation.
  • Fixed an issue which resulted in BSOD 0x1E (KMODE_EXCEPTION_NOT_HANDLED) when the machine had multiple network port (whether a single physical card with multiple network ports or multiple single-port cards) with some ports configured with SR-IOV enabled, and some with SR-IOV disabled.
  • Fixed a wrong multicast attach flow in IPoIB which caused both ports to receive multicast messages sent for one of them. Those packets were dropped later on and had no effect on the receiving traffic in the wrong destination, but it did increment the "Packets Received Error" counter.
  • Fixed the NetworkDirect API INDAdapter::Listen() return status when the requested port was already in use. Changed the status from the non-compliant ND_INVALID_PARAMETER to the specification-compliant ND_ADDRESS_ALREADY_EXISTS.
  • Added a mechanism to ensure that listeners will not receive the same ephemeral port. The driver uses the default range of ephemeral ports 49152 to 65535.
  • Fixed an ND applications return status when a Send request failed with RNR. Changed the status from the non-compliant STATUS_DATA_NOT_ACCEPTED to the specification-compliant STATUS_IO_TIMEOUT.
  • Fixed a race in IPoIB multicast management which caused an interface not to re-register on a multicast group after an SM restart. Such behavior resulted in traffic loss.
  • Fixed an issue which prevented the 'ibdiagnet --get_cable_info' command from showing information on the cables in remote nodes.
  • Fixed an issue which disabled VXLAN offload when received OID_TCP_OFFLOAD_PARAMETERS with EncapsulationPacketTaskOffload Enabled and the VxlanUDPPortNumber set to 0.
  • Fixed wrong counting of MTT-pages shown under "Mellanox WinOF Bus Counters".
  • Fixed an issue which caused the CIM provider installation to fail when another provider which uses the same classes was installed.
  • When the cleanup operation started before an IPoIB initialization was completed, an IPoIB initialization error flow cleanup would cause the timer execution process to cease unexpectedly.
  • Fixed an issue which resulted in BSOD when the NIC received illegal OID_RECEIVE_FILTER_QUEUE_PARAMETERS value with QueueID higher than reported.
  • Fixed an issue which prevented the TEAM interface and the VLAN interface to send and receive traffic at the same time. Now both the TEAM and the VLAN interfaces work at the same time where the TEAM interface handles all untagged frames and the VLAN interface handles the tagged frames.
  • Fixed an issue causing BSOD upon driver restart in VM.
  • Added to VSTAT the ability to show the ports’ state in all port configurations (e.g. Ethernet, RoCE) and for several cards.
  • Fixed an issue that caused the system to hang when the driver was installed and RDMA applications were opened.
  • Disabled encapsulation offload capabilities for VFs regardless of the device capability to support it.
  • Added event-viewer message to identify "PortType" registry in case the port is configured for a unsupported type. For example if the device supports only Ethernet and the port is configured for IB the event-viewer message will be displayed.
  • Fixed a bluescreen issue caused by calling NDK_FN_DISCONNECT on a not connected NDK_CONNECTOR.
  • Fixed an issue causing the IP fragmentation not to function properly, consequently discarding large packets, when SR-IOV was turned ON and the "Jumbo Packet" field on the "Advanced" tab of the Ethernet driver's properties (in device manager) was set to 9602 or more.
  • Modified the event viewer-log message displayed when the PCI virtualization does not support SR-IOV. The new message is: "SR-IOV cannot be enabled due to an error in the PCI_VIRTUALIZATION_INTERFACE. Possible reason, the machine does not support SR-IOV."
  • Fixed an issue causing the system to crash when creating a team from the GUI.
  • Fixed an issue where the TTL setting for the RDMA traffic could not be changed. The current solution is now defined for these three cases, first when the driver will look for private parameter in ibbus\parameters\DefaultTTL, Second If it does not exist, it will take it from TCP/IP configuration (tcpip\parameters\DefaultTTL) and third, if not found, it will use TCP/IP default of 128.
  • Fixed an issue which resulted in interface disabling failure, and system crash when disabling the system, when multi-streams of sent fragmented/small packets could not be sent/returned to the OS. 
  • Fixed an issue causing a Black Screen in Windows guest OS running over non-Windows SR-IOV Hypervisor with two IPoIB adapters when the OpenSM was not running.
  • Fixed wrong packets handling when the number of fragments equals the maximum allowed which resulted in a crash when the fragments array was higher then the allowed value.
  • Fixed an OpenSM issue which caused the driver to crash.
  • Fixed an issue which caused the drivers to not work properly or crash as a result of setting values lower than the their default value.
  • Fixed an issue causing memory leakage when uninstalling the PF driver when vSwitch is connected to the device.
  • Fixed a performance tuning issue when using the "Performance" tab in the Advanced property page. Performance tuning did not work as expected on certain systems that have processor groups enabled. Users saw unexpected RSS CPU's assigned. Now the following event log can be seen in logs: “Detected issues with Processor groups on the system that may cause performance degradation. Disable processor groups for best results."
  • Fixed an issue where NDv2 adapter query reported MaxInlineDataSize as zero regardless of the device’s capability.
  • Fixed synchronization issue between NDK OIDs and driver's halt command. The driver started unloading before all the NDK OIDs were completed causing unexpected behavior in the system.
  • Fixed an issue that caused the system to hang when the driver failed to allocate contiguous memory on driver load.
  • Fixed wrong MAC creation from GUIDs that start with E4 D1 D2. In addition to applying the GUIDMask, the bug used to alternate the first byte of the created MAC. This alternation may have caused problems in communication with DHCP for IP address acquiring.
  • Fixed an issue where the ND applications provided with the driver package would fail to run when running on a server with WinOF-2 driver package installed.
  • Fixed a rare issue where system would crash when miniport driver is reset.
  • Fixed the issue where in case of multi streams of fragmented/small packets, one or more of the Tx rings might become non-operational, and the packets might not be returned to the OS. This used to result in a failure in disabling the network interface, and caused a system crash during restart/shutdown.
  • Fixed an issue where driver could falsely indicate that the device is stuck in extreme CPU load conditions.
  • Fixed the issue of VF miniport reset that used to be caused by OID-timeout of OID_GEN_CURRENT_PACKET_FILTER.
  • Fixed RSS functionality in VM guests with SR-IOV enabled and VMs running in VMQ mode with SR-IOV enabled on host. This used to result in poor performance.
  • Fixed the issue where encapsulation settings (NVGRE+VLXAN) were not restored after reset.
  • Fixed possible system crash when upgrading from v5.00 to a newer version.
  • Fixed a race between VMQ and pkey table initialization. This issue may have occurred on a setup on which a V-Switch is defined on a virtual interface (created via the part_man tool) with a non default pkey.
  • Fixed the issue where it was possible to install the Microsoft Azure 2012R2 package on older Operating Systems.
  • Fixed a mismatch in the way the performance tuning and IPoIB create a MAC from a device GUID. This mismatch may have caused the performance tuning to fail finding the correct MAC for GUIDs that do not start with 0002c9, which used to result in a failure to choose the best NUMA for them.
  • Fixed an error which could cause a freeze of the drivers in the startup in a VM with several VFs.
  • Fixed the issue where deleting a team that has VLANs attached to it would fail on Windows 10 Operating System.

The following issues have been resolved in version 5.10.50000:

  • Device state dump used for debug could cause the device to get stuck, requiring driver restart or server reboot to recover.
  • A system with two or more adapters could crash when one of the adapters gets disabled.
  • During very high CPU load on the core that is in charge of transmit notification processing, driver may mistakenly decide the device is hung and initiate a reset to the interface.
  • When a driver fails to start (Mellanox device appears with Yellow bang in the device manager) and user stops the driver, this could cause the system to hang.
  • Synchronization issue between client and server side in nd_write_lat that could cause the test to hang on start.
  • when a user is trying to change the RoCE mode using the "Set-MlnxDriverCoreSetting" PowerShell command on a setup with two devices, the mode does not change until the next driver restart.
  • After OS initiated reset of the interface, default QoS policies were not properly restored.
  • When enabling VMQ after SRIOV has been disabled, VMQ would not work, and the VM would fall back to paravirtualization, impacting performance.
  • Fixed a race which caused some of the configurations to be badly reinitialized during VM or host transition to VMQ mode.
  • Adding VLANs would fail because the driver’s internal table was not cleaned up correctly upon VLAN removal.
  • Memory leak caused by a race between successful finish of a Management Datagram (MAD) and canceling it.
  • Adapter name in command vea_man to not be case sensitive.
  • When after removing the Virtual Ethernet Adapter, some registry keys would remain.
  • when Query Path Record (QPR) option is set, a race condition occurs. The race would be between the handling of received packets and the response to the path query to the new destination.
  • Fixed the Query Path Record list handling to prevent double entering of the same destination.
  • When BSOD may occur when running with two HCAs and using sminfo when no Subnet Manager is available.
  • When creating virtual IPoIB PKey interfaces with HP cards using part_man.exe utility was not possible.
  • A new VM creation or its migration in IPoIB could cause the system to crash.
  • In VMQ mode, not all receive buffers allocated for the VMQ are used, impacting performance.
Enhancements

New Features and Changes in Version 5.35 Fast Update (FUR) from version 5.35:

  • Fixes only.

New Features and Changes in Version 5.35 from version 5.22:

  • Updated driver settings for Virtual Function to receive optimal performance
  • Added RSS (Rx Steering Mode) monitoring counters support
  • Added counter for link up/down to count the number of times that the link operative state changes to down.
  • vstat tool -
    Added interface description for each port in the vstat tool.
  • Mlxtool -
    Added support in the following actions:
    •Driver restart
    •Pulling resource tracker information for VFs

New Features and Changes in Version 5.22 from version 5.10.50000:

  • Improved cache hit rate in RDMA by reducing the size of the Adapter's Memory Translation Table (MTT).
  • Changed the ND port allocation scheme from hashing to 64k bitmask.
  • Changed the default value of RoCE mode to RoCE v2.
  • Modified the Vsat tool to function also when RoCE is disabled.
  • Tools like nd_write_bw and nd_send_bw now support getting send completions using events instead of polling by using -e switch. Parameter only affects client side and only on “duration” mode (-D ).
  • Improved mlxtool error handling for the pkeys option. When a broken IPoIB interface registry entry exists (for example, an old virtual interface that was not fully removed), the tool would fail and exit. Now the tool skips such entries and prints the next ones.
  • Enabled dual-port card to work as a single-port card.
  • Improved Event Log Messages explaining behavior of the driver in case of illegal port configuration Port1: Ethernet w/o RoCE, Port2 IB.
  • Improved Event Log Messages issued on driver-generated dumps.
  • SR-IOV is disabled when the port is set as IB type.
  • Set the *PriorityVLANTag registry key of Virtual Function (VF) to not support neither priority nor VLAN, and removed VlanId registry key completely.
  • [Beta] Added support for SR-IOV Ethernet Windows over KVM.
  • Removed the co-installer that installs performance counters. The counters is installed during the setup.
  • Added support for tagged and untagged traffic over Team driver.
  • Enabled teaming configuration via the Command Line Interface.
  • Release Notes and User Manual documents were removed from the package. A new README file which includes basic installation instructions, summary of main features and requirements has replaced them.

New Features and Changes in Version 5.10.50000 from version 4.95.50000:

  • ATTO devices will be shown in the device manager with customized ATTO device names and model numbers.
  • Enabled the driver to use a minimal number of memory registration resources when physical memory contiguity allows it.
  • Implemented a resource pool to save physically contiguous memory in the driver, which was used by RDMA applications. This way the re-use of this memory will be allowed.
  • Improved ND connection establishment time when using firmware v2.34.5000.
  • Changed NDK and its clients (like SMBDirect) to be disabled by default when PFC is not enabled.
  • Added an RDMA test to the package to demonstrate Linux interoperability.
  • Enlarged private data limit in ND and NDK.
  • Changed default RoCEv2 UDP destination port to match IANA standard.
  • Improved isolation of SRIOV host from VM driver issues.
  • Added support in mlxtool to allow the query of PKeys configured in SR-IOV VMs.
  • Enabled mlxtool to allow a manual generation of register dumps.
  • For performance tuning purposes, debug counters were added to indicate once the driver transmit queue got full.
  • Added a discard counter for performance analysis.
  • Added discard counters per Transport Class.
  • Enabled a device watchdog mechanism that prevents the device from sending excessive pauses to the network for any reason.
  • Added support for Windows 2008R2/Windows 7 teaming driver to allow selecting the MAC address of the primary interface.
  • Added support for installing counters with co-installer.

Version:5.35 (22 Mar 2017)
Fixes

Upgrade Requirement:
Recommended - HPE recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 5.35:

  • Non-optimal out of box performance occured for virtual function.
  • Firmware upgrade failure (error code 9) occured during installation, when RoCE was disabled.
  • Miniport reset led to a driver hang when occurred during driver disabling, or to a system crash when occurred during driver shutdown.

The following issues have been resolved in version 5.22:

  • Fixed an issue that caused the perf_tuning.exe tool cease to function in case of Microsoft Windows 10 operating system, when running a dual-port configuration. 
  • Old SriovEnable registry key is now obsolete. SR-IOV is now enabled by default.
  • The system would unexpectedly cease to function due to a wrong detection of the Forwarding scenario. 
  • Improved the notification about the port type settings events in the Windows systrem event Logs.
  • Fixed an issue where the RDSH service had to be disabled even if the CIM provider was not selected as part of the installation.
  • Fixed an issue which resulted in BSOD 0x1E (KMODE_EXCEPTION_NOT_HANDLED) when the machine had multiple network port (whether a single physical card with multiple network ports or multiple single-port cards) with some ports configured with SR-IOV enabled, and some with SR-IOV disabled.
  • Fixed a wrong multicast attach flow in IPoIB which caused both ports to receive multicast messages sent for one of them. Those packets were dropped later on and had no effect on the receiving traffic in the wrong destination, but it did increment the "Packets Received Error" counter.
  • Fixed the NetworkDirect API INDAdapter::Listen() return status when the requested port was already in use. Changed the status from the non-compliant ND_INVALID_PARAMETER to the specification-compliant ND_ADDRESS_ALREADY_EXISTS.
  • Added a mechanism to ensure that listeners will not receive the same ephemeral port. The driver uses the default range of ephemeral ports 49152 to 65535.
  • Fixed an ND applications return status when a Send request failed with RNR. Changed the status from the non-compliant STATUS_DATA_NOT_ACCEPTED to the specification-compliant STATUS_IO_TIMEOUT.
  • Fixed a race in IPoIB multicast management which caused an interface not to re-register on a multicast group after an SM restart. Such behavior resulted in traffic loss.
  • Fixed an issue which prevented the 'ibdiagnet --get_cable_info' command from showing information on the cables in remote nodes.
  • Fixed an issue which disabled VXLAN offload when received OID_TCP_OFFLOAD_PARAMETERS with EncapsulationPacketTaskOffload Enabled and the VxlanUDPPortNumber set to 0.
  • Fixed wrong counting of MTT-pages shown under "Mellanox WinOF Bus Counters".
  • Fixed an issue which caused the CIM provider installation to fail when another provider which uses the same classes was installed.
  • When the cleanup operation started before an IPoIB initialization was completed, an IPoIB initialization error flow cleanup would cause the timer execution process to cease unexpectedly.
  • Fixed an issue which resulted in BSOD when the NIC received illegal OID_RECEIVE_FILTER_QUEUE_PARAMETERS value with QueueID higher than reported.
  • Fixed an issue which prevented the TEAM interface and the VLAN interface to send and receive traffic at the same time. Now both the TEAM and the VLAN interfaces work at the same time where the TEAM interface handles all untagged frames and the VLAN interface handles the tagged frames.
  • Fixed an issue causing BSOD upon driver restart in VM.
  • Added to VSTAT the ability to show the ports’ state in all port configurations (e.g. Ethernet, RoCE) and for several cards.
  • Fixed an issue that caused the system to hang when the driver was installed and RDMA applications were opened.
  • Disabled encapsulation offload capabilities for VFs regardless of the device capability to support it.
  • Added event-viewer message to identify "PortType" registry in case the port is configured for a unsupported type. For example if the device supports only Ethernet and the port is configured for IB the event-viewer message will be displayed.
  • Fixed a bluescreen issue caused by calling NDK_FN_DISCONNECT on a not connected NDK_CONNECTOR.
  • Fixed an issue causing the IP fragmentation not to function properly, consequently discarding large packets, when SR-IOV was turned ON and the "Jumbo Packet" field on the "Advanced" tab of the Ethernet driver's properties (in device manager) was set to 9602 or more.
  • Modified the event viewer-log message displayed when the PCI virtualization does not support SR-IOV. The new message is: "SR-IOV cannot be enabled due to an error in the PCI_VIRTUALIZATION_INTERFACE. Possible reason, the machine does not support SR-IOV."
  • Fixed an issue causing the system to crash when creating a team from the GUI.
  • Fixed an issue where the TTL setting for the RDMA traffic could not be changed. The current solution is now defined for these three cases, first when the driver will look for private parameter in ibbus\parameters\DefaultTTL, Second If it does not exist, it will take it from TCP/IP configuration (tcpip\parameters\DefaultTTL) and third, if not found, it will use TCP/IP default of 128.
  • Fixed an issue which resulted in interface disabling failure, and system crash when disabling the system, when multi-streams of sent fragmented/small packets could not be sent/returned to the OS. 
  • Fixed an issue causing a Black Screen in Windows guest OS running over non-Windows SR-IOV Hypervisor with two IPoIB adapters when the OpenSM was not running.
  • Fixed wrong packets handling when the number of fragments equals the maximum allowed which resulted in a crash when the fragments array was higher then the allowed value.
  • Fixed an OpenSM issue which caused the driver to crash.
  • Fixed an issue which caused the drivers to not work properly or crash as a result of setting values lower than the their default value.
  • Fixed an issue causing memory leakage when uninstalling the PF driver when vSwitch is connected to the device.
  • Fixed a performance tuning issue when using the "Performance" tab in the Advanced property page. Performance tuning did not work as expected on certain systems that have processor groups enabled. Users saw unexpected RSS CPU's assigned. Now the following event log can be seen in logs: “Detected issues with Processor groups on the system that may cause performance degradation. Disable processor groups for best results."
  • Fixed an issue where NDv2 adapter query reported MaxInlineDataSize as zero regardless of the device’s capability.
  • Fixed synchronization issue between NDK OIDs and driver's halt command. The driver started unloading before all the NDK OIDs were completed causing unexpected behavior in the system.
  • Fixed an issue that caused the system to hang when the driver failed to allocate contiguous memory on driver load.
  • Fixed wrong MAC creation from GUIDs that start with E4 D1 D2. In addition to applying the GUIDMask, the bug used to alternate the first byte of the created MAC. This alternation may have caused problems in communication with DHCP for IP address acquiring.
  • Fixed an issue where the ND applications provided with the driver package would fail to run when running on a server with WinOF-2 driver package installed.
  • Fixed a rare issue where system would crash when miniport driver is reset.
  • Fixed the issue where in case of multi streams of fragmented/small packets, one or more of the Tx rings might become non-operational, and the packets might not be returned to the OS. This used to result in a failure in disabling the network interface, and caused a system crash during restart/shutdown.
  • Fixed an issue where driver could falsely indicate that the device is stuck in extreme CPU load conditions.
  • Fixed the issue of VF miniport reset that used to be caused by OID-timeout of OID_GEN_CURRENT_PACKET_FILTER.
  • Fixed RSS functionality in VM guests with SR-IOV enabled and VMs running in VMQ mode with SR-IOV enabled on host. This used to result in poor performance.
  • Fixed the issue where encapsulation settings (NVGRE+VLXAN) were not restored after reset.
  • Fixed possible system crash when upgrading from v5.00 to a newer version.
  • Fixed a race between VMQ and pkey table initialization. This issue may have occurred on a setup on which a V-Switch is defined on a virtual interface (created via the part_man tool) with a non default pkey.
  • Fixed the issue where it was possible to install the Microsoft Azure 2012R2 package on older Operating Systems.
  • Fixed a mismatch in the way the performance tuning and IPoIB create a MAC from a device GUID. This mismatch may have caused the performance tuning to fail finding the correct MAC for GUIDs that do not start with 0002c9, which used to result in a failure to choose the best NUMA for them.
  • Fixed an error which could cause a freeze of the drivers in the startup in a VM with several VFs.
  • Fixed the issue where deleting a team that has VLANs attached to it would fail on Windows 10 Operating System.

The following issues have been resolved in version 5.10.50000:

  • Device state dump used for debug could cause the device to get stuck, requiring driver restart or server reboot to recover.
  • A system with two or more adapters could crash when one of the adapters gets disabled.
  • During very high CPU load on the core that is in charge of transmit notification processing, driver may mistakenly decide the device is hung and initiate a reset to the interface.
  • When a driver fails to start (Mellanox device appears with Yellow bang in the device manager) and user stops the driver, this could cause the system to hang.
  • Synchronization issue between client and server side in nd_write_lat that could cause the test to hang on start.
  • when a user is trying to change the RoCE mode using the "Set-MlnxDriverCoreSetting" PowerShell command on a setup with two devices, the mode does not change until the next driver restart.
  • After OS initiated reset of the interface, default QoS policies were not properly restored.
  • When enabling VMQ after SRIOV has been disabled, VMQ would not work, and the VM would fall back to paravirtualization, impacting performance.
  • Fixed a race which caused some of the configurations to be badly reinitialized during VM or host transition to VMQ mode.
  • Adding VLANs would fail because the driver’s internal table was not cleaned up correctly upon VLAN removal.
  • Memory leak caused by a race between successful finish of a Management Datagram (MAD) and canceling it.
  • Adapter name in command vea_man to not be case sensitive.
  • When after removing the Virtual Ethernet Adapter, some registry keys would remain.
  • when Query Path Record (QPR) option is set, a race condition occurs. The race would be between the handling of received packets and the response to the path query to the new destination.
  • Fixed the Query Path Record list handling to prevent double entering of the same destination.
  • When BSOD may occur when running with two HCAs and using sminfo when no Subnet Manager is available.
  • When creating virtual IPoIB PKey interfaces with HP cards using part_man.exe utility was not possible.
  • A new VM creation or its migration in IPoIB could cause the system to crash.
  • In VMQ mode, not all receive buffers allocated for the VMQ are used, impacting performance.
Enhancements

New Features and Changes in Version 5.35 from version 5.22:

  • Updated driver settings for Virtual Function to receive optimal performance
  • Added RSS (Rx Steering Mode) monitoring counters support
  • Added counter for link up/down to count the number of times that the link operative state changes to down.
  • vstat tool -
    Added interface description for each port in the vstat tool.
  • Mlxtool -
    Added support in the following actions:
    •Driver restart
    •Pulling resource tracker information for VFs

New Features and Changes in Version 5.22 from version 5.10.50000:

  • Improved cache hit rate in RDMA by reducing the size of the Adapter's Memory Translation Table (MTT).
  • Changed the ND port allocation scheme from hashing to 64k bitmask.
  • Changed the default value of RoCE mode to RoCE v2.
  • Modified the Vsat tool to function also when RoCE is disabled.
  • Tools like nd_write_bw and nd_send_bw now support getting send completions using events instead of polling by using -e switch. Parameter only affects client side and only on “duration” mode (-D ).
  • Improved mlxtool error handling for the pkeys option. When a broken IPoIB interface registry entry exists (for example, an old virtual interface that was not fully removed), the tool would fail and exit. Now the tool skips such entries and prints the next ones.
  • Enabled dual-port card to work as a single-port card.
  • Improved Event Log Messages explaining behavior of the driver in case of illegal port configuration Port1: Ethernet w/o RoCE, Port2 IB.
  • Improved Event Log Messages issued on driver-generated dumps.
  • SR-IOV is disabled when the port is set as IB type.
  • Set the *PriorityVLANTag registry key of Virtual Function (VF) to not support neither priority nor VLAN, and removed VlanId registry key completely.
  • [Beta] Added support for SR-IOV Ethernet Windows over KVM.
  • Removed the co-installer that installs performance counters. The counters is installed during the setup.
  • Added support for tagged and untagged traffic over Team driver.
  • Enabled teaming configuration via the Command Line Interface.
  • Release Notes and User Manual documents were removed from the package. A new README file which includes basic installation instructions, summary of main features and requirements has replaced them.

New Features and Changes in Version 5.10.50000 from version 4.95.50000:

  • ATTO devices will be shown in the device manager with customized ATTO device names and model numbers.
  • Enabled the driver to use a minimal number of memory registration resources when physical memory contiguity allows it.
  • Implemented a resource pool to save physically contiguous memory in the driver, which was used by RDMA applications. This way the re-use of this memory will be allowed.
  • Improved ND connection establishment time when using firmware v2.34.5000.
  • Changed NDK and its clients (like SMBDirect) to be disabled by default when PFC is not enabled.
  • Added an RDMA test to the package to demonstrate Linux interoperability.
  • Enlarged private data limit in ND and NDK.
  • Changed default RoCEv2 UDP destination port to match IANA standard.
  • Improved isolation of SRIOV host from VM driver issues.
  • Added support in mlxtool to allow the query of PKeys configured in SR-IOV VMs.
  • Enabled mlxtool to allow a manual generation of register dumps.
  • For performance tuning purposes, debug counters were added to indicate once the driver transmit queue got full.
  • Added a discard counter for performance analysis.
  • Added discard counters per Transport Class.
  • Enabled a device watchdog mechanism that prevents the device from sending excessive pauses to the network for any reason.
  • Added support for Windows 2008R2/Windows 7 teaming driver to allow selecting the MAC address of the primary interface.
  • Added support for installing counters with co-installer.

Version:5.22 (3 Aug 2016)
Fixes

Upgrade Requirement:
Recommended - HPE recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 5.22:

  • Fixed an issue that caused the perf_tuning.exe tool cease to function in case of Microsoft Windows 10 operating system, when running a dual-port configuration. 
  • Old SriovEnable registry key is now obsolete. SR-IOV is now enabled by default.
  • The system would unexpectedly cease to function due to a wrong detection of the Forwarding scenario. 
  • Improved the notification about the port type settings events in the Windows systrem event Logs.
  • Fixed an issue where the RDSH service had to be disabled even if the CIM provider was not selected as part of the installation.
  • Fixed an issue which resulted in BSOD 0x1E (KMODE_EXCEPTION_NOT_HANDLED) when the machine had multiple network port (whether a single physical card with multiple network ports or multiple single-port cards) with some ports configured with SR-IOV enabled, and some with SR-IOV disabled.
  • Fixed a wrong multicast attach flow in IPoIB which caused both ports to receive multicast messages sent for one of them. Those packets were dropped later on and had no effect on the receiving traffic in the wrong destination, but it did increment the "Packets Received Error" counter.
  • Fixed the NetworkDirect API INDAdapter::Listen() return status when the requested port was already in use. Changed the status from the non-compliant ND_INVALID_PARAMETER to the specification-compliant ND_ADDRESS_ALREADY_EXISTS.
  • Added a mechanism to ensure that listeners will not receive the same ephemeral port. The driver uses the default range of ephemeral ports 49152 to 65535.
  • Fixed an ND applications return status when a Send request failed with RNR. Changed the status from the non-compliant STATUS_DATA_NOT_ACCEPTED to the specification-compliant STATUS_IO_TIMEOUT.
  • Fixed a race in IPoIB multicast management which caused an interface not to re-register on a multicast group after an SM restart. Such behavior resulted in traffic loss.
  • Fixed an issue which prevented the 'ibdiagnet --get_cable_info' command from showing information on the cables in remote nodes.
  • Fixed an issue which disabled VXLAN offload when received OID_TCP_OFFLOAD_PARAMETERS with EncapsulationPacketTaskOffload Enabled and the VxlanUDPPortNumber set to 0.
  • Fixed wrong counting of MTT-pages shown under "Mellanox WinOF Bus Counters".
  • Fixed an issue which caused the CIM provider installation to fail when another provider which uses the same classes was installed.
  • When the cleanup operation started before an IPoIB initialization was completed, an IPoIB initialization error flow cleanup would cause the timer execution process to cease unexpectedly.
  • Fixed an issue which resulted in BSOD when the NIC received illegal OID_RECEIVE_FILTER_QUEUE_PARAMETERS value with QueueID higher than reported.
  • Fixed an issue which prevented the TEAM interface and the VLAN interface to send and receive traffic at the same time. Now both the TEAM and the VLAN interfaces work at the same time where the TEAM interface handles all untagged frames and the VLAN interface handles the tagged frames.
  • Fixed an issue causing BSOD upon driver restart in VM.
  • Added to VSTAT the ability to show the ports’ state in all port configurations (e.g. Ethernet, RoCE) and for several cards.
  • Fixed an issue that caused the system to hang when the driver was installed and RDMA applications were opened.
  • Disabled encapsulation offload capabilities for VFs regardless of the device capability to support it.
  • Added event-viewer message to identify "PortType" registry in case the port is configured for a unsupported type. For example if the device supports only Ethernet and the port is configured for IB the event-viewer message will be displayed.
  • Fixed a bluescreen issue caused by calling NDK_FN_DISCONNECT on a not connected NDK_CONNECTOR.
  • Fixed an issue causing the IP fragmentation not to function properly, consequently discarding large packets, when SR-IOV was turned ON and the "Jumbo Packet" field on the "Advanced" tab of the Ethernet driver's properties (in device manager) was set to 9602 or more.
  • Modified the event viewer-log message displayed when the PCI virtualization does not support SR-IOV. The new message is: "SR-IOV cannot be enabled due to an error in the PCI_VIRTUALIZATION_INTERFACE. Possible reason, the machine does not support SR-IOV."
  • Fixed an issue causing the system to crash when creating a team from the GUI.
  • Fixed an issue where the TTL setting for the RDMA traffic could not be changed. The current solution is now defined for these three cases, first when the driver will look for private parameter in ibbus\parameters\DefaultTTL, Second If it does not exist, it will take it from TCP/IP configuration (tcpip\parameters\DefaultTTL) and third, if not found, it will use TCP/IP default of 128.
  • Fixed an issue which resulted in interface disabling failure, and system crash when disabling the system, when multi-streams of sent fragmented/small packets could not be sent/returned to the OS. 
  • Fixed an issue causing a Black Screen in Windows guest OS running over non-Windows SR-IOV Hypervisor with two IPoIB adapters when the OpenSM was not running.
  • Fixed wrong packets handling when the number of fragments equals the maximum allowed which resulted in a crash when the fragments array was higher then the allowed value.
  • Fixed an OpenSM issue which caused the driver to crash.
  • Fixed an issue which caused the drivers to not work properly or crash as a result of setting values lower than the their default value.
  • Fixed an issue causing memory leakage when uninstalling the PF driver when vSwitch is connected to the device.
  • Fixed a performance tuning issue when using the "Performance" tab in the Advanced property page. Performance tuning did not work as expected on certain systems that have processor groups enabled. Users saw unexpected RSS CPU's assigned. Now the following event log can be seen in logs: “Detected issues with Processor groups on the system that may cause performance degradation. Disable processor groups for best results."
  • Fixed an issue where NDv2 adapter query reported MaxInlineDataSize as zero regardless of the device’s capability.
  • Fixed synchronization issue between NDK OIDs and driver's halt command. The driver started unloading before all the NDK OIDs were completed causing unexpected behavior in the system.
  • Fixed an issue that caused the system to hang when the driver failed to allocate contiguous memory on driver load.
  • Fixed wrong MAC creation from GUIDs that start with E4 D1 D2. In addition to applying the GUIDMask, the bug used to alternate the first byte of the created MAC. This alternation may have caused problems in communication with DHCP for IP address acquiring.
  • Fixed an issue where the ND applications provided with the driver package would fail to run when running on a server with WinOF-2 driver package installed.
  • Fixed a rare issue where system would crash when miniport driver is reset.
  • Fixed the issue where in case of multi streams of fragmented/small packets, one or more of the Tx rings might become non-operational, and the packets might not be returned to the OS. This used to result in a failure in disabling the network interface, and caused a system crash during restart/shutdown.
  • Fixed an issue where driver could falsely indicate that the device is stuck in extreme CPU load conditions.
  • Fixed the issue of VF miniport reset that used to be caused by OID-timeout of OID_GEN_CURRENT_PACKET_FILTER.
  • Fixed RSS functionality in VM guests with SR-IOV enabled and VMs running in VMQ mode with SR-IOV enabled on host. This used to result in poor performance.
  • Fixed the issue where encapsulation settings (NVGRE+VLXAN) were not restored after reset.
  • Fixed possible system crash when upgrading from v5.00 to a newer version.
  • Fixed a race between VMQ and pkey table initialization. This issue may have occurred on a setup on which a V-Switch is defined on a virtual interface (created via the part_man tool) with a non default pkey.
  • Fixed the issue where it was possible to install the Microsoft Azure 2012R2 package on older Operating Systems.
  • Fixed a mismatch in the way the performance tuning and IPoIB create a MAC from a device GUID. This mismatch may have caused the performance tuning to fail finding the correct MAC for GUIDs that do not start with 0002c9, which used to result in a failure to choose the best NUMA for them.
  • Fixed an error which could cause a freeze of the drivers in the startup in a VM with several VFs.
  • Fixed the issue where deleting a team that has VLANs attached to it would fail on Windows 10 Operating System.

The following issues have been resolved in version 5.10.50000:

  • Device state dump used for debug could cause the device to get stuck, requiring driver restart or server reboot to recover.
  • A system with two or more adapters could crash when one of the adapters gets disabled.
  • During very high CPU load on the core that is in charge of transmit notification processing, driver may mistakenly decide the device is hung and initiate a reset to the interface.
  • When a driver fails to start (Mellanox device appears with Yellow bang in the device manager) and user stops the driver, this could cause the system to hang.
  • Synchronization issue between client and server side in nd_write_lat that could cause the test to hang on start.
  • when a user is trying to change the RoCE mode using the "Set-MlnxDriverCoreSetting" PowerShell command on a setup with two devices, the mode does not change until the next driver restart.
  • After OS initiated reset of the interface, default QoS policies were not properly restored.
  • When enabling VMQ after SRIOV has been disabled, VMQ would not work, and the VM would fall back to paravirtualization, impacting performance.
  • Fixed a race which caused some of the configurations to be badly reinitialized during VM or host transition to VMQ mode.
  • Adding VLANs would fail because the driver’s internal table was not cleaned up correctly upon VLAN removal.
  • Memory leak caused by a race between successful finish of a Management Datagram (MAD) and canceling it.
  • Adapter name in command vea_man to not be case sensitive.
  • When after removing the Virtual Ethernet Adapter, some registry keys would remain.
  • when Query Path Record (QPR) option is set, a race condition occurs. The race would be between the handling of received packets and the response to the path query to the new destination.
  • Fixed the Query Path Record list handling to prevent double entering of the same destination.
  • When BSOD may occur when running with two HCAs and using sminfo when no Subnet Manager is available.
  • When creating virtual IPoIB PKey interfaces with HP cards using part_man.exe utility was not possible.
  • A new VM creation or its migration in IPoIB could cause the system to crash.
  • In VMQ mode, not all receive buffers allocated for the VMQ are used, impacting performance.
Enhancements

New Features and Changes in Version 5.22 from version 5.10.50000:

  • Improved cache hit rate in RDMA by reducing the size of the Adapter's Memory Translation Table (MTT).
  • Changed the ND port allocation scheme from hashing to 64k bitmask.
  • Changed the default value of RoCE mode to RoCE v2.
  • Modified the Vsat tool to function also when RoCE is disabled.
  • Tools like nd_write_bw and nd_send_bw now support getting send completions using events instead of polling by using -e switch. Parameter only affects client side and only on “duration” mode (-D ).
  • Improved mlxtool error handling for the pkeys option. When a broken IPoIB interface registry entry exists (for example, an old virtual interface that was not fully removed), the tool would fail and exit. Now the tool skips such entries and prints the next ones.
  • Enabled dual-port card to work as a single-port card.
  • Improved Event Log Messages explaining behavior of the driver in case of illegal port configuration Port1: Ethernet w/o RoCE, Port2 IB.
  • Improved Event Log Messages issued on driver-generated dumps.
  • SR-IOV is disabled when the port is set as IB type.
  • Set the *PriorityVLANTag registry key of Virtual Function (VF) to not support neither priority nor VLAN, and removed VlanId registry key completely.
  • [Beta] Added support for SR-IOV Ethernet Windows over KVM.
  • Removed the co-installer that installs performance counters. The counters is installed during the setup.
  • Added support for tagged and untagged traffic over Team driver.
  • Enabled teaming configuration via the Command Line Interface.
  • Release Notes and User Manual documents were removed from the package. A new README file which includes basic installation instructions, summary of main features and requirements has replaced them.

New Features and Changes in Version 5.10.50000 from version 4.95.50000:

  • ATTO devices will be shown in the device manager with customized ATTO device names and model numbers.
  • Enabled the driver to use a minimal number of memory registration resources when physical memory contiguity allows it.
  • Implemented a resource pool to save physically contiguous memory in the driver, which was used by RDMA applications. This way the re-use of this memory will be allowed.
  • Improved ND connection establishment time when using firmware v2.34.5000.
  • Changed NDK and its clients (like SMBDirect) to be disabled by default when PFC is not enabled.
  • Added an RDMA test to the package to demonstrate Linux interoperability.
  • Enlarged private data limit in ND and NDK.
  • Changed default RoCEv2 UDP destination port to match IANA standard.
  • Improved isolation of SRIOV host from VM driver issues.
  • Added support in mlxtool to allow the query of PKeys configured in SR-IOV VMs.
  • Enabled mlxtool to allow a manual generation of register dumps.
  • For performance tuning purposes, debug counters were added to indicate once the driver transmit queue got full.
  • Added a discard counter for performance analysis.
  • Added discard counters per Transport Class.
  • Enabled a device watchdog mechanism that prevents the device from sending excessive pauses to the network for any reason.
  • Added support for Windows 2008R2/Windows 7 teaming driver to allow selecting the MAC address of the primary interface.
  • Added support for installing counters with co-installer.

Version:5.10.50000 (12 Oct 2015)
Fixes

Upgrade Requirement:
Recommended - HP recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 5.10.50000:

  • Device state dump used for debug could cause the device to get stuck, requiring driver restart or server reboot to recover.
  • A system with two or more adapters could crash when one of the adapters gets disabled.
  • During very high CPU load on the core that is in charge of transmit notification processing, driver may mistakenly decide the device is hung and initiate a reset to the interface.
  • When a driver fails to start (Mellanox device appears with Yellow bang in the device manager) and user stops the driver, this could cause the system to hang.
  • Synchronization issue between client and server side in nd_write_lat that could cause the test to hang on start.
  • when a user is trying to change the RoCE mode using the "Set-MlnxDriverCoreSetting" PowerShell command on a setup with two devices, the mode does not change until the next driver restart.
  • After OS initiated reset of the interface, default QoS policies were not properly restored.
  • When enabling VMQ after SRIOV has been disabled, VMQ would not work, and the VM would fall back to paravirtualization, impacting performance.
  • Fixed a race which caused some of the configurations to be badly reinitialized during VM or host transition to VMQ mode.
  • Adding VLANs would fail because the driver’s internal table was not cleaned up correctly upon VLAN removal.
  • Memory leak caused by a race between successful finish of a Management Datagram (MAD) and canceling it.
  • Adapter name in command vea_man to not be case sensitive.
  • When after removing the Virtual Ethernet Adapter, some registry keys would remain.
  • when Query Path Record (QPR) option is set, a race condition occurs. The race would be between the handling of received packets and the response to the path query to the new destination.
  • Fixed the Query Path Record list handling to prevent double entering of the same destination.
  • When BSOD may occur when running with two HCAs and using sminfo when no Subnet Manager is available.
  • When creating virtual IPoIB PKey interfaces with HP cards using part_man.exe utility was not possible.
  • A new VM creation or its migration in IPoIB could cause the system to crash.
  • In VMQ mode, not all receive buffers allocated for the VMQ are used, impacting performance.

The following issues have been resolved in version 4.95.50000:

  • BSOD on next driver restart when running the sminfo tool and SM is not running.
  • Instability in IPoIB driver when polling mode is enabled.
  • Live-migrated VM with virtual NIC over IPoIB physical interface lost its IP address and came up with APIPA address (169.254.x.x)
  • BSoD after the receive buffer’s size changes in VMQ mode
  • Fixed handling of send request with inline data larger than supported limit.

The following issues have been resolved in version 4.90.50000:

  • Fixed CM CPU consumption for a long period of time while in DPC context.
  • Fixed stability issues.
  • Fixed failure when deleting Virtual Ethernet Interfaces right after creating it.
  • Fixed duplicated values of Receive Completion Method in UI on Windows Server 2012 R2.
  • Fixed propagation of error code when ib_join_mcast() fails.
  • Fixed connectivity problems when using PKeys from the same partition with different membership types.
  • Fixed VM reset after printing the message "mlx4_core 0000:05:00.0: unparavirt command: OTHER (0x3a) accepted from slave:3" in SR-IOV InfiniBand VM over non-windows hypervisor.
  • Fixed the UI crash when working with a single port.
  • Fixed wrong ND_* performance tests duration calculation.
  • Fixed the higher limit of ThreadPoll to be 200,000.
  • Fixed temporary network connectivity issues while migrating VMs or modifying VMQ configuration for VMs that uses IPoIB with VMQ.
  • Fixed the part_man tool to use the actual default p_key instead of 0xffff.
  • Fixed NIC reset when attaching to a multicast group fails.
  • Fixed duplicated values of Receive Completion Method in UI on Windows Server 2012 R2.
  • Fixed CIM failure after installation in maintenance mode.
  • Fixed loading of old driver after driver upgrade that requires system reboot to complete the process.
  • Fixed RoCE disable by default after installation of WinOF in Windows 8.1 Client.
  • Fixed seg fault when executing ND application with no device installed or when a wrong device identifier is used.
  • Fixed wrong reported value of supported number of SGE in 32 bit DLLs.
  • Fixed restoration of NVGRE configuration after NIC reset.
  • Fixed failure when calling Get-MlnxFirmwareIdentity if not all devices are up.
Enhancements

New Features and Changes in Version 5.10.50000 from version 4.95.50000:

  • ATTO devices will be shown in the device manager with customized ATTO device names and model numbers.
  • Enabled the driver to use a minimal number of memory registration resources when physical memory contiguity allows it.
  • Implemented a resource pool to save physically contiguous memory in the driver, which was used by RDMA applications. This way the re-use of this memory will be allowed.
  • Improved ND connection establishment time when using firmware v2.34.5000.
  • Changed NDK and its clients (like SMBDirect) to be disabled by default when PFC is not enabled.
  • Added an RDMA test to the package to demonstrate Linux interoperability.
  • Enlarged private data limit in ND and NDK.
  • Changed default RoCEv2 UDP destination port to match IANA standard.
  • Improved isolation of SRIOV host from VM driver issues.
  • Added support in mlxtool to allow the query of PKeys configured in SR-IOV VMs.
  • Enabled mlxtool to allow a manual generation of register dumps.
  • For performance tuning purposes, debug counters were added to indicate once the driver transmit queue got full.
  • Added a discard counter for performance analysis.
  • Added discard counters per Transport Class.
  • Enabled a device watchdog mechanism that prevents the device from sending excessive pauses to the network for any reason.
  • Added support for Windows 2008R2/Windows 7 teaming driver to allow selecting the MAC address of the primary interface.
  • Added support for installing counters with co-installer.

New Features and Changes in Version 4.95.50000 from version 4.90.50000:

  • Modified counter names in perfmon to be more clear:
    • "Sent Pause Frames" --> "Pause Frames Sent"
    • "Sent Pause Duration" --> "Total Transmitter Pause Duration (us)"
    • "Rcv Pause Frames" --> "Pause Frames Received"
    • "Rcv Pause Duration" --> "Total Requested Pause Duration (us)"
  • ECN is now configurable via PowerShell
  • Added a new mode that ignores FCS warnings and enables the Ethernet packets to be received by the NIC.
  • Added the option of setting the MAC address of 2008R2 teaming driver to be taken from the primary interface.
  • Added the option of taking the MAC Address used for teaming from one of the interfaces without manipulation.
  • Added the option of configuring the team MAC address to be the same as the primary adapter MAC address.
  • Added an autologger session that dumps WPP traces to file to enable easier analysis of issues.
  • Added logging of performance counters and CPU power saving state to system snapshot tool.
  • Added the option to allow RDMA programmers to create pre-allocated pools of ND resources to reduce resource creation time.

Version:4.95.50000 (19 May 2015)
Fixes

Upgrade Requirement:
Recommended - HP recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 4.95.50000:

  • BSOD on next driver restart when running the sminfo tool and SM is not running.
  • Instability in IPoIB driver when polling mode is enabled.
  • Live-migrated VM with virtual NIC over IPoIB physical interface lost its IP address and came up with APIPA address (169.254.x.x)
  • BSoD after the receive buffer’s size changes in VMQ mode
  • Fixed handling of send request with inline data larger than supported limit.

The following issues have been resolved in version 4.90.50000:

  • Fixed CM CPU consumption for a long period of time while in DPC context.
  • Fixed stability issues.
  • Fixed failure when deleting Virtual Ethernet Interfaces right after creating it.
  • Fixed duplicated values of Receive Completion Method in UI on Windows Server 2012 R2.
  • Fixed propagation of error code when ib_join_mcast() fails.
  • Fixed connectivity problems when using PKeys from the same partition with different membership types.
  • Fixed VM reset after printing the message "mlx4_core 0000:05:00.0: unparavirt command: OTHER (0x3a) accepted from slave:3" in SR-IOV InfiniBand VM over non-windows hypervisor.
  • Fixed the UI crash when working with a single port.
  • Fixed wrong ND_* performance tests duration calculation.
  • Fixed the higher limit of ThreadPoll to be 200,000.
  • Fixed temporary network connectivity issues while migrating VMs or modifying VMQ configuration for VMs that uses IPoIB with VMQ.
  • Fixed the part_man tool to use the actual default p_key instead of 0xffff.
  • Fixed NIC reset when attaching to a multicast group fails.
  • Fixed duplicated values of Receive Completion Method in UI on Windows Server 2012 R2.
  • Fixed CIM failure after installation in maintenance mode.
  • Fixed loading of old driver after driver upgrade that requires system reboot to complete the process.
  • Fixed RoCE disable by default after installation of WinOF in Windows 8.1 Client.
  • Fixed seg fault when executing ND application with no device installed or when a wrong device identifier is used.
  • Fixed wrong reported value of supported number of SGE in 32 bit DLLs.
  • Fixed restoration of NVGRE configuration after NIC reset.
  • Fixed failure when calling Get-MlnxFirmwareIdentity if not all devices are up.

The following issues have been resolved in version 4.80.50000:

  • Installation hangup when Remote Desktop Session Host Windows Installer RDS compatibility is enabled.
  • Driver load failure in machines with 1 TB memory and above.
  • Rare cases of driver hang following a Subnet Manager failover event.
  • Stability issues
  • Race condition in NDK between handling of incoming connection and destruction of a listener.
  • Race condition between NDK object creation and usage.
  • Possible reset of driver during migration of large number of VMs at the same time.
  • Incorrect return value in IND2Adapter::QueryAddressList

The following issues have been resolved in version 4.70.50000:

  • Removal of virtual IPoIB ports during uninstallation.
  • Restoration failure of DNS servers during upgrade.
  • Issue which caused Mellanox miniport devices to be listed in "Devices and Printers".
  • Ethernet and IPoIB deadlock in power state change during shutdown/reboot.
  • Stability issues.
  • "part_man exit" with return value 0 in case of error.
  • "ibstat" erratic behavior on devices with RoCE enabled.
  • RDMA Activity counters didn't increase for ND traffic.
  • Hard-coded limitation of 4 SGEs.
  • JumboPackets registry key was not restored correctly.
  • Mellanox devices were listed in "Devices and Printers" and had "Safe Removal" UI.
  • Error statistics collection which could cause false error report.
  • Connectivity problem between Hyper-V VMs on the same host.
  • Loopback issues in the virtualization environment.
  • Issue that prevented receiving ARP traffic in NVGRE mode.

The following issues have been resolved in version 4.60.17738:

  • When uninstalling and reinstalling the driver, the ConnectX-3 Pro Ethernet device was displayed in the Device Manager with a yellow bang (!).
  • Random parsing failures of string registry entries.
  • Compilation failure of "Hello_world" in the SDK.
  • CPU utilization report in nd_*_* tests.
  • sync problems of bidirectional mode in ibv_read_bw/ibv_write_bw.
  • Fixed un-initialized memory access over the VMQ.
  • MAC address uniqueness issue in Microsoft Windows 2008 R2.
  • Packets with corrupted VLAN header were sent when they were meant to be untagged.
  • Unexpected behavior upon QP asynchronous event.
  • The reported link speed value was zero in case of a disconnected network adapter.
  • Port channel teaming issue with CISCO switch and Fabric Extenders traffic drop in Windows Server 2008 R2.
  • Issue preventing get-event to show information after the PCI device is disabled.

 

Enhancements

New Features and Changes in Version 4.95.50000 from version 4.90.50000:

  • Modified counter names in perfmon to be more clear:
    • "Sent Pause Frames" --> "Pause Frames Sent"
    • "Sent Pause Duration" --> "Total Transmitter Pause Duration (us)"
    • "Rcv Pause Frames" --> "Pause Frames Received"
    • "Rcv Pause Duration" --> "Total Requested Pause Duration (us)"
  • ECN is now configurable via PowerShell
  • Added a new mode that ignores FCS warnings and enables the Ethernet packets to be received by the NIC.
  • Added the option of setting the MAC address of 2008R2 teaming driver to be taken from the primary interface.
  • Added the option of taking the MAC Address used for teaming from one of the interfaces without manipulation.
  • Added the option of configuring the team MAC address to be the same as the primary adapter MAC address.
  • Added an autologger session that dumps WPP traces to file to enable easier analysis of issues.
  • Added logging of performance counters and CPU power saving state to system snapshot tool.
  • Added the option to allow RDMA programmers to create pre-allocated pools of ND resources to reduce resource creation time.

New Features and Changes in Version 4.90.50000 from version 4.80.50000:

  • Redesigned and simplified Reset Flow improvements to resolve race conditions with parallel resets.
  • Improved completion memory access speed.
  • Improved RX descriptors memory access.
  • Improved the scalability of VMQ to allow running more Virtual Machines reliably.
  • Enabled ETS per flow according to the DSCP value in the IP header.
  • Reduced memory footprints of Ethernet interfaces.
  • Changed default VMQ/VPort affinity to use the first RSS CPU.
  • Changed behavior in VMQ/SR-IOV mode by making all traffic of the default VPORT/VMQ use the same CPU.
  • Updated IBAL interface version. In order for the applications that use the IBAL interface to work with WinOF Rev 4.90.50000, they must be recompiled with the new SDK.
  • Added support for SM change event.
  • In RoCE v2, added the option of determining the source port field of the UDP header can by the application.
  • Improved CPU utilization.
  • Added support for multiple PKey interfaces in IPoIB.
  • Added support for teaming of IPoIB interfaces to allow failover.
  • Added IPoIB adapters teaming support (beta level).
  • Added sending of gratuitous ARP in IPoIB interface when the MAC address is changed.
  • Reduced memory footprints of IPoIB interfaces.
  • Reduced the multiple number of path record queries to one when old query information exists.
  • Improved completion memory access speed.
  • Changed default VMQ/VPort affinity to use first RSS CPU.
  • Multiple PKey support is now at GA level. The part_man tool allows the creation of up to 64 vIPoIB interfaces (32 per port).
  • Added a warning to the event log if the port MTU is higher than the reported MTU by the SM.
  • In the User Interface, replaced the terms “LBFO” and “Bundle” with “Teaming” and “team” respectively.

New Features and Changes in Version 4.80.50000 from version 4.70.50000:

  • Added check for administrator privileges during installation.
  • Added support for installation in silent mode without execution of perf_tune.
  • Changed Reset Flow (+SR-IOV)-enabled only if no user space application is running and depends on the registry key: AllowResetOnError setting).
  • Changed the number of supported QPs in a multicast group from hard coded value to firmware capabilities dependent.
  • Added multiple P_Key support (beta level).
  • Added IPoIB SR-IOV over KVM and ESX Hypervisors (for both full and partial membership).
  • Added support for LID change event.
  • Added enhancements in part_man for the multiple Pkey support.
  • Changed IPv6 “all dhcp servers” multicast to be persistent.
  • Added RSS in UDP (enabled by default).
  • Added 56 GbE (Please refer to the Infiniband Switch User Guide for further details).
  • Changed DSCP configuration to be per port instead of global.
  • Network Direct: Fixed race in NDK between handling of incoming connection and destruction of a listener.
  • Network Direct: Fixed race between NDK object creation and usage.
  • Improved TCB (Transmission Control Block) management on send.
  • Improved transmit and receive in multi stream scenarios.
  • Enabled hardware checksum offload for non TCP/UDP traffic with ConnectX3-Pro.
  • Improved stability when handling OIDs during driver reset.
  • Added IP based RoCE
  • Added non-default PKey in VM
  • Optimized interrupt moderation values in SR-IOV VF mode for IPoIB
  • Improved perf_tuning detection for the first port
  • Improved performance in packet forwarding scenarios
  • Decreased dropped packets rate for Ethernet significantly
  • Changed default perf_tuning scenario to be “Balanced configuration”
  • Various performance improvements
  • Added ability to read active RoCE configuration from hardware
  • Added support for RoCE v1.25

New Features and Changes in Version 4.70.50000 from version 4.60.17738:

  • All user-space binaries are now signed.
  • Changed Ethernet and IPoIB event log messages to be more clear.
  • Ported SDK project to Visual Studio 2013.
  • Added support for IPoIB SR-IOV Virtual Function (VF) over KVM Hypervisor (Beta level)
  • Added support for non-default pkey, as queried from OpenSM, on IPoIB SR-IOV VF over KVM.
  • Added IPoIB QoS proprietary counters, diagnostics and traffic for monitoring, using Windows' perfmon utility.
  • Added Virtual Ethernet Adapter support which enables using SMB Direct and HyperV (VMQ and NVGRE (over ConnectX®-3 Pro)) on the same port.
  • Added lossless TCP buffer management when no receive WQE are available.
  • Added ConnectX-3 Pro support for RoCEv2.
  • Changed the transport name in vstat and ibstat to be RoCE v2.0
  • Improved perf_tuning setting in single CPU machines to avoid TX collision.
  • Ensured that uninstallation of Mellanox package in Virtual Machine leaves the system clean.
  • Improved information in event log when a bad cable is detected.
  • Improved resiliency on error flow in Ethernet, IPoIB and bus drivers.
  • Added support OF IPv6 to all nd_*_* tests.
  • Enabled optimal interrupt moderation values in SR-IOV VF mode.
  • Stopped using NdisQueryNetBufferPhysicalCount to improve CPU utilization.
  • Enabled searching for IBAT routes based on dest only instead of src,dest and added a mechanism preventing memory growth in IBAT entries.
  • Allowed any number of RSS processors, not only a power of 2.
  • Ensured SR-IOV mode is not enabled for IPoIB ports, which resulted in confusing message in event log.
  • Added support for "unknown" link state indication
  • Added support for DMA checks by driver verifier on SR-IOV Virtual Function.
  • Added support for NVGRE over LBFO Team.
  • Improved performance of handling change receive ring affinity request.
  • In SR-IOV mode, improved resiliency to driver failures in the Virtual Machine which could result in driver load failure in VM.
  • In SR-IOV mode, improved resilience in VF to PF communication.
  • Improved structure of INF file for SR-IOV Physical and Virtual Functions.

New Features and Changes in Version 4.60.17738 from Version 4.4:

  • Enabled configuration changes saving upon Inbox and upgrade from previous releases.
  • Enabled CIM installation as a standalone package.
  • Added IPv6 support to all nd_*_* tests.
  • Added the ability to rearm a CQ in the kernel.
  • Added the ability to handle LID changes.
  • Changed connection timeout behavior. Added the STATUS_CONNECTION_REFUSED return value upon connection timeout.
  • Added the ability to handle LID changes.
  • Added support for iSCSI boot over IPoIB.
  • Performance improvements in latency.
  • Modified the CQ size to prevent CQ overrun.
  • Added DSCP support over IPv4.
  • Added traffic profile.
  • Performance improvements.
  • Added the "ParentBusPath" option to each port registry key.
  • Added a new hardware ID for ConnectX-3 Pro NICs.
  • The QP numbers allocation is now in round-robin manner.
  • "RecvCompletionMethod" as Interrupt is no longer supported.
  • Removed  the ‘Non-DMA’ option from the bus driver configuration.
  • Removed the "TXRingNum" option from the UI.
  • Added NVGRE hardware off-load support.
  • Added the "EncapsulatedPacketTaskOffload" option to the UI when using ConnectX-3 Pro NICs.
  • Added the "nd_send_bw" and "nd_send_lat" ND benchmarking tools.
  • Added IP-IP checksum off-load support.
  • Added Ports TX arbitration and Bandwidth allocation per port.
  • The following ND providers, MLX4ND and MLX4ND2 are now installed by default.
  • Added Sniffer for RoCE packets.
  • The used RoCE mode set upon driver load is now printed into event log message.

Version:4.90.50000 (10 Feb 2015)
Fixes

Upgrade Requirement:
Recommended - HPE recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 4.90.50000:

  • Fixed CM CPU consumption for a long period of time while in DPC context.
  • Fixed stability issues.
  • Fixed failure when deleting Virtual Ethernet Interfaces right after creating it.
  • Fixed duplicated values of Receive Completion Method in UI on Windows Server 2012 R2.
  • Fixed propagation of error code when ib_join_mcast() fails.
  • Fixed connectivity problems when using PKeys from the same partition with different membership types.
  • Fixed VM reset after printing the message "mlx4_core 0000:05:00.0: unparavirt command: OTHER (0x3a) accepted from slave:3" in SR-IOV InfiniBand VM over non-windows hypervisor.
  • Fixed the UI crash when working with a single port.
  • Fixed wrong ND_* performance tests duration calculation.
  • Fixed the higher limit of ThreadPoll to be 200,000.
  • Fixed temporary network connectivity issues while migrating VMs or modifying VMQ configuration for VMs that uses IPoIB with VMQ.
  • Fixed the part_man tool to use the actual default p_key instead of 0xffff.
  • Fixed NIC reset when attaching to a multicast group fails.
  • Fixed duplicated values of Receive Completion Method in UI on Windows Server 2012 R2.
  • Fixed CIM failure after installation in maintenance mode.
  • Fixed loading of old driver after driver upgrade that requires system reboot to complete the process.
  • Fixed RoCE disable by default after installation of WinOF in Windows 8.1 Client.
  • Fixed seg fault when executing ND application with no device installed or when a wrong device identifier is used.
  • Fixed wrong reported value of supported number of SGE in 32 bit DLLs.
  • Fixed restoration of NVGRE configuration after NIC reset.
  • Fixed failure when calling Get-MlnxFirmwareIdentity if not all devices are up.

The following issues have been resolved in version 4.80.50000:

  • Installation hangup when Remote Desktop Session Host Windows Installer RDS compatibility is enabled.
  • Driver load failure in machines with 1 TB memory and above.
  • Rare cases of driver hang following a Subnet Manager failover event.
  • Stability issues
  • Race condition in NDK between handling of incoming connection and destruction of a listener.
  • Race condition between NDK object creation and usage.
  • Possible reset of driver during migration of large number of VMs at the same time.
  • Incorrect return value in IND2Adapter::QueryAddressList

The following issues have been resolved in version 4.70.50000:

  • Removal of virtual IPoIB ports during uninstallation.
  • Restoration failure of DNS servers during upgrade.
  • Issue which caused Mellanox miniport devices to be listed in "Devices and Printers".
  • Ethernet and IPoIB deadlock in power state change during shutdown/reboot.
  • Stability issues.
  • "part_man exit" with return value 0 in case of error.
  • "ibstat" erratic behavior on devices with RoCE enabled.
  • RDMA Activity counters didn't increase for ND traffic.
  • Hard-coded limitation of 4 SGEs.
  • JumboPackets registry key was not restored correctly.
  • Mellanox devices were listed in "Devices and Printers" and had "Safe Removal" UI.
  • Error statistics collection which could cause false error report.
  • Connectivity problem between Hyper-V VMs on the same host.
  • Loopback issues in the virtualization environment.
  • Issue that prevented receiving ARP traffic in NVGRE mode.

The following issues have been resolved in version 4.60.17738:

  • When uninstalling and reinstalling the driver, the ConnectX-3 Pro Ethernet device was displayed in the Device Manager with a yellow bang (!).
  • Random parsing failures of string registry entries.
  • Compilation failure of "Hello_world" in the SDK.
  • CPU utilization report in nd_*_* tests.
  • sync problems of bidirectional mode in ibv_read_bw/ibv_write_bw.
  • Fixed un-initialized memory access over the VMQ.
  • MAC address uniqueness issue in Microsoft Windows 2008 R2.
  • Packets with corrupted VLAN header were sent when they were meant to be untagged.
  • Unexpected behavior upon QP asynchronous event.
  • The reported link speed value was zero in case of a disconnected network adapter.
  • Port channel teaming issue with CISCO switch and Fabric Extenders traffic drop in Windows Server 2008 R2.
  • Issue preventing get-event to show information after the PCI device is disabled.

 

Enhancements

New Features and Changes in Version 4.90.50000 from version 4.80.50000:

  • Redesigned and simplified Reset Flow improvements to resolve race conditions with parallel resets.
  • Improved completion memory access speed.
  • Improved RX descriptors memory access.
  • Improved the scalability of VMQ to allow running more Virtual Machines reliably.
  • Enabled ETS per flow according to the DSCP value in the IP header.
  • Reduced memory footprints of Ethernet interfaces.
  • Changed default VMQ/VPort affinity to use the first RSS CPU.
  • Changed behavior in VMQ/SR-IOV mode by making all traffic of the default VPORT/VMQ use the same CPU.
  • Updated IBAL interface version. In order for the applications that use the IBAL interface to work with WinOF Rev 4.90.50000, they must be recompiled with the new SDK.
  • Added support for SM change event.
  • In RoCE v2, added the option of determining the source port field of the UDP header can by the application.
  • Improved CPU utilization.
  • Added support for multiple PKey interfaces in IPoIB.
  • Added support for teaming of IPoIB interfaces to allow failover.
  • Added IPoIB adapters teaming support (beta level).
  • Added sending of gratuitous ARP in IPoIB interface when the MAC address is changed.
  • Reduced memory footprints of IPoIB interfaces.
  • Reduced the multiple number of path record queries to one when old query information exists.
  • Improved completion memory access speed.
  • Changed default VMQ/VPort affinity to use first RSS CPU.
  • Multiple PKey support is now at GA level. The part_man tool allows the creation of up to 64 vIPoIB interfaces (32 per port).
  • Added a warning to the event log if the port MTU is higher than the reported MTU by the SM.
  • In the User Interface, replaced the terms “LBFO” and “Bundle” with “Teaming” and “team” respectively.

New Features and Changes in Version 4.80.50000 from version 4.70.50000:

  • Added check for administrator privileges during installation.
  • Added support for installation in silent mode without execution of perf_tune.
  • Changed Reset Flow (+SR-IOV)-enabled only if no user space application is running and depends on the registry key: AllowResetOnError setting).
  • Changed the number of supported QPs in a multicast group from hard coded value to firmware capabilities dependent.
  • Added multiple P_Key support (beta level).
  • Added IPoIB SR-IOV over KVM and ESX Hypervisors (for both full and partial membership).
  • Added support for LID change event.
  • Added enhancements in part_man for the multiple Pkey support.
  • Changed IPv6 “all dhcp servers” multicast to be persistent.
  • Added RSS in UDP (enabled by default).
  • Added 56 GbE (Please refer to the Infiniband Switch User Guide for further details).
  • Changed DSCP configuration to be per port instead of global.
  • Network Direct: Fixed race in NDK between handling of incoming connection and destruction of a listener.
  • Network Direct: Fixed race between NDK object creation and usage.
  • Improved TCB (Transmission Control Block) management on send.
  • Improved transmit and receive in multi stream scenarios.
  • Enabled hardware checksum offload for non TCP/UDP traffic with ConnectX3-Pro.
  • Improved stability when handling OIDs during driver reset.
  • Added IP based RoCE
  • Added non-default PKey in VM
  • Optimized interrupt moderation values in SR-IOV VF mode for IPoIB
  • Improved perf_tuning detection for the first port
  • Improved performance in packet forwarding scenarios
  • Decreased dropped packets rate for Ethernet significantly
  • Changed default perf_tuning scenario to be “Balanced configuration”
  • Various performance improvements
  • Added ability to read active RoCE configuration from hardware
  • Added support for RoCE v1.25

New Features and Changes in Version 4.70.50000 from version 4.60.17738:

  • All user-space binaries are now signed.
  • Changed Ethernet and IPoIB event log messages to be more clear.
  • Ported SDK project to Visual Studio 2013.
  • Added support for IPoIB SR-IOV Virtual Function (VF) over KVM Hypervisor (Beta level)
  • Added support for non-default pkey, as queried from OpenSM, on IPoIB SR-IOV VF over KVM.
  • Added IPoIB QoS proprietary counters, diagnostics and traffic for monitoring, using Windows' perfmon utility.
  • Added Virtual Ethernet Adapter support which enables using SMB Direct and HyperV (VMQ and NVGRE (over ConnectX®-3 Pro)) on the same port.
  • Added lossless TCP buffer management when no receive WQE are available.
  • Added ConnectX-3 Pro support for RoCEv2.
  • Changed the transport name in vstat and ibstat to be RoCE v2.0
  • Improved perf_tuning setting in single CPU machines to avoid TX collision.
  • Ensured that uninstallation of Mellanox package in Virtual Machine leaves the system clean.
  • Improved information in event log when a bad cable is detected.
  • Improved resiliency on error flow in Ethernet, IPoIB and bus drivers.
  • Added support OF IPv6 to all nd_*_* tests.
  • Enabled optimal interrupt moderation values in SR-IOV VF mode.
  • Stopped using NdisQueryNetBufferPhysicalCount to improve CPU utilization.
  • Enabled searching for IBAT routes based on dest only instead of src,dest and added a mechanism preventing memory growth in IBAT entries.
  • Allowed any number of RSS processors, not only a power of 2.
  • Ensured SR-IOV mode is not enabled for IPoIB ports, which resulted in confusing message in event log.
  • Added support for "unknown" link state indication
  • Added support for DMA checks by driver verifier on SR-IOV Virtual Function.
  • Added support for NVGRE over LBFO Team.
  • Improved performance of handling change receive ring affinity request.
  • In SR-IOV mode, improved resiliency to driver failures in the Virtual Machine which could result in driver load failure in VM.
  • In SR-IOV mode, improved resilience in VF to PF communication.
  • Improved structure of INF file for SR-IOV Physical and Virtual Functions.

New Features and Changes in Version 4.60.17738 from Version 4.4:

  • Enabled configuration changes saving upon Inbox and upgrade from previous releases.
  • Enabled CIM installation as a standalone package.
  • Added IPv6 support to all nd_*_* tests.
  • Added the ability to rearm a CQ in the kernel.
  • Added the ability to handle LID changes.
  • Changed connection timeout behavior. Added the STATUS_CONNECTION_REFUSED return value upon connection timeout.
  • Added the ability to handle LID changes.
  • Added support for iSCSI boot over IPoIB.
  • Performance improvements in latency.
  • Modified the CQ size to prevent CQ overrun.
  • Added DSCP support over IPv4.
  • Added traffic profile.
  • Performance improvements.
  • Added the "ParentBusPath" option to each port registry key.
  • Added a new hardware ID for ConnectX-3 Pro NICs.
  • The QP numbers allocation is now in round-robin manner.
  • "RecvCompletionMethod" as Interrupt is no longer supported.
  • Removed  the ‘Non-DMA’ option from the bus driver configuration.
  • Removed the "TXRingNum" option from the UI.
  • Added NVGRE hardware off-load support.
  • Added the "EncapsulatedPacketTaskOffload" option to the UI when using ConnectX-3 Pro NICs.
  • Added the "nd_send_bw" and "nd_send_lat" ND benchmarking tools.
  • Added IP-IP checksum off-load support.
  • Added Ports TX arbitration and Bandwidth allocation per port.
  • The following ND providers, MLX4ND and MLX4ND2 are now installed by default.
  • Added Sniffer for RoCE packets.
  • The used RoCE mode set upon driver load is now printed into event log message.

Version:4.80.50000 (23 Sep 2014)
Fixes

Upgrade Requirement:
Recommended - HPE recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 4.80.50000:

  • Installation hangup when Remote Desktop Session Host Windows Installer RDS compatibility is enabled.
  • Driver load failure in machines with 1 TB memory and above.
  • Rare cases of driver hang following a Subnet Manager failover event.
  • Stability issues
  • Race condition in NDK between handling of incoming connection and destruction of a listener.
  • Race condition between NDK object creation and usage.
  • Possible reset of driver during migration of large number of VMs at the same time.
  • Incorrect return value in IND2Adapter::QueryAddressList
The following issues have been resolved in version 4.70.50000:
  • Removal of virtual IPoIB ports during uninstallation.
  • Restoration failure of DNS servers during upgrade.
  • Issue which caused Mellanox miniport devices to be listed in "Devices and Printers".
  • Ethernet and IPoIB deadlock in power state change during shutdown/reboot.
  • Stability issues.
  • "part_man exit" with return value 0 in case of error.
  • "ibstat" erratic behavior on devices with RoCE enabled.
  • RDMA Activity counters didn't increase for ND traffic.
  • Hard-coded limitation of 4 SGEs.
  • JumboPackets registry key was not restored correctly.
  • Mellanox devices were listed in "Devices and Printers" and had "Safe Removal" UI.
  • Error statistics collection which could cause false error report.
  • Connectivity problem between Hyper-V VMs on the same host.
  • Loopback issues in the virtualization environment.
  • Issue that prevented receiving ARP traffic in NVGRE mode.
The following issues have been resolved in version 4.60.17738:
  • When uninstalling and reinstalling the driver, the ConnectX-3 Pro Ethernet device was displayed in the Device Manager with a yellow bang (!).
  • Random parsing failures of string registry entries.
  • Compilation failure of "Hello_world" in the SDK.
  • CPU utilization report in nd_*_* tests.
  • sync problems of bidirectional mode in ibv_read_bw/ibv_write_bw.
  • Fixed un-initialized memory access over the VMQ.
  • MAC address uniqueness issue in Microsoft Windows 2008 R2.
  • Packets with corrupted VLAN header were sent when they were meant to be untagged.
  • Unexpected behavior upon QP asynchronous event.
  • The reported link speed value was zero in case of a disconnected network adapter.
  • Port channel teaming issue with CISCO switch and Fabric Extenders traffic drop in Windows Server 2008 R2.
  • Issue preventing get-event to show information after the PCI device is disabled.
Enhancements

New Features and Changes in Version 4.80.50000 from version 4.70.50000:

  • Added check for administrator privileges during installation.
  • Added support for installation in silent mode without execution of perf_tune.
  • Changed Reset Flow (+SR-IOV)-enabled only if no user space application is running and depends on the registry key: AllowResetOnError setting).
  • Changed the number of supported QPs in a multicast group from hard coded value to firmware capabilities dependent.
  • Added multiple P_Key support (beta level).
  • Added IPoIB SR-IOV over KVM and ESX Hypervisors (for both full and partial membership).
  • Added support for LID change event.
  • Added enhancements in part_man for the multiple Pkey support.
  • Changed IPv6 “all dhcp servers” multicast to be persistent.
  • Added RSS in UDP (enabled by default).
  • Added 56 GbE (Please refer to the Infiniband Switch User Guide for further details).
  • Changed DSCP configuration to be per port instead of global.
  • Network Direct: Fixed race in NDK between handling of incoming connection and destruction of a listener.
  • Network Direct: Fixed race between NDK object creation and usage.
  • Improved TCB (Transmission Control Block) management on send.
  • Improved transmit and receive in multi stream scenarios.
  • Enabled hardware checksum offload for non TCP/UDP traffic with ConnectX3-Pro.
  • Improved stability when handling OIDs during driver reset.
  • Added IP based RoCE
  • Added non-default PKey in VM
  • Optimized interrupt moderation values in SR-IOV VF mode for IPoIB
  • Improved perf_tuning detection for the first port
  • Improved performance in packet forwarding scenarios
  • Decreased dropped packets rate for Ethernet significantly
  • Changed default perf_tuning scenario to be “Balanced configuration”
  • Various performance improvements
  • Added ability to read active RoCE configuration from hardware
  • Added support for RoCE v1.25
New Features and Changes in Version 4.70.50000 from version 4.60.17738:
  • All user-space binaries are now signed.
  • Changed Ethernet and IPoIB event log messages to be more clear.
  • Ported SDK project to Visual Studio 2013.
  • Added support for IPoIB SR-IOV Virtual Function (VF) over KVM Hypervisor (Beta level)
  • Added support for non-default pkey, as queried from OpenSM, on IPoIB SR-IOV VF over KVM.
  • Added IPoIB QoS proprietary counters, diagnostics and traffic for monitoring, using Windows' perfmon utility.
  • Added Virtual Ethernet Adapter support which enables using SMB Direct and HyperV (VMQ and NVGRE (over ConnectX®-3 Pro)) on the same port.
  • Added lossless TCP buffer management when no receive WQE are available.
  • Added ConnectX-3 Pro support for RoCEv2.
  • Changed the transport name in vstat and ibstat to be RoCE v2.0
  • Improved perf_tuning setting in single CPU machines to avoid TX collision.
  • Ensured that uninstallation of Mellanox package in Virtual Machine leaves the system clean.
  • Improved information in event log when a bad cable is detected.
  • Improved resiliency on error flow in Ethernet, IPoIB and bus drivers.
  • Added support OF IPv6 to all nd_*_* tests.
  • Enabled optimal interrupt moderation values in SR-IOV VF mode.
  • Stopped using NdisQueryNetBufferPhysicalCount to improve CPU utilization.
  • Enabled searching for IBAT routes based on dest only instead of src,dest and added a mechanism preventing memory growth in IBAT entries.
  • Allowed any number of RSS processors, not only a power of 2.
  • Ensured SR-IOV mode is not enabled for IPoIB ports, which resulted in confusing message in event log.
  • Added support for "unknown" link state indication
  • Added support for DMA checks by driver verifier on SR-IOV Virtual Function.
  • Added support for NVGRE over LBFO Team.
  • Improved performance of handling change receive ring affinity request.
  • In SR-IOV mode, improved resiliency to driver failures in the Virtual Machine which could result in driver load failure in VM.
  • In SR-IOV mode, improved resilience in VF to PF communication.
  • Improved structure of INF file for SR-IOV Physical and Virtual Functions.
New Features and Changes in Version 4.60.17738 from Version 4.4:
  • Enabled configuration changes saving upon Inbox and upgrade from previous releases.
  • Enabled CIM installation as a standalone package.
  • Added IPv6 support to all nd_*_* tests.
  • Added the ability to rearm a CQ in the kernel.
  • Added the ability to handle LID changes.
  • Changed connection timeout behavior. Added the STATUS_CONNECTION_REFUSED return value upon connection timeout.
  • Added the ability to handle LID changes.
  • Added support for iSCSI boot over IPoIB.
  • Performance improvements in latency.
  • Modified the CQ size to prevent CQ overrun.
  • Added DSCP support over IPv4.
  • Added traffic profile.
  • Performance improvements.
  • Added the "ParentBusPath" option to each port registry key.
  • Added a new hardware ID for ConnectX-3 Pro NICs.
  • The QP numbers allocation is now in round-robin manner.
  • "RecvCompletionMethod" as Interrupt is no longer supported.
  • Removed  the ‘Non-DMA’ option from the bus driver configuration.
  • Removed the "TXRingNum" option from the UI.
  • Added NVGRE hardware off-load support.
  • Added the "EncapsulatedPacketTaskOffload" option to the UI when using ConnectX-3 Pro NICs.
  • Added the "nd_send_bw" and "nd_send_lat" ND benchmarking tools.
  • Added IP-IP checksum off-load support.
  • Added Ports TX arbitration and Bandwidth allocation per port.
  • The following ND providers, MLX4ND and MLX4ND2 are now installed by default.
  • Added Sniffer for RoCE packets.
  • The used RoCE mode set upon driver load is now printed into event log message.

Version:4.70.50000 (23 May 2014)
Fixes

Upgrade Requirement:
Recommended - HPE recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 4.70.50000:

  • Removal of virtual IPoIB ports during uninstallation.
  • Restoration failure of DNS servers during upgrade.
  • Issue which caused Mellanox miniport devices to be listed in "Devices and Printers".
  • Ethernet and IPoIB deadlock in power state change during shutdown/reboot.
  • Stability issues.
  • "part_man exit" with return value 0 in case of error.
  • "ibstat" erratic behavior on devices with RoCE enabled.
  • RDMA Activity counters didn't increase for ND traffic.
  • Hard-coded limitation of 4 SGEs.
  • JumboPackets registry key was not restored correctly.
  • Mellanox devices were listed in "Devices and Printers" and had "Safe Removal" UI.
  • Error statistics collection which could cause false error report.
  • Connectivity problem between Hyper-V VMs on the same host.
  • Loopback issues in the virtualization environment.
  • Issue that prevented receiving ARP traffic in NVGRE mode.
The following issues have been resolved in version 4.60.17738:
  • When uninstalling and reinstalling the driver, the ConnectX-3 Pro Ethernet device was displayed in the Device Manager with a yellow bang (!).
  • Random parsing failures of string registry entries.
  • Compilation failure of "Hello_world" in the SDK.
  • CPU utilization report in nd_*_* tests.
  • sync problems of bidirectional mode in ibv_read_bw/ibv_write_bw.
  • Fixed un-initialized memory access over the VMQ.
  • MAC address uniqueness issue in Microsoft Windows 2008 R2.
  • Packets with corrupted VLAN header were sent when they were meant to be untagged.
  • Unexpected behavior upon QP asynchronous event.
  • The reported link speed value was zero in case of a disconnected network adapter.
  • Port channel teaming issue with CISCO switch and Fabric Extenders traffic drop in Windows Server 2008 R2.
  • Issue preventing get-event to show information after the PCI device is disabled.
The following issues have been resolved in version 4.4:
  • Issue causing the setup to fail upon perf_tune failure during the installation. An error message will be printed in the installation log upon perf_tune failure.
  • Issue with the Mellanox adapter being shown on the USB removal menu, which caused the removal of the Mellanox adapter once removing the USB.
  • Crash in the ib_send_lat/bw utilities caused when the port link was down.
  • “Restore to defaults” option in the perf_tuning tool. Now the default values are being restored.
  • Miniport reset on sending scenarios.
  • Failure of ND connectivity between Virtual Machines on the same host.
  • Bluescreen issue that occurred when disabling the interface after a TX stress over the VMQ.
  • Failure of MPI/ND over InfiniBand

The following issues have been resolved in version 4.3:

  • The RSS indirection table mapping incorrectly built when there were fewer RX rings than RSS cores.
  • Error flows that resulted in a BSOD during driver startup/unload.
  • A leak in active resources caused a BSOD to occur during shutdown.
  • The IBAL applications were prevented from working on machines with 2 cards.
  • When the first packet to be sent was not an ARP or a multicast packet, a packet drop might occur on a remote node.
  • Update to IPoIB VMQ affinity.
  • IPoIB VMQ parent queue management race condition occurred during reset.
  • DHCP packets were incorrectly passed from a Linux VM.
  • RDMA statistics for NDK were incorrectly reported.
  • Known memory leaks.
Enhancements

New Features and Changes in Version 4.70.50000 from version 4.60.17738:

  • All user-space binaries are now signed.
  • Changed Ethernet and IPoIB event log messages to be more clear.
  • Ported SDK project to Visual Studio 2013.
  • Added support for IPoIB SR-IOV Virtual Function (VF) over KVM Hypervisor (Beta level)
  • Added support for non-default pkey, as queried from OpenSM, on IPoIB SR-IOV VF over KVM.
  • Added IPoIB QoS proprietary counters, diagnostics and traffic for monitoring, using Windows' perfmon utility.
  • Added Virtual Ethernet Adapter support which enables using SMB Direct and HyperV (VMQ and NVGRE (over ConnectX®-3 Pro)) on the same port.
  • Added lossless TCP buffer management when no receive WQE are available.
  • Added ConnectX-3 Pro support for RoCEv2.
  • Changed the transport name in vstat and ibstat to be RoCE v2.0
  • Improved perf_tuning setting in single CPU machines to avoid TX collision.
  • Ensured that uninstallation of Mellanox package in Virtual Machine leaves the system clean.
  • Improved information in event log when a bad cable is detected.
  • Improved resiliency on error flow in Ethernet, IPoIB and bus drivers.
  • Added support OF IPv6 to all nd_*_* tests.
  • Enabled optimal interrupt moderation values in SR-IOV VF mode.
  • Stopped using NdisQueryNetBufferPhysicalCount to improve CPU utilization.
  • Enabled searching for IBAT routes based on dest only instead of src,dest and added a mechanism preventing memory growth in IBAT entries.
  • Allowed any number of RSS processors, not only a power of 2.
  • Ensured SR-IOV mode is not enabled for IPoIB ports, which resulted in confusing message in event log.
  • Added support for "unknown" link state indication
  • Added support for DMA checks by driver verifier on SR-IOV Virtual Function.
  • Added support for NVGRE over LBFO Team.
  • Improved performance of handling change receive ring affinity request.
  • In SR-IOV mode, improved resiliency to driver failures in the Virtual Machine which could result in driver load failure in VM.
  • In SR-IOV mode, improved resilience in VF to PF communication.
  • Improved structure of INF file for SR-IOV Physical and Virtual Functions.
New Features and Changes in Version 4.60.17738 from Version 4.4:
  • Enabled configuration changes saving upon Inbox and upgrade from previous releases.
  • Enabled CIM installation as a standalone package.
  • Added IPv6 support to all nd_*_* tests.
  • Added the ability to rearm a CQ in the kernel.
  • Added the ability to handle LID changes.
  • Changed connection timeout behavior. Added the STATUS_CONNECTION_REFUSED return value upon connection timeout.
  • Added the ability to handle LID changes.
  • Added support for iSCSI boot over IPoIB.
  • Performance improvements in latency.
  • Modified the CQ size to prevent CQ overrun.
  • Added DSCP support over IPv4.
  • Added traffic profile.
  • Performance improvements.
  • Added the "ParentBusPath" option to each port registry key.
  • Added a new hardware ID for ConnectX-3 Pro NICs.
  • The QP numbers allocation is now in round-robin manner.
  • "RecvCompletionMethod" as Interrupt is no longer supported.
  • Removed  the ‘Non-DMA’ option from the bus driver configuration.
  • Removed the "TXRingNum" option from the UI.
  • Added NVGRE hardware off-load support.
  • Added the "EncapsulatedPacketTaskOffload" option to the UI when using ConnectX-3 Pro NICs.
  • Added the "nd_send_bw" and "nd_send_lat" ND benchmarking tools.
  • Added IP-IP checksum off-load support.
  • Added Ports TX arbitration and Bandwidth allocation per port.
  • The following ND providers, MLX4ND and MLX4ND2 are now installed by default.
  • Added Sniffer for RoCE packets.
  • The used RoCE mode set upon driver load is now printed into event log message.
New Features and Changes in Version 4.4 from Version 4.3:

General Features:

  • Added a notification in the event log in case SMB is not supported in ConnectX2 firmware.
  • Added the trace tool for WPP tracing.
  • Removed port setting registry key during uninstall.

Performance:

  • Set 512 RX buffers by default.
  • Changed the perf_tuning setting to achieve a better performance tuning

Ethernet Features:

  • Added Transmit Side Scaling (TSS).
  • Added Ethernet QoS proprietary counters, diagnostics and traffic for monitoring, using Windows perfmon utility.
  • Added to the MTU size the IP header size (1500 ->1514, 9600->9614). Thus the minimum Jumbo frame size is 614.
  • Interrupt moderation supports the following new profiles:
    • Low Latency
    • Moderate
    • Aggressive
  • Made mlx4_bus and Ethernet devices removable.
  • Network Direct: Added support for NDv2.
  • Network Direct: Set the default ND provide value to mlx4nd2.
  • Network Direct: Added the option of sensing the incoming Read messages according to the device capabilities when creating an EndPoint limit.
  • Network Direct: Removed the option of NDK registration failure requiring a reboot of the machine to register it again.
  • Removed the QoS attributes when disabling QoS.
  • Enabled MaxRssProcessirs support of the following values: 1, 2, 4, 8, 16, 32, 64.

InfiniBand Features:

  • Added the option of vstat displaying the active_mtu of the ports.
  • Allowed registration of a large Memory Region which is splitted to many segments.
  • Added the option of ibv_devinfo displaying the correct MTU value after it was changed.
  • Added the option of part_man printing the adapter name when the Port GUID is set to zero.
  • Added the option of part_man printing the leading zeroes of port GUID.

Installation / Upgrade:

  • Prevented displaying a message to upgrade the firmware for OEM NICs if it has the latest firmware version.
  • Removed portsetting registry key during uninstall.

New Features and Changes in Version 4.3 from Version 4.2

General Features:

  • Added support for a new provider called MLX4ND, which supports both NDv1 and NDv2 interfaces.

Ethernet Features:

  • RoCE MTU value is no longer set to 1024 by default.
  • All options stay as they are and can only be chosen if they were selected explicitly in the UI/registry.

The current default state is as follows:

  • The value is now derived from the MTU (or MaxFramSize, or Jumbo Packets value) and they are all aliases for the same value).
  • Value is aligned to 256,512,1024,2048 in a way that it will be rounded down to the nearest power of two of the ETH MTU.

InfiniBand Features:

  • Added ibdiagnet utility support.

New Features and Changes in Version 4.2 from Version 3.2.0

General Features:

  • Modified RSS cores and changed VMQ affinity on the fly.
  • Fixed restart issue when there are not enough MSI-X vectors for each machine core.
  • Added support for K-GROUPS processors (more than 64 processors support) to allow assignment of MSI-X affinity for multiple processor groups.
  • Set an adequate number of MTTs to map all physical memory.
  • Allocated firmware and ICM memory in chunks of non-paged memory instead of using contiguous physical memory.
  • Changed device names in device manager and their hardware IDs. The changes were made to distinguish between ConnectX-2 and ConnectX-3:
    • for ConnectX-2: MLX4\ConnectX-2_Eth and IBA\ConnectX-2_IPoIB
    • for ConnectX-3: MLX4\ConnectX-3_Eth and IBA\ConnectX-3_IPoIB

Note: Set QoS settings only for ConnectX-3. Changing the hardware ID, forces the OS to install new device and re-build the registry keys.

  • Added an event log to indicate driver failure upon start if there are two HCA burned with the same GUID.
  • Added firmware upgrade support as part of the setup process. The setup burns the new firmware only on Mellanox cards. Firmware burning failure does not prevent the driver’s installation, therefore, it will show a warning. In this case, it is recommended to update the firmware manually.
  • Enabled configuration of TxRingNum registry key from the UI.
  • Improved the "Port Protocol" dialog.
  • Added Registry key documentation to the setup package.

Performance Enhancements:

  • Optimized code performance.
  • Increased send parallelism.
  • Memory used in receive flow is now allocated with the same affinity of the handling processor for faster access.
  • Statistics parameters are now directly read from hardware instead of being calculated by software.
  • Added support for BlueFlame. BlueFlame is now the default working mode for all packets that have a descriptor which fits into a BF register (currently 256 bytes). Use "BlueFlame" registry key to enable\disable this feature.
  • Added support for RSS functionality on available processors numbers. Used to be restricted to start at the first processor.
  • Changed RSS registry defaults to give better out of the box performance.
  • Added a performance UI to tune performance under various scenarios.
  • Added a tool to tune performance under various scenarios.

Ethernet Features:

  • Added support for multiple TX rings.
  • Added an option to verify that the number of multicast groups used is no higher than the firmware limits.
  • Improved performance in virtualization when using VMQ.

IPoIB Features:

  • Added support for multiple TX rings. The new driver advertises its TSS capability (using multiple TX rings). This feature will not be used when communicating with older version drivers (such as the inbox driver). This way IPv4 communication in a mixed environment that includes the inbox driver should work. IPv6 communication may be problematic in such an environment.
  • Eliminated some race conditions in IPoIB mcast handling.
  • Added mcast addresses according to the Windows mcast table in addition to mcast addresses from igmp\mld queries, in order to connect to such mcasts that are not reported by the queries.
  • Removed redundant LID_CHANGE events. This fixes the redundant reconnection of all IPoIB mcasts.
  • Added support for VM migration. When a VM is migrated from one host to another it does not send a new ARP to hosts it already knew when it was sitting on the first host. In order to prevent communication interruption to such hosts, the driver will initiate an ARP to learn them again.
  • Added support for the part_man tool. It can create only one additional IPoIB interface per port GUID. This feature can be utilized to use different IPoIB interfaces for SMB and Hyper-V. The virtual ports configuration is removed during uninstallation.
  • The following tools were added to the setup package:
    • ibv_asyncwatch.exe
    • ibv_atomic_bw.exe
    • ibv_atomic_lat.exe
    • ibv_devinfo.exe
    • ibv_rc_pingpong.exe
    • ibv_rdma_bw.exe
    • ibv_rdma_lat.exe
    • ibaddr.exe
    • ibcacheedit.exe
    • iblinkinfo.exe
    • ibqueryerrors.exe
    • ibsysstat.exe
    • saquery.exe
    • smpdump.exe

Version:4.60.17738 (20 Mar 2014)
Fixes

Upgrade Requirement:
Recommended - HP recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 4.60.17738:

  • Packets with corrupted VLAN header were sent when they were meant to be untagged.
  • Unexpected behavior upon QP asynchronous event.
  • The reported link speed value was zero in case of a disconnected network adapter.
The following issues have been resolved in version 4.55:
  • When uninstalling and reinstalling the driver, the ConnectX-3 Pro Ethernet device was displayed in the Device Manager with a yellow bang (!).
  • Random parsing failures of string registry entries.
  • Compilation failure of "Hello_world" in the SDK.
  • CPU utilization report in nd_*_* tests.
  • sync problems of bidirectional mode in ibv_read_bw/ibv_write_bw.
  • Fixed un-initialized memory access over the VMQ.
  • Fixed nd_*_bw to achieve better performance (memory buffer alignment) and consistent results.
  • Issue preventing messages to be sent in VLAN 0 when using many VMQ rings.
  • "part_man" issue related to wrong statistics over virtual partman interfaces.
The following issues have been resolved in version 4.4:
  • Issue causing the setup to fail upon perf_tune failure during the installation. An error message will be printed in the installation log upon perf_tune failure.
  • Issue with the Mellanox adapter being shown on the USB removal menu, which caused the removal of the Mellanox adapter once removing the USB.
  • Crash in the ib_send_lat/bw utilities caused when the port link was down.
  • “Restore to defaults” option in the perf_tuning tool. Now the default values are being restored.
  • Miniport reset on sending scenarios.
  • Failure of ND connectivity between Virtual Machines on the same host.
  • Bluescreen issue that occurred when disabling the interface after a TX stress over the VMQ.
  • Failure of MPI/ND over InfiniBand

The following issues have been resolved in version 4.3:

  • The RSS indirection table mapping incorrectly built when there were fewer RX rings than RSS cores.
  • Error flows that resulted in a BSOD during driver startup/unload.
  • A leak in active resources caused a BSOD to occur during shutdown.
  • The IBAL applications were prevented from working on machines with 2 cards.
  • When the first packet to be sent was not an ARP or a multicast packet, a packet drop might occur on a remote node.
  • Update to IPoIB VMQ affinity.
  • IPoIB VMQ parent queue management race condition occurred during reset.
  • DHCP packets were incorrectly passed from a Linux VM.
  • RDMA statistics for NDK were incorrectly reported.
  • Known memory leaks.
Enhancements

New Features and Changes in Version 4.60.17738 from Version 4.4:

  • Enabled configuration changes saving upon Inbox and upgrade from previous releases.
  • Enabled CIM installation as a standalone package.
  • Added IPv6 support to all nd_*_* tests.
  • Added the ability to rearm a CQ in the kernel.
  • Added the ability to handle LID changes.
  • Changed connection timeout behavior. Added the STATUS_CONNECTION_REFUSED return value upon connection timeout.
  • Added the ability to handle LID changes.
  • Added support for iSCSI boot over IPoIB.
  • Performance improvements in latency.
  • Modified the CQ size to prevent CQ overrun.
  • Added DSCP support over IPv4.
  • Added traffic profile.
  • Performance improvements.
  • Added the "ParentBusPath" option to each port registry key.
  • Added a new hardware ID for ConnectX-3 Pro NICs.
  • The QP numbers allocation is now in round-robin manner.
  • "RecvCompletionMethod" as Interrupt is no longer supported.
  • Removed  the ‘Non-DMA’ option from the bus driver configuration.
  • Removed the "TXRingNum" option from the UI.
  • Added NVGRE hardware off-load support.
  • Added the "EncapsulatedPacketTaskOffload" option to the UI when using ConnectX-3 Pro NICs.
  • Added the "nd_send_bw" and "nd_send_lat" ND benchmarking tools.
  • Added IP-IP checksum off-load support.
  • Added Ports TX arbitration and Bandwidth allocation per port.
  • The following ND providers, MLX4ND and MLX4ND2 are now installed by default.
  • Added Sniffer for RoCE packets.
  • The used RoCE mode set upon driver load is now printed into event log message.
New Features and Changes in Version 4.4 from Version 4.3:

General Features:

  • Added a notification in the event log in case SMB is not supported in ConnectX2 firmware.
  • Added the trace tool for WPP tracing.
  • Removed port setting registry key during uninstall.

Performance:

  • Set 512 RX buffers by default.
  • Changed the perf_tuning setting to achieve a better performance tuning

Ethernet Features:

  • Added Transmit Side Scaling (TSS).
  • Added Ethernet QoS proprietary counters, diagnostics and traffic for monitoring, using Windows perfmon utility.
  • Added to the MTU size the IP header size (1500 ->1514, 9600->9614). Thus the minimum Jumbo frame size is 614.
  • Interrupt moderation supports the following new profiles:
    • Low Latency
    • Moderate
    • Aggressive
  • Made mlx4_bus and Ethernet devices removable.
  • Network Direct: Added support for NDv2.
  • Network Direct: Set the default ND provide value to mlx4nd2.
  • Network Direct: Added the option of sensing the incoming Read messages according to the device capabilities when creating an EndPoint limit.
  • Network Direct: Removed the option of NDK registration failure requiring a reboot of the machine to register it again.
  • Removed the QoS attributes when disabling QoS.
  • Enabled MaxRssProcessirs support of the following values: 1, 2, 4, 8, 16, 32, 64.

InfiniBand Features:

  • Added the option of vstat displaying the active_mtu of the ports.
  • Allowed registration of a large Memory Region which is splitted to many segments.
  • Added the option of ibv_devinfo displaying the correct MTU value after it was changed.
  • Added the option of part_man printing the adapter name when the Port GUID is set to zero.
  • Added the option of part_man printing the leading zeroes of port GUID.

Installation / Upgrade:

  • Prevented displaying a message to upgrade the firmware for OEM NICs if it has the latest firmware version.
  • Removed portsetting registry key during uninstall.

New Features and Changes in Version 4.3 from Version 4.2

General Features:

  • Added support for a new provider called MLX4ND, which supports both NDv1 and NDv2 interfaces.

Ethernet Features:

  • RoCE MTU value is no longer set to 1024 by default.
  • All options stay as they are and can only be chosen if they were selected explicitly in the UI/registry.

The current default state is as follows:

  • The value is now derived from the MTU (or MaxFramSize, or Jumbo Packets value) and they are all aliases for the same value).
  • Value is aligned to 256,512,1024,2048 in a way that it will be rounded down to the nearest power of two of the ETH MTU.

InfiniBand Features:

  • Added ibdiagnet utility support.

New Features and Changes in Version 4.2 from Version 3.2.0

General Features:

  • Modified RSS cores and changed VMQ affinity on the fly.
  • Fixed restart issue when there are not enough MSI-X vectors for each machine core.
  • Added support for K-GROUPS processors (more than 64 processors support) to allow assignment of MSI-X affinity for multiple processor groups.
  • Set an adequate number of MTTs to map all physical memory.
  • Allocated firmware and ICM memory in chunks of non-paged memory instead of using contiguous physical memory.
  • Changed device names in device manager and their hardware IDs. The changes were made to distinguish between ConnectX-2 and ConnectX-3:
    • for ConnectX-2: MLX4\ConnectX-2_Eth and IBA\ConnectX-2_IPoIB
    • for ConnectX-3: MLX4\ConnectX-3_Eth and IBA\ConnectX-3_IPoIB

Note: Set QoS settings only for ConnectX-3. Changing the hardware ID, forces the OS to install new device and re-build the registry keys.

  • Added an event log to indicate driver failure upon start if there are two HCA burned with the same GUID.
  • Added firmware upgrade support as part of the setup process. The setup burns the new firmware only on Mellanox cards. Firmware burning failure does not prevent the driver’s installation, therefore, it will show a warning. In this case, it is recommended to update the firmware manually.
  • Enabled configuration of TxRingNum registry key from the UI.
  • Improved the "Port Protocol" dialog.
  • Added Registry key documentation to the setup package.

Performance Enhancements:

  • Optimized code performance.
  • Increased send parallelism.
  • Memory used in receive flow is now allocated with the same affinity of the handling processor for faster access.
  • Statistics parameters are now directly read from hardware instead of being calculated by software.
  • Added support for BlueFlame. BlueFlame is now the default working mode for all packets that have a descriptor which fits into a BF register (currently 256 bytes). Use "BlueFlame" registry key to enable\disable this feature.
  • Added support for RSS functionality on available processors numbers. Used to be restricted to start at the first processor.
  • Changed RSS registry defaults to give better out of the box performance.
  • Added a performance UI to tune performance under various scenarios.
  • Added a tool to tune performance under various scenarios.

Ethernet Features:

  • Added support for multiple TX rings.
  • Added an option to verify that the number of multicast groups used is no higher than the firmware limits.
  • Improved performance in virtualization when using VMQ.

IPoIB Features:

  • Added support for multiple TX rings. The new driver advertises its TSS capability (using multiple TX rings). This feature will not be used when communicating with older version drivers (such as the inbox driver). This way IPv4 communication in a mixed environment that includes the inbox driver should work. IPv6 communication may be problematic in such an environment.
  • Eliminated some race conditions in IPoIB mcast handling.
  • Added mcast addresses according to the Windows mcast table in addition to mcast addresses from igmp\mld queries, in order to connect to such mcasts that are not reported by the queries.
  • Removed redundant LID_CHANGE events. This fixes the redundant reconnection of all IPoIB mcasts.
  • Added support for VM migration. When a VM is migrated from one host to another it does not send a new ARP to hosts it already knew when it was sitting on the first host. In order to prevent communication interruption to such hosts, the driver will initiate an ARP to learn them again.
  • Added support for the part_man tool. It can create only one additional IPoIB interface per port GUID. This feature can be utilized to use different IPoIB interfaces for SMB and Hyper-V. The virtual ports configuration is removed during uninstallation.
  • The following tools were added to the setup package:
    • ibv_asyncwatch.exe
    • ibv_atomic_bw.exe
    • ibv_atomic_lat.exe
    • ibv_devinfo.exe
    • ibv_rc_pingpong.exe
    • ibv_rdma_bw.exe
    • ibv_rdma_lat.exe
    • ibaddr.exe
    • ibcacheedit.exe
    • iblinkinfo.exe
    • ibqueryerrors.exe
    • ibsysstat.exe
    • saquery.exe
    • smpdump.exe

Version:4.60 (15 Jan 2014)
Fixes

Upgrade Requirement:
Recommended - HPE recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 4.60:

  • MAC address uniqueness issue in Microsoft Windows 2008 R2.
  • Packets with corrupted VLAN header were sent when they were meant to be untagged.
  • Unexpected behavior upon QP asynchronous event.
  • The reported link speed value was zero in case of a disconnected network adapter.
The following issues have been resolved in version 4.55:
  • When uninstalling and reinstalling the driver, the ConnectX-3 Pro Ethernet device was displayed in the Device Manager with a yellow bang (!).
  • Random parsing failures of string registry entries.
  • Compilation failure of "Hello_world" in the SDK.
  • CPU utilization report in nd_*_* tests.
  • sync problems of bidirectional mode in ibv_read_bw/ibv_write_bw.
  • Fixed un-initialized memory access over the VMQ.
  • Fixed nd_*_bw to achieve better performance (memory buffer alignment) and consistent results.
  • Issue preventing messages to be sent in VLAN 0 when using many VMQ rings.
  • "part_man" issue related to wrong statistics over virtual partman interfaces.

The following issues have been resolved in version 4.4:
  • Issue causing the setup to fail upon perf_tune failure during the installation. An error message will be printed in the installation log upon perf_tune failure.
  • Issue with the Mellanox adapter being shown on the USB removal menu, which caused the removal of the Mellanox adapter once removing the USB.
  • Crash in the ib_send_lat/bw utilities caused when the port link was down.
  • “Restore to defaults” option in the perf_tuning tool. Now the default values are being restored.
  • Miniport reset on sending scenarios.
  • Failure of ND connectivity between Virtual Machines on the same host.
  • Bluescreen issue that occurred when disabling the interface after a TX stress over the VMQ.
  • Failure of MPI/ND over InfiniBand

The following issues have been resolved in version 4.3:

  • The RSS indirection table mapping incorrectly built when there were fewer RX rings than RSS cores.
  • Error flows that resulted in a BSOD during driver startup/unload.
  • A leak in active resources caused a BSOD to occur during shutdown.
  • The IBAL applications were prevented from working on machines with 2 cards.
  • When the first packet to be sent was not an ARP or a multicast packet, a packet drop might occur on a remote node.
  • Update to IPoIB VMQ affinity.
  • IPoIB VMQ parent queue management race condition occurred during reset.
  • DHCP packets were incorrectly passed from a Linux VM.
  • RDMA statistics for NDK were incorrectly reported.
  • Known memory leaks.
Enhancements

New Features and Changes in Version 4.60 from Version 4.4:

  • Enabled configuration changes saving upon Inbox and upgrade from previous releases.
  • Enabled CIM installation as a standalone package.
  • Added IPv6 support to all nd_*_* tests.
  • Added the ability to rearm a CQ in the kernel.
  • Added the ability to handle LID changes.
  • Changed connection timeout behavior. Added the STATUS_CONNECTION_REFUSED return value upon connection timeout.
  • Added the ability to handle LID changes.
  • Added support for iSCSI boot over IPoIB.
  • Performance improvements in latency.
  • Modified the CQ size to prevent CQ overrun.
  • Added DSCP support over IPv4.
  • Added traffic profile.
  • Performance improvements.
  • Added the "ParentBusPath" option to each port registry key.
  • Added a new hardware ID for ConnectX-3 Pro NICs.
  • The QP numbers allocation is now in round-robin manner.
  • "RecvCompletionMethod" as Interrupt is no longer supported.
  • Removed  the ‘Non-DMA’ option from the bus driver configuration.
  • Removed the "TXRingNum" option from the UI.
  • Added NVGRE hardware off-load support.
  • Added the "EncapsulatedPacketTaskOffload" option to the UI when using ConnectX-3 Pro NICs.
  • Added the "nd_send_bw" and "nd_send_lat" ND benchmarking tools.
  • Added IP-IP checksum off-load support.
  • Added Ports TX arbitration and Bandwidth allocation per port.
  • The following ND providers, MLX4ND and MLX4ND2 are now installed by default.
  • Added Sniffer for RoCE packets.
  • The used RoCE mode set upon driver load is now printed into event log message.
New Features and Changes in Version 4.4 from Version 4.3:

General Features:

  • Added a notification in the event log in case SMB is not supported in ConnectX2 firmware.
  • Added the trace tool for WPP tracing.
  • Removed port setting registry key during uninstall.

Performance:

  • Set 512 RX buffers by default.
  • Changed the perf_tuning setting to achieve a better performance tuning

Ethernet Features:

  • Added Transmit Side Scaling (TSS).
  • Added Ethernet QoS proprietary counters, diagnostics and traffic for monitoring, using Windows perfmon utility.
  • Added to the MTU size the IP header size (1500 ->1514, 9600->9614). Thus the minimum Jumbo frame size is 614.
  • Interrupt moderation supports the following new profiles:
    • Low Latency
    • Moderate
    • Aggressive
  • Made mlx4_bus and Ethernet devices removable.
  • Network Direct: Added support for NDv2.
  • Network Direct: Set the default ND provide value to mlx4nd2.
  • Network Direct: Added the option of sensing the incoming Read messages according to the device capabilities when creating an EndPoint limit.
  • Network Direct: Removed the option of NDK registration failure requiring a reboot of the machine to register it again.
  • Removed the QoS attributes when disabling QoS.
  • Enabled MaxRssProcessirs support of the following values: 1, 2, 4, 8, 16, 32, 64.

InfiniBand Features:

  • Added the option of vstat displaying the active_mtu of the ports.
  • Allowed registration of a large Memory Region which is splitted to many segments.
  • Added the option of ibv_devinfo displaying the correct MTU value after it was changed.
  • Added the option of part_man printing the adapter name when the Port GUID is set to zero.
  • Added the option of part_man printing the leading zeroes of port GUID.

Installation / Upgrade:

  • Prevented displaying a message to upgrade the firmware for OEM NICs if it has the latest firmware version.
  • Removed portsetting registry key during uninstall.

New Features and Changes in Version 4.3 from Version 4.2

General Features:

  • Added support for a new provider called MLX4ND, which supports both NDv1 and NDv2 interfaces.

Ethernet Features:

  • RoCE MTU value is no longer set to 1024 by default.
  • All options stay as they are and can only be chosen if they were selected explicitly in the UI/registry.

The current default state is as follows:

  • The value is now derived from the MTU (or MaxFramSize, or Jumbo Packets value) and they are all aliases for the same value).
  • Value is aligned to 256,512,1024,2048 in a way that it will be rounded down to the nearest power of two of the ETH MTU.

InfiniBand Features:

  • Added ibdiagnet utility support.

New Features and Changes in Version 4.2 from Version 3.2.0

General Features:

  • Modified RSS cores and changed VMQ affinity on the fly.
  • Fixed restart issue when there are not enough MSI-X vectors for each machine core.
  • Added support for K-GROUPS processors (more than 64 processors support) to allow assignment of MSI-X affinity for multiple processor groups.
  • Set an adequate number of MTTs to map all physical memory.
  • Allocated firmware and ICM memory in chunks of non-paged memory instead of using contiguous physical memory.
  • Changed device names in device manager and their hardware IDs. The changes were made to distinguish between ConnectX-2 and ConnectX-3:
    • for ConnectX-2: MLX4\ConnectX-2_Eth and IBA\ConnectX-2_IPoIB
    • for ConnectX-3: MLX4\ConnectX-3_Eth and IBA\ConnectX-3_IPoIB

Note: Set QoS settings only for ConnectX-3. Changing the hardware ID, forces the OS to install new device and re-build the registry keys.

  • Added an event log to indicate driver failure upon start if there are two HCA burned with the same GUID.
  • Added firmware upgrade support as part of the setup process. The setup burns the new firmware only on Mellanox cards. Firmware burning failure does not prevent the driver’s installation, therefore, it will show a warning. In this case, it is recommended to update the firmware manually.
  • Enabled configuration of TxRingNum registry key from the UI.
  • Improved the "Port Protocol" dialog.
  • Added Registry key documentation to the setup package.

Performance Enhancements:

  • Optimized code performance.
  • Increased send parallelism.
  • Memory used in receive flow is now allocated with the same affinity of the handling processor for faster access.
  • Statistics parameters are now directly read from hardware instead of being calculated by software.
  • Added support for BlueFlame. BlueFlame is now the default working mode for all packets that have a descriptor which fits into a BF register (currently 256 bytes). Use "BlueFlame" registry key to enable\disable this feature.
  • Added support for RSS functionality on available processors numbers. Used to be restricted to start at the first processor.
  • Changed RSS registry defaults to give better out of the box performance.
  • Added a performance UI to tune performance under various scenarios.
  • Added a tool to tune performance under various scenarios.

Ethernet Features:

  • Added support for multiple TX rings.
  • Added an option to verify that the number of multicast groups used is no higher than the firmware limits.
  • Improved performance in virtualization when using VMQ.

IPoIB Features:

  • Added support for multiple TX rings. The new driver advertises its TSS capability (using multiple TX rings). This feature will not be used when communicating with older version drivers (such as the inbox driver). This way IPv4 communication in a mixed environment that includes the inbox driver should work. IPv6 communication may be problematic in such an environment.
  • Eliminated some race conditions in IPoIB mcast handling.
  • Added mcast addresses according to the Windows mcast table in addition to mcast addresses from igmp\mld queries, in order to connect to such mcasts that are not reported by the queries.
  • Removed redundant LID_CHANGE events. This fixes the redundant reconnection of all IPoIB mcasts.
  • Added support for VM migration. When a VM is migrated from one host to another it does not send a new ARP to hosts it already knew when it was sitting on the first host. In order to prevent communication interruption to such hosts, the driver will initiate an ARP to learn them again.
  • Added support for the part_man tool. It can create only one additional IPoIB interface per port GUID. This feature can be utilized to use different IPoIB interfaces for SMB and Hyper-V. The virtual ports configuration is removed during uninstallation.
  • The following tools were added to the setup package:
    • ibv_asyncwatch.exe
    • ibv_atomic_bw.exe
    • ibv_atomic_lat.exe
    • ibv_devinfo.exe
    • ibv_rc_pingpong.exe
    • ibv_rdma_bw.exe
    • ibv_rdma_lat.exe
    • ibaddr.exe
    • ibcacheedit.exe
    • iblinkinfo.exe
    • ibqueryerrors.exe
    • ibsysstat.exe
    • saquery.exe
    • smpdump.exe

Version:4.4 (25 Jun 2013)
Fixes

Upgrade Requirement:
Recommended - HP recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 4.4:

  • Issue causing the setup to fail upon perf_tune failure during the installation. An error message will be printed in the installation log upon perf_tune failure.
  • Issue with the Mellanox adapter being shown on the USB removal menu, which caused the removal of the Mellanox adapter once removing the USB.
  • Crash in the ib_send_lat/bw utilities caused when the port link was down.
  • “Restore to defaults” option in the perf_tuning tool. Now the default values are being restored.
  • Miniport reset on sending scenarios.
  • Failure of ND connectivity between Virtual Machines on the same host.
  • Bluescreen issue that occurred when disabling the interface after a TX stress over the VMQ.
  • Failure of MPI/ND over InfiniBand

The following issues have been resolved in version 4.3:

  • The RSS indirection table mapping incorrectly built when there were fewer RX rings than RSS cores.
  • Error flows that resulted in a BSOD during driver startup/unload.
  • A leak in active resources caused a BSOD to occur during shutdown.
  • The IBAL applications were prevented from working on machines with 2 cards.
  • When the first packet to be sent was not an ARP or a multicast packet, a packet drop might occur on a remote node.
  • Update to IPoIB VMQ affinity.
  • IPoIB VMQ parent queue management race condition occurred during reset.
  • DHCP packets were incorrectly passed from a Linux VM.
  • RDMA statistics for NDK were incorrectly reported.
  • Known memory leaks.
Enhancements

New Features and Changes in Version 4.4 from Version 4.3

General Features:

  • Added a notification in the event log in case SMB is not supported in ConnectX2 firmware.
  • Added the trace tool for WPP tracing.
  • Removed port setting registry key during uninstall.

Performance:

  • Set 512 RX buffers by default.
  • Changed the perf_tuning setting to achieve a better performance tuning

Ethernet Features:

  • Added Transmit Side Scaling (TSS).
  • Added Ethernet QoS proprietary counters, diagnostics and traffic for monitoring, using Windows perfmon utility.
  • Added to the MTU size the IP header size (1500 ->1514, 9600->9614). Thus the minimum Jumbo frame size is 614.
  • Interrupt moderation supports the following new profiles:
    • Low Latency
    • Moderate
    • Aggressive
  • Made mlx4_bus and Ethernet devices removable.
  • Network Direct: Added support for NDv2.
  • Network Direct: Set the default ND provide value to mlx4nd2.
  • Network Direct: Added the option of sensing the incoming Read messages according to the device capabilities when creating an EndPoint limit.
  • Network Direct: Removed the option of NDK registration failure requiring a reboot of the machine to register it again.
  • Removed the QoS attributes when disabling QoS.
  • Enabled MaxRssProcessirs support of the following values: 1, 2, 4, 8, 16, 32, 64.

InfiniBand Features:

  • Added the option of vstat displaying the active_mtu of the ports.
  • Allowed registration of a large Memory Region which is splitted to many segments.
  • Added the option of ibv_devinfo displaying the correct MTU value after it was changed.
  • Added the option of part_man printing the adapter name when the Port GUID is set to zero.
  • Added the option of part_man printing the leading zeroes of port GUID.

Installation / Upgrade:

  • Prevented displaying a message to upgrade the firmware for OEM NICs if it has the latest firmware version.
  • Removed portsetting registry key during uninstall.


New Features and Changes in Version 4.3 from Version 4.2

General Features:

  • Added support for a new provider called MLX4ND, which supports both NDv1 and NDv2 interfaces.

Ethernet Features:

  • RoCE MTU value is no longer set to 1024 by default.
  • All options stay as they are and can only be chosen if they were selected explicitly in the UI/registry.

The current default state is as follows:

  • The value is now derived from the MTU (or MaxFramSize, or Jumbo Packets value) and they are all aliases for the same value).
  • Value is aligned to 256,512,1024,2048 in a way that it will be rounded down to the nearest power of two of the ETH MTU.

InfiniBand Features:

  • Added ibdiagnet utility support.

New Features and Changes in Version 4.2 from Version 3.2.0

General Features:

  • Modified RSS cores and changed VMQ affinity on the fly.
  • Fixed restart issue when there are not enough MSI-X vectors for each machine core.
  • Added support for K-GROUPS processors (more than 64 processors support) to allow assignment of MSI-X affinity for multiple processor groups.
  • Set an adequate number of MTTs to map all physical memory.
  • Allocated firmware and ICM memory in chunks of non-paged memory instead of using contiguous physical memory.
  • Changed device names in device manager and their hardware IDs. The changes were made to distinguish between ConnectX-2 and ConnectX-3:
    • for ConnectX-2: MLX4\ConnectX-2_Eth and IBA\ConnectX-2_IPoIB
    • for ConnectX-3: MLX4\ConnectX-3_Eth and IBA\ConnectX-3_IPoIB

Note: Set QoS settings only for ConnectX-3. Changing the hardware ID, forces the OS to install new device and re-build the registry keys.

  • Added an event log to indicate driver failure upon start if there are two HCA burned with the same GUID.
  • Added firmware upgrade support as part of the setup process. The setup burns the new firmware only on Mellanox cards. Firmware burning failure does not prevent the driver’s installation, therefore, it will show a warning. In this case, it is recommended to update the firmware manually.
  • Enabled configuration of TxRingNum registry key from the UI.
  • Improved the "Port Protocol" dialog.
  • Added Registry key documentation to the setup package.

Performance Enhancements:

  • Optimized code performance.
  • Increased send parallelism.
  • Memory used in receive flow is now allocated with the same affinity of the handling processor for faster access.
  • Statistics parameters are now directly read from hardware instead of being calculated by software.
  • Added support for BlueFlame. BlueFlame is now the default working mode for all packets that have a descriptor which fits into a BF register (currently 256 bytes). Use "BlueFlame" registry key to enable\disable this feature.
  • Added support for RSS functionality on available processors numbers. Used to be restricted to start at the first processor.
  • Changed RSS registry defaults to give better out of the box performance.
  • Added a performance UI to tune performance under various scenarios.
  • Added a tool to tune performance under various scenarios.

Ethernet Features:

  • Added support for multiple TX rings.
  • Added an option to verify that the number of multicast groups used is no higher than the firmware limits.
  • Improved performance in virtualization when using VMQ.

IPoIB Features:

  • Added support for multiple TX rings. The new driver advertises its TSS capability (using multiple TX rings). This feature will not be used when communicating with older version drivers (such as the inbox driver). This way IPv4 communication in a mixed environment that includes the inbox driver should work. IPv6 communication may be problematic in such an environment.
  • Eliminated some race conditions in IPoIB mcast handling.
  • Added mcast addresses according to the Windows mcast table in addition to mcast addresses from igmp\mld queries, in order to connect to such mcasts that are not reported by the queries.
  • Removed redundant LID_CHANGE events. This fixes the redundant reconnection of all IPoIB mcasts.
  • Added support for VM migration. When a VM is migrated from one host to another it does not send a new ARP to hosts it already knew when it was sitting on the first host. In order to prevent communication interruption to such hosts, the driver will initiate an ARP to learn them again.
  • Added support for the part_man tool. It can create only one additional IPoIB interface per port GUID. This feature can be utilized to use different IPoIB interfaces for SMB and Hyper-V. The virtual ports configuration is removed during uninstallation.
  • The following tools were added to the setup package:
    • ibv_asyncwatch.exe
    • ibv_atomic_bw.exe
    • ibv_atomic_lat.exe
    • ibv_devinfo.exe
    • ibv_rc_pingpong.exe
    • ibv_rdma_bw.exe
    • ibv_rdma_lat.exe
    • ibaddr.exe
    • ibcacheedit.exe
    • iblinkinfo.exe
    • ibqueryerrors.exe
    • ibsysstat.exe
    • saquery.exe
    • smpdump.exe

Version:4.3 (21 Jan 2013)
Fixes

Upgrade Requirement:
Recommended - HPE recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 4.3

  • The RSS indirection table mapping incorrectly built when there were fewer RX rings than RSS cores.
  • Error flows that resulted in a BSOD during driver startup/unload.
  • A leak in active resources caused a BSOD to occur during shutdown.
  • The IBAL applications were prevented from working on machines with 2 cards.
  • When the first packet to be sent was not an ARP or a multicast packet, a packet drop might occur on a remote node.
  • Update to IPoIB VMQ affinity.
  • IPoIB VMQ parent queue management race condition occurred during reset.
  • DHCP packets were incorrectly passed from a Linux VM.
  • RDMA statistics for NDK were incorrectly reported.
  • Known memory leaks.
Enhancements

New Features and Changes in Version 4.3 from Version 4.2

General Features:

  • Added support for a new provider called MLX4ND, which supports both NDv1 and NDv2 interfaces.

Ethernet Features:

  • RoCE MTU value is no longer set to 1024 by default.
  • All options stay as they are and can only be chosen if they were selected explicitly in the UI/registry.

The current default state is as follows:

  • The value is now derived from the MTU (or MaxFramSize, or Jumbo Packets value) and they are all aliases for the same value).
  • Value is aligned to 256,512,1024,2048 in a way that it will be rounded down to the nearest power of two of the ETH MTU.

InfiniBand Features:

  • Added ibdiagnet utility support.

New Features and Changes in Version 4.2 from Version 3.2.0

General Features:

  • Modified RSS cores and changed VMQ affinity on the fly.
  • Fixed restart issue when there are not enough MSI-X vectors for each machine core.
  • Added support for K-GROUPS processors (more than 64 processors support) to allow assignment of MSI-X affinity for multiple processor groups.
  • Set an adequate number of MTTs to map all physical memory.
  • Allocated firmware and ICM memory in chunks of non-paged memory instead of using contiguous physical memory.
  • Changed device names in device manager and their hardware IDs. The changes were made to distinguish between ConnectX-2 and ConnectX-3:
    • for ConnectX-2: MLX4\ConnectX-2_Eth and IBA\ConnectX-2_IPoIB
    • for ConnectX-3: MLX4\ConnectX-3_Eth and IBA\ConnectX-3_IPoIB

Note: Set QoS settings only for ConnectX-3. Changing the hardware ID, forces the OS to install new device and re-build the registry keys.

  • Added an event log to indicate driver failure upon start if there are two HCA burned with the same GUID.
  • Added firmware upgrade support as part of the setup process. The setup burns the new firmware only on Mellanox cards. Firmware burning failure does not prevent the driver’s installation, therefore, it will show a warning. In this case, it is recommended to update the firmware manually.
  • Enabled configuration of TxRingNum registry key from the UI.
  • Improved the "Port Protocol" dialog.
  • Added Registry key documentation to the setup package.

Performance Enhancements:

  • Optimized code performance.
  • Increased send parallelism.
  • Memory used in receive flow is now allocated with the same affinity of the handling processor for faster access.
  • Statistics parameters are now directly read from hardware instead of being calculated by software.
  • Added support for BlueFlame. BlueFlame is now the default working mode for all packets that have a descriptor which fits into a BF register (currently 256 bytes). Use "BlueFlame" registry key to enable\disable this feature.
  • Added support for RSS functionality on available processors numbers. Used to be restricted to start at the first processor.
  • Changed RSS registry defaults to give better out of the box performance.
  • Added a performance UI to tune performance under various scenarios.
  • Added a tool to tune performance under various scenarios.

Ethernet Features:

  • Added support for multiple TX rings.
  • Added an option to verify that the number of multicast groups used is no higher than the firmware limits.
  • Improved performance in virtualization when using VMQ.

IPoIB Features:

  • Added support for multiple TX rings. The new driver advertises its TSS capability (using multiple TX rings). This feature will not be used when communicating with older version drivers (such as the inbox driver). This way IPv4 communication in a mixed environment that includes the inbox driver should work. IPv6 communication may be problematic in such an environment.
  • Eliminated some race conditions in IPoIB mcast handling.
  • Added mcast addresses according to the Windows mcast table in addition to mcast addresses from igmp\mld queries, in order to connect to such mcasts that are not reported by the queries.
  • Removed redundant LID_CHANGE events. This fixes the redundant reconnection of all IPoIB mcasts.
  • Added support for VM migration. When a VM is migrated from one host to another it does not send a new ARP to hosts it already knew when it was sitting on the first host. In order to prevent communication interruption to such hosts, the driver will initiate an ARP to learn them again.
  • Added support for the part_man tool. It can create only one additional IPoIB interface per port GUID. This feature can be utilized to use different IPoIB interfaces for SMB and Hyper-V. The virtual ports configuration is removed during uninstallation.
  • The following tools were added to the setup package:
    • ibv_asyncwatch.exe
    • ibv_atomic_bw.exe
    • ibv_atomic_lat.exe
    • ibv_devinfo.exe
    • ibv_rc_pingpong.exe
    • ibv_rdma_bw.exe
    • ibv_rdma_lat.exe
    • ibaddr.exe
    • ibcacheedit.exe
    • iblinkinfo.exe
    • ibqueryerrors.exe
    • ibsysstat.exe
    • saquery.exe
    • smpdump.exe

Version:4.2 (6 Nov 2012)
Enhancements

Upgrade Requirement:
Recommended - HP recommends users update to this version at their earliest convenience.

It is recommended to make sure that the inbox Mellanox driver is not in use, prior to installing WinOF v4.2 on a Windows 2012 machine. This is done by removing any Mellanox adapters from "Device Manager". Please refer "installation notes" for details.


General Features:

  • Modified RSS cores and changed VMQ affinity on the fly.
  • Fixed restart issue when there are not enough MSI-X vectors for each machine core.
  • Added support for K-GROUPS processors (more than 64 processors support) to allow assignment of MSI-X affinity for multiple processor groups.
  • Set an adequate number of MTTs to map all physical memory.
  • Allocated firmware and ICM memory in chunks of non-paged memory instead of using contiguous physical memory.
  • Fixed RSS indirection table mapping building when there are less RX rings than RSS cores.
  • Fixed a bug, preventing standard work with BAR value more than 4GB.
  • Fixed memory leaks.
  • Fixed error flows causing a Bluescreen in driver startup\unload.
  • Fixed a Bluescreen occurrence upon shutdown due to leak in active resources.
  • Changed device names in device manager and their hardware IDs. The changes were made to distinguish between ConnectX-2 and ConnectX-3:
    • for ConnectX-2: MLX4\ConnectX-2_Eth and IBA\ConnectX-2_IPoIB
    • for ConnectX-3: MLX4\ConnectX-3_Eth and IBA\ConnectX-3_IPoIB
    • Set QoS settings only for ConnectX-3. Changing the hardware ID, forces the OS to install new device and re-build the registry keys.
  • Added an event log to indicate driver failure upon start if there are two HCA burned with the same GUID.
  • Added firmware upgrade support as part of the setup process. The setup burns the new firmware only on Mellanox cards. Firmware burning failure does not prevent the driver’s installation, therefore, it will show a warning. In this case, it is recommended to update the firmware manually.
  • Enabled configuration of TxRingNum registry key from the UI.
  • Improved the "Port Protocol" dialog.
  • Added Registry key documentation to the setup package.
Performance Enhancements:
  • Optimized code performance.
  • Increased send parallelism.
  • Memory used in receive flow is now allocated with the same affinity of the handling processor for faster access.
  • Statistics parameters are now directly read from hardware instead of being calculated by software.
  • Added support for BlueFlame. BlueFlame is now the default working mode for all packets that have a descriptor which fits into a BF register (currently 256 bytes). Use "BlueFlame" registry key to enable\disable this feature.
  • Added support for RSS functionality on available processors numbers. Used to be restricted to start at the first processor.
  • Changed RSS registry defaults to give better out of the box performance.
  • Added a performance UI to tune performance under various scenarios.
  • Added a tool to tune performance under various scenarios.
Ethernet Features:
  • Added support for multiple TX rings.
  • Added an option to verify that the number of multicast groups used is no higher than the firmware limits.
  • Improved performance in virtualization when using VMQ.
IPoIB Features:
  • Fixed a bug that prevented IBAL applications from working on machines with 2 cards.
  • Fixed a bug that caused packet drop on remote node when the first sent packet is not an ARP or a multicast packet.
  • Added support for multiple TX rings. The new driver advertises its TSS capability (using multiple TX rings). This feature will not be used when communicating with older version drivers (such as the inbox driver). This way IPv4 communication in a mixed environment that includes the inbox driver should work. IPv6 communication may be problematic in such an environment.
  • Eliminated some race conditions in IPoIB mcast handling.
  • Added mcast addresses according to the Windows mcast table in addition to mcast addresses from igmp\mld queries, in order to connect to such mcasts that are not reported by the queries.
  • Removed redundant LID_CHANGE events. This fixes the redundant reconnection of all IPoIB mcasts.
  • Added support for VM migration. When a VM is migrated from one host to another it does not send a new ARP to hosts it already knew when it was sitting on the first host. In order to prevent communication interruption to such hosts, the driver will initiate an ARP to learn them again.
  • Fixed IPoIB VMQ affinity update bugs.
  • Fixed IPoIB VMQ parent queue management race during reset.
  • Fixed a bug in passing DHCP packets from a Linux VM.
  • Fixed bug in RDMA statistics for NDK.
  • Removed affinity restriction to group 0 for NDK.
  • Added support for the part_man tool. It can create only one additional IPoIB interface per port GUID. This feature can be utilized to use different IPoIB interfaces for SMB and Hyper-V. The virtual ports configuration is removed during uninstallation.
  • The following tools were added to the setup package:
    • ibv_asyncwatch.exe
    • ibv_atomic_bw.exe
    • ibv_atomic_lat.exe
    • ibv_devinfo.exe
    • ibv_rc_pingpong.exe
    • ibv_rdma_bw.exe
    • ibv_rdma_lat.exe
    • ibaddr.exe
    • ibcacheedit.exe
    • iblinkinfo.exe
    • ibqueryerrors.exe
    • ibsysstat.exe
    • saquery.exe
    • smpdump.exe

Type: Driver - Network
Version: 4.2(6 Nov 2012)
Operating System(s):
Microsoft Windows Server 2012

Description

InfiniBand and Ethernet driver for use with Microsoft Windows Server 2012

Enhancements

Upgrade Requirement:
Recommended - HP recommends users update to this version at their earliest convenience.

It is recommended to make sure that the inbox Mellanox driver is not in use, prior to installing WinOF v4.2 on a Windows 2012 machine. This is done by removing any Mellanox adapters from "Device Manager". Please refer "installation notes" for details.


General Features:

  • Modified RSS cores and changed VMQ affinity on the fly.
  • Fixed restart issue when there are not enough MSI-X vectors for each machine core.
  • Added support for K-GROUPS processors (more than 64 processors support) to allow assignment of MSI-X affinity for multiple processor groups.
  • Set an adequate number of MTTs to map all physical memory.
  • Allocated firmware and ICM memory in chunks of non-paged memory instead of using contiguous physical memory.
  • Fixed RSS indirection table mapping building when there are less RX rings than RSS cores.
  • Fixed a bug, preventing standard work with BAR value more than 4GB.
  • Fixed memory leaks.
  • Fixed error flows causing a Bluescreen in driver startup\unload.
  • Fixed a Bluescreen occurrence upon shutdown due to leak in active resources.
  • Changed device names in device manager and their hardware IDs. The changes were made to distinguish between ConnectX-2 and ConnectX-3:
    • for ConnectX-2: MLX4\ConnectX-2_Eth and IBA\ConnectX-2_IPoIB
    • for ConnectX-3: MLX4\ConnectX-3_Eth and IBA\ConnectX-3_IPoIB
    • Set QoS settings only for ConnectX-3. Changing the hardware ID, forces the OS to install new device and re-build the registry keys.
  • Added an event log to indicate driver failure upon start if there are two HCA burned with the same GUID.
  • Added firmware upgrade support as part of the setup process. The setup burns the new firmware only on Mellanox cards. Firmware burning failure does not prevent the driver’s installation, therefore, it will show a warning. In this case, it is recommended to update the firmware manually.
  • Enabled configuration of TxRingNum registry key from the UI.
  • Improved the "Port Protocol" dialog.
  • Added Registry key documentation to the setup package.
Performance Enhancements:
  • Optimized code performance.
  • Increased send parallelism.
  • Memory used in receive flow is now allocated with the same affinity of the handling processor for faster access.
  • Statistics parameters are now directly read from hardware instead of being calculated by software.
  • Added support for BlueFlame. BlueFlame is now the default working mode for all packets that have a descriptor which fits into a BF register (currently 256 bytes). Use "BlueFlame" registry key to enable\disable this feature.
  • Added support for RSS functionality on available processors numbers. Used to be restricted to start at the first processor.
  • Changed RSS registry defaults to give better out of the box performance.
  • Added a performance UI to tune performance under various scenarios.
  • Added a tool to tune performance under various scenarios.
Ethernet Features:
  • Added support for multiple TX rings.
  • Added an option to verify that the number of multicast groups used is no higher than the firmware limits.
  • Improved performance in virtualization when using VMQ.
IPoIB Features:
  • Fixed a bug that prevented IBAL applications from working on machines with 2 cards.
  • Fixed a bug that caused packet drop on remote node when the first sent packet is not an ARP or a multicast packet.
  • Added support for multiple TX rings. The new driver advertises its TSS capability (using multiple TX rings). This feature will not be used when communicating with older version drivers (such as the inbox driver). This way IPv4 communication in a mixed environment that includes the inbox driver should work. IPv6 communication may be problematic in such an environment.
  • Eliminated some race conditions in IPoIB mcast handling.
  • Added mcast addresses according to the Windows mcast table in addition to mcast addresses from igmp\mld queries, in order to connect to such mcasts that are not reported by the queries.
  • Removed redundant LID_CHANGE events. This fixes the redundant reconnection of all IPoIB mcasts.
  • Added support for VM migration. When a VM is migrated from one host to another it does not send a new ARP to hosts it already knew when it was sitting on the first host. In order to prevent communication interruption to such hosts, the driver will initiate an ARP to learn them again.
  • Fixed IPoIB VMQ affinity update bugs.
  • Fixed IPoIB VMQ parent queue management race during reset.
  • Fixed a bug in passing DHCP packets from a Linux VM.
  • Fixed bug in RDMA statistics for NDK.
  • Removed affinity restriction to group 0 for NDK.
  • Added support for the part_man tool. It can create only one additional IPoIB interface per port GUID. This feature can be utilized to use different IPoIB interfaces for SMB and Hyper-V. The virtual ports configuration is removed during uninstallation.
  • The following tools were added to the setup package:
    • ibv_asyncwatch.exe
    • ibv_atomic_bw.exe
    • ibv_atomic_lat.exe
    • ibv_devinfo.exe
    • ibv_rc_pingpong.exe
    • ibv_rdma_bw.exe
    • ibv_rdma_lat.exe
    • ibaddr.exe
    • ibcacheedit.exe
    • iblinkinfo.exe
    • ibqueryerrors.exe
    • ibsysstat.exe
    • saquery.exe
    • smpdump.exe

Installation Instructions

Prerequisites:

  • Mellanox CX2 device running Firmware version 2.10.0720 or newer.
  • Mellanox CX3 device running Firmware version 2.11.0500 or newer.

To ensure the integrity of your download, HP recommends verifying your results with this MD5 Checksum value:

MLNX_VPI_win8_x64_4_2.zip 06d6132b83a7729527b11f4cfe0c5f5d

Reboot Requirement:
Reboot is required after installation for updates to take effect and hardware stability to be maintained.


Installation:

It is recommended to make sure that the inbox Mellanox driver is not in use, prior to installing WinOF v4.2 on a Windows 2012 machine. This is done by removing any Mellanox adapters from "Device Manager". Detailed steps are mentioned below:

  1. Open "Control Panel -> Hardware -> Device Manager".
  2. Under "Network Adapters", right click "Mellanox IPoIB adapter" and select "Uninstall".
  3. A dialog box opens with a warning "You are about to uninstall the device from your system". Confirm by clicking "OK".
  4. Repeat steps 2 and 3 for "Mellanox IPoIB adapter #2", in case it exists.

Note: Ensure "Scan for hardware changes" or reboot is not done at this point.

Steps for Installing Mellanox VPI driver version 4.2:

  1. Download "MLNX_VPI_win8_x64_4_2.zip" on to the node.
  2. Extract contents of the zip file.
  3. Double click "MLNX_VPI_win8_x64_4_2.exe" and follow the instructions for installation as explained below:
  • Click “NEXT” on the Welcome screen.
  • Accept license agreement and click “NEXT”.
  • Accept default location “C:\Program Files\Mellanox\MLNX_VPI\” and click “NEXT”.
  • For HP supported Mellanox adapters, a message "An old firmware version was detected. Please contact your OEM to upgrade to a newer version" is displayed in case the firmware version is outdated. Click "Next".
  • Check the box "Configure your system for maximum 10GigE performance" and click "NEXT".
  • Select setup type "Complete" and click "Next".
  • Click "Install".
  • Once complete, click “Finish”.
  • Restart the node when prompted.
  1. It is highly recommended to follow instructions from "Performance_Tuning_Guide_for_Mellanox_Network_Adapters_v1.6.pdf" (also included in the zip file) for optimal performance of Mellanox network adapters.

Release Notes

End User License Agreements:
Hewlett-Packard End User License Agreement


Upgrade Requirement:
Recommended - HP recommends users update to this version at their earliest convenience.

It is recommended to make sure that the inbox Mellanox driver is not in use, prior to installing WinOF v4.2 on a Windows 2012 machine. This is done by removing any Mellanox adapters from "Device Manager". Please refer "installation notes" for details.


Important:
Beta Features:

  • OpenSM is currently at beta level. We do not recommend using it in deployment setups. If Subnet Manager is required in your setup, please use Mellanox Managed switch or download the OpenSM from http://openfabrics.org
  • WinVerbs is currently at beta level. We recommend using ND over IBAL
Known Issues:
  • General Known Issues
  • On rare occasions, as a result of port configuration change (IB/ETH and enabling or disabling RoCE) the UI may get stuck for up to a few minutes. This effect does not require any user action. The UI returns to its proper functionality after a few minutes.
  • WinOF inbox driver does not support upgrade. It is recommended to uninstall the inbox driver pior to installing WinOF v4.2 on a Windows 2012 machine
  • In order to get higher performance when using multicast packets, the user should use different UDP ports. Without separate ports for each stream, WinSock multiplexes every packet to every subscriber socket and then filters it out. This is different to Linux which performs no additional filtering, and each socket will see all the packets.
  • The "Packets Received Discarded" and "Packets Received Errors" counter may display wrong results.
  • Firmware upgrade may fail during installation if there was a prior firmware upgrade on the machine without a reboot after it. A firmware upgrade failure does not fail the whole installation.
  • The drivers’ functionality is limited up to 1TB of memory and up to 128 cores.
  • Applications compiled with the SDK of previous WinOF versions should be recompiled with the latest SDK. 
  • InfiniBand Drivers Known Issues
    • IPoIB does not support:
      • MAC address change
      • QoS (packet priority)
      • Load balancing and fail-over (LBFO)
      • Connected Mode
      • Partitions
    • In an interoperability environment that has both Linux and Windows OSs, the MTU value must be the same, otherwise packets larger than the minimum will not go through. The default MTU for Linux is 2K and for Windows it's 4K.
    • Old InfiniBand application must be recompiled with latest SDK.
    • iSCSI boot over IPoIB is currently not functional.
    • OpenSM is not run as a service during installation. The reason is that since the SM should get the GUID parameter to decide which port it works on, setting it in setup will lead it to work only for first port and not for others.
      • To run OpenSM as a service, assuming the package was installed in default path, use:
        sc create opensm binPath= "c:\Program Files\Mellanox\MLNX_VPI\IB\Tools\opensm.exe"
      • To start the service run:
        sc start opensm
    • Tools issues:
      • ibportstate doesn't work on RoCE ports
      • The user can run both IBAL and winverbs ND providers at same time
      • MpiTest may get stuck on winverbs. WinVerbs is currently at beta level. We recommend using ND over IBAL
      • ibdiagpath may crash on Hyper-V machines
    • If an application which uses InfiniBand runs while the driver is being restarted, a bluescreen or an NMI may occur.
    • If OpenSM is up during driver restart on the same machine, it might stop working when the driver is back up. To resume operation, stop the OpenSM and restart the driver again while OpenSM is down.
    • Virtual IPoIB interface, created by part_man, reports Active state when the physical link is in Initializing state and OpenSM is not running in the subnet. 
  • Ethernet Drivers Known Issues
    • High multicast drop rate on multicast storming. 
  • RDMA over Converged Ethernet (RoCE) Known Issues
    • RoCE does not support:
      • Traffic cannot go through the router. It works in the same subnet only
      • Multicast traffic
      • VLAN
      • Layer-3 features
    • RoCE dynamic priority change is not supported in firmware version 2.11.500. It will be supported in firmware version 2.11.1000 
  • Hyper-V Known Issues:
    • When the vSwitch is detached from the ETH\IPoIB device while the driver is disabled, the device does not reacquire the static IP it had before the attachment of the vSwitch. When the vSwitch is attached to the ETH\IPoIB device while there is no link, it will not receive the device IP when the link is back up.
    • After attaching the vSwitch to the ETH\IPoIB device, changing the “Jumbo Packet” registry key on the ETH\IPoIB device does not affect the vSwitch configuration.
      • Workaround: Reattach the vSwitch to sync with the value set in the ETH\IPoIB device.
    • When VMQ is enabled after reset, the driver loads all the VMQs that existed before the reset. It is not guaranteed that each VMQ will receive the same QP number it had before the reset. This can cause some delay as a result of resetting before connectivity is reestablished. The delay is caused by the time it takes for the ARP table to update after initiating the Gratuitous ARP.
    • When the vSwitch is detached from the ETH\IPoIB device while the driver is disabled, the device does not reacquire the static IP it had before the attachment of the vSwitch. When the vSwitch is attached to the ETH\IPoIB device while there is no link, it will not receive the device IP when the link is back up.
    • After disabling and enabling a port on a guest, a ping to it may be renewed after one minute. The ARP requests sent by Windows are less frequent as the time passes. If the guest port was down for a while, it could take time until Windows decides to send another ARP request to it.
    • In IPoIB when using long Multicast traffic from a Virtual Machine (VM) to an external host there might be up to 0.5% loss in 5% bursts.
    • In Ethernet to achieve better iperf TCP performance between a Linux VM and a Windows VM on different hosts, when using MS MUX over the Ethernet driver, use the non VMQ mode for the VMs.
    • The IPoIB non-VMQ mode is supported only when the VMQ is enabled according to the registry values.
      • Workaround: To use the non-VMQ mode for a VM, change its settings as follows:
        • Select "Settings" on the VM
        • Go to Network Adapter -> Hardware Acceleration
        • Un-check the "Enable virtual machine queue"

Notes:

Certain software including drivers and documents may be available from Mellanox. If you select a URL that directs you to http://www.mellanox.com/, you are then leaving HP.com. Please follow the instructions on http://www.mellanox.com/ to download Mellanox software or documentation. When downloading the Mellanox software or documentation, you may be subject to Mellanox terms and conditions, including licensing terms, if any, provided on its website or otherwise. HP is not responsible for your use of any software or documents that you download from http://www.mellanox.com/, except that HP may provide a limited warranty for Mellanox software in accordance with the terms and conditions of your purchase of the HP product or solution.

Driver installation guide, Release notes and User manual are available from Mellanox website at the below link:
http://www.mellanox.com/content/pages.php?pg=products_dyn&product_family=32&menu_section=34#tab-two


Important

Beta Features:
  • OpenSM is currently at beta level. We do not recommend using it in deployment setups. If Subnet Manager is required in your setup, please use Mellanox Managed switch or download the OpenSM from http://openfabrics.org
  • WinVerbs is currently at beta level. We recommend using ND over IBAL
Known Issues:
  • General Known Issues
  • On rare occasions, as a result of port configuration change (IB/ETH and enabling or disabling RoCE) the UI may get stuck for up to a few minutes. This effect does not require any user action. The UI returns to its proper functionality after a few minutes.
  • WinOF inbox driver does not support upgrade. It is recommended to uninstall the inbox driver pior to installing WinOF v4.2 on a Windows 2012 machine
  • In order to get higher performance when using multicast packets, the user should use different UDP ports. Without separate ports for each stream, WinSock multiplexes every packet to every subscriber socket and then filters it out. This is different to Linux which performs no additional filtering, and each socket will see all the packets.
  • The "Packets Received Discarded" and "Packets Received Errors" counter may display wrong results.
  • Firmware upgrade may fail during installation if there was a prior firmware upgrade on the machine without a reboot after it. A firmware upgrade failure does not fail the whole installation.
  • The drivers’ functionality is limited up to 1TB of memory and up to 128 cores.
  • Applications compiled with the SDK of previous WinOF versions should be recompiled with the latest SDK. 
  • InfiniBand Drivers Known Issues
    • IPoIB does not support:
      • MAC address change
      • QoS (packet priority)
      • Load balancing and fail-over (LBFO)
      • Connected Mode
      • Partitions
    • In an interoperability environment that has both Linux and Windows OSs, the MTU value must be the same, otherwise packets larger than the minimum will not go through. The default MTU for Linux is 2K and for Windows it's 4K.
    • Old InfiniBand application must be recompiled with latest SDK.
    • iSCSI boot over IPoIB is currently not functional.
    • OpenSM is not run as a service during installation. The reason is that since the SM should get the GUID parameter to decide which port it works on, setting it in setup will lead it to work only for first port and not for others.
      • To run OpenSM as a service, assuming the package was installed in default path, use:
        sc create opensm binPath= "c:\Program Files\Mellanox\MLNX_VPI\IB\Tools\opensm.exe"
      • To start the service run:
        sc start opensm
    • Tools issues:
      • ibportstate doesn't work on RoCE ports
      • The user can run both IBAL and winverbs ND providers at same time
      • MpiTest may get stuck on winverbs. WinVerbs is currently at beta level. We recommend using ND over IBAL
      • ibdiagpath may crash on Hyper-V machines
    • If an application which uses InfiniBand runs while the driver is being restarted, a bluescreen or an NMI may occur.
    • If OpenSM is up during driver restart on the same machine, it might stop working when the driver is back up. To resume operation, stop the OpenSM and restart the driver again while OpenSM is down.
    • Virtual IPoIB interface, created by part_man, reports Active state when the physical link is in Initializing state and OpenSM is not running in the subnet. 
  • Ethernet Drivers Known Issues
    • High multicast drop rate on multicast storming. 
  • RDMA over Converged Ethernet (RoCE) Known Issues
    • RoCE does not support:
      • Traffic cannot go through the router. It works in the same subnet only
      • Multicast traffic
      • VLAN
      • Layer-3 features
    • RoCE dynamic priority change is not supported in firmware version 2.11.500. It will be supported in firmware version 2.11.1000 
  • Hyper-V Known Issues:
    • When the vSwitch is detached from the ETH\IPoIB device while the driver is disabled, the device does not reacquire the static IP it had before the attachment of the vSwitch. When the vSwitch is attached to the ETH\IPoIB device while there is no link, it will not receive the device IP when the link is back up.
    • After attaching the vSwitch to the ETH\IPoIB device, changing the “Jumbo Packet” registry key on the ETH\IPoIB device does not affect the vSwitch configuration.
      • Workaround: Reattach the vSwitch to sync with the value set in the ETH\IPoIB device.
    • When VMQ is enabled after reset, the driver loads all the VMQs that existed before the reset. It is not guaranteed that each VMQ will receive the same QP number it had before the reset. This can cause some delay as a result of resetting before connectivity is reestablished. The delay is caused by the time it takes for the ARP table to update after initiating the Gratuitous ARP.
    • When the vSwitch is detached from the ETH\IPoIB device while the driver is disabled, the device does not reacquire the static IP it had before the attachment of the vSwitch. When the vSwitch is attached to the ETH\IPoIB device while there is no link, it will not receive the device IP when the link is back up.
    • After disabling and enabling a port on a guest, a ping to it may be renewed after one minute. The ARP requests sent by Windows are less frequent as the time passes. If the guest port was down for a while, it could take time until Windows decides to send another ARP request to it.
    • In IPoIB when using long Multicast traffic from a Virtual Machine (VM) to an external host there might be up to 0.5% loss in 5% bursts.
    • In Ethernet to achieve better iperf TCP performance between a Linux VM and a Windows VM on different hosts, when using MS MUX over the Ethernet driver, use the non VMQ mode for the VMs.
    • The IPoIB non-VMQ mode is supported only when the VMQ is enabled according to the registry values.
      • Workaround: To use the non-VMQ mode for a VM, change its settings as follows:
        • Select "Settings" on the VM
        • Go to Network Adapter -> Hardware Acceleration
        • Un-check the "Enable virtual machine queue"

Revision History

Version:5.50.50000 (13 Aug 2018)
Fixes

Upgrade Requirement:
Recommended - HPE recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 5.50.50000:

  • System would cease functioning when the vNic was detached from the VM during heavy traffic when in VMQ\VMMQ mode.
  • RoCE connection failed occasionally when the Universal/Local (U/L) bit in the MAC was set to 1.
  • Disabled the option to stop the uninstall process once the driver uninstallation process started.
  • Networks with new Subnet Managers (OpenSM 4.7.0 and up) would drop malformed multicast-join packets issued by the driver. The driver now constructs the multicast join request correctly.
  • Driver would not load due to a race condition that existed between the resiliency flow and the FLR request when issuing an OID_SRIOV_RESET_VF request to reset a specified PCI Express (PCIe) Virtual Function (VF).
  • The driver would reset the adapter as a result of a false alarm indicating that a receive queue was not processing.
  • The Memory Region (MR) was displayed as registered when it was not, thus prevented the user from accessing it. This incorrect status display of MR was a result of the ND function “INDEndpoint” reporting error status when it returned from the underlying functions. This fix verifies that the user will receive the correct error status upon such scenario.
  • MSI-X cores in Virtual Function was limited 8. This limit has been expanded to 128.
  • BSOD occurred on servers with more than 64 cores because the Tx traffic did not honor the Tx affinity implied by the TSS, when the number of potential RSS CPUs was greater than 64.
  • When the mlxtool dbg resources command executed, the FS_RULE quota number displayed instead of the "Managed by PF" message.
  • When setting the LogNumQp and LogNumRdmaRc registry settings to their maximum value, the WinOF bus driver failed to load.
  • The "TX Ring Is Full Packets" perfmon counter did not function properly on IPoIB.
  • When installing the driver over Microsoft Windows Server 2012 R2 inbox driver, the LogNumQP parameter remained in the registry. Thus, a number of QPs were limited to 64K instead of 512K (the driver’s default).
  • Communication Manager would stop functioning while attempting to obtain ND/NDK connection.
  • Command failure and protection domain violation occurred when running the ND application.
  • Mlxtool command, “mlxtool dbg ipoib-ep []”, reported partial results of the EndPoint list when there was a large number of endpoints.
  • VM would stop functioning when restarting the PF drivers and their peers in the target machine. The VM had to be force-restarted to restore the functionality.
  • Set a wrong value to the *ReceiveBuffers key when it was restored to default.
  • System would stop functioning and had to be force-restarted when any one or more of the following conditions occurred:
    • When changing the Ethernet IP address while RDMA traffic was running.
    • During driver startup when working in RSS mode
    • When the interface connected to vSwitch was disabled and the operating system did not clean all VMQs.
    • Upon ND connection establishment.
    • Occasionally, on driver load, when the driver was waiting for firmware boot to be completed before accessing the firmware.
  • A BSOD that occurred when a memory allocation failed upon driver startup.
  • The connection port numbers did not increase sequentially when running nd_*_bw application with multiple QPs.
  • Tx traffic did not honor the Tx affinity implied by the TSS when the number of potential RSS CPUs was greater than 64.
  • When the driver was installed over Microsoft Windows Server 2012 R2 inbox driver, the number of QPs was limited to 64K instead of 512K (the driver’s default) because the LogNumQP parameter remained in the registry/.
  • Removing a PKey that was a part of an IPoIB team interface disabled the team and the option to delete it.
  • An incorrect number of HCAs was returned from executing the Get-MlnxPCIDeviceSriovSetting command.
  • The mlxtool dbg resources command failed to pull information about the last VF, and showed the PF as VF0.
  • Using invalid parameters in mlxtool perfstat command resulted in infinite waiting time and results were not returned.
  • The Get-MlnxPCIDeviceSriovSetting command failed on a server with more than one device, when one of the devices was disabled. Following the fix, the command returned results only for the devices that were enabled.
  • When installing the driver on Microsoft Windows Server 2012 virtual machine in SR-IOV mode with more than 2 VFs, the installation time was excessively long.
  • A wrong link state was reported by “ibstat” command when the PF physical port was 2.
  • When running mlxtool, show perfstats, incorrect Rx counters were returned when working in polling mode.
  • When a bus driver restart was followed by a miniport driver restart, the vSwitch port setting changed to internal.
  • Black screen occurred on driver startup in a VM with two VFs or more.
  • BSOD occurred while installing WinOF v5.35 due to stack usage overrun.
  • RoCE fallback mode did not work when SR-IOV was enabled.
  • When running the ND application, a command failure and protection domain violation occurred.
  • On hypervisor, when one Ethernet port was binded to vmswitch in which SR-IOV was enabled, Network Direct applications did not work on the second port.
  • QP state change command was allowed to execute when the QP was not in a valid state. This caused event viewer flooding.
Enhancements

New Features in Version 5.50.50000:

  • Dump Me Now (DMN), a bus driver (mlx4_bus.sys) feature that generates dumps and traces from various components, including hardware, firmware and software, upon internally detected issues (by the resiliency sensors), user requests (mlxtool) or ND application requests via the extended Mellanox ND API. DMN is unsupported on VFs
  • Support for systems with up to 252 logical processors when Hyperthreading is enabled and up to 126 logical processors when Hyperthreading is disabled
  • RSC solution in TCP/IP traffic to reduce CPU overhead
  • NDSPI to control CQ moderation
  • A new counter for packets with no destination resource
  • A new registry key that allows users to configure the E2E Congestion Control feature
  • Ability to collect firmware MST dumps in cases of system bug check
  • A counter for the number of packets discarded due to an invalid QP number.
  • DSCP based counters to support traffic where no VLAN/priority is present.
  • Added support for servers with more than 64 cores.

Improvements to existing functionality in version 5.50.50000:

  • Vlan_config tool now includes the ability to create VLANs for the Physical Function (PF) in addition to the Virtual Function (VF).
  • VMQ over IPoIB is now supported with Microsoft Windows Server 2016.
  • An event log message (ID 273) is printed when the number of resources to load the VF is insufficient.
  • RoCE TTL default value has been changed from 128 to 16 which improves the overall packet routing efficiency.

Version:5.35.FUR (6 Aug 2017)
Fixes

Upgrade Requirement:
Recommended - HPE recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 5.35 Fast Update Release (FUR):

  • A fragmented packet (with more than 41 fragments) could lead to duplicated headers when working with LSO (Large Send offload).
  • Low bandwidth issue when using Software vRSS (Virtual Receive Side Scaling).

The following issues have been resolved in version 5.35:

  • Non-optimal out of box performance occured for virtual function.
  • Firmware upgrade failure (error code 9) occured during installation, when RoCE was disabled.
  • Miniport reset led to a driver hang when occurred during driver disabling, or to a system crash when occurred during driver shutdown.

The following issues have been resolved in version 5.22:

  • Fixed an issue that caused the perf_tuning.exe tool cease to function in case of Microsoft Windows 10 operating system, when running a dual-port configuration. 
  • Old SriovEnable registry key is now obsolete. SR-IOV is now enabled by default.
  • The system would unexpectedly cease to function due to a wrong detection of the Forwarding scenario. 
  • Improved the notification about the port type settings events in the Windows systrem event Logs.
  • Fixed an issue where the RDSH service had to be disabled even if the CIM provider was not selected as part of the installation.
  • Fixed an issue which resulted in BSOD 0x1E (KMODE_EXCEPTION_NOT_HANDLED) when the machine had multiple network port (whether a single physical card with multiple network ports or multiple single-port cards) with some ports configured with SR-IOV enabled, and some with SR-IOV disabled.
  • Fixed a wrong multicast attach flow in IPoIB which caused both ports to receive multicast messages sent for one of them. Those packets were dropped later on and had no effect on the receiving traffic in the wrong destination, but it did increment the "Packets Received Error" counter.
  • Fixed the NetworkDirect API INDAdapter::Listen() return status when the requested port was already in use. Changed the status from the non-compliant ND_INVALID_PARAMETER to the specification-compliant ND_ADDRESS_ALREADY_EXISTS.
  • Added a mechanism to ensure that listeners will not receive the same ephemeral port. The driver uses the default range of ephemeral ports 49152 to 65535.
  • Fixed an ND applications return status when a Send request failed with RNR. Changed the status from the non-compliant STATUS_DATA_NOT_ACCEPTED to the specification-compliant STATUS_IO_TIMEOUT.
  • Fixed a race in IPoIB multicast management which caused an interface not to re-register on a multicast group after an SM restart. Such behavior resulted in traffic loss.
  • Fixed an issue which prevented the 'ibdiagnet --get_cable_info' command from showing information on the cables in remote nodes.
  • Fixed an issue which disabled VXLAN offload when received OID_TCP_OFFLOAD_PARAMETERS with EncapsulationPacketTaskOffload Enabled and the VxlanUDPPortNumber set to 0.
  • Fixed wrong counting of MTT-pages shown under "Mellanox WinOF Bus Counters".
  • Fixed an issue which caused the CIM provider installation to fail when another provider which uses the same classes was installed.
  • When the cleanup operation started before an IPoIB initialization was completed, an IPoIB initialization error flow cleanup would cause the timer execution process to cease unexpectedly.
  • Fixed an issue which resulted in BSOD when the NIC received illegal OID_RECEIVE_FILTER_QUEUE_PARAMETERS value with QueueID higher than reported.
  • Fixed an issue which prevented the TEAM interface and the VLAN interface to send and receive traffic at the same time. Now both the TEAM and the VLAN interfaces work at the same time where the TEAM interface handles all untagged frames and the VLAN interface handles the tagged frames.
  • Fixed an issue causing BSOD upon driver restart in VM.
  • Added to VSTAT the ability to show the ports’ state in all port configurations (e.g. Ethernet, RoCE) and for several cards.
  • Fixed an issue that caused the system to hang when the driver was installed and RDMA applications were opened.
  • Disabled encapsulation offload capabilities for VFs regardless of the device capability to support it.
  • Added event-viewer message to identify "PortType" registry in case the port is configured for a unsupported type. For example if the device supports only Ethernet and the port is configured for IB the event-viewer message will be displayed.
  • Fixed a bluescreen issue caused by calling NDK_FN_DISCONNECT on a not connected NDK_CONNECTOR.
  • Fixed an issue causing the IP fragmentation not to function properly, consequently discarding large packets, when SR-IOV was turned ON and the "Jumbo Packet" field on the "Advanced" tab of the Ethernet driver's properties (in device manager) was set to 9602 or more.
  • Modified the event viewer-log message displayed when the PCI virtualization does not support SR-IOV. The new message is: "SR-IOV cannot be enabled due to an error in the PCI_VIRTUALIZATION_INTERFACE. Possible reason, the machine does not support SR-IOV."
  • Fixed an issue causing the system to crash when creating a team from the GUI.
  • Fixed an issue where the TTL setting for the RDMA traffic could not be changed. The current solution is now defined for these three cases, first when the driver will look for private parameter in ibbus\parameters\DefaultTTL, Second If it does not exist, it will take it from TCP/IP configuration (tcpip\parameters\DefaultTTL) and third, if not found, it will use TCP/IP default of 128.
  • Fixed an issue which resulted in interface disabling failure, and system crash when disabling the system, when multi-streams of sent fragmented/small packets could not be sent/returned to the OS. 
  • Fixed an issue causing a Black Screen in Windows guest OS running over non-Windows SR-IOV Hypervisor with two IPoIB adapters when the OpenSM was not running.
  • Fixed wrong packets handling when the number of fragments equals the maximum allowed which resulted in a crash when the fragments array was higher then the allowed value.
  • Fixed an OpenSM issue which caused the driver to crash.
  • Fixed an issue which caused the drivers to not work properly or crash as a result of setting values lower than the their default value.
  • Fixed an issue causing memory leakage when uninstalling the PF driver when vSwitch is connected to the device.
  • Fixed a performance tuning issue when using the "Performance" tab in the Advanced property page. Performance tuning did not work as expected on certain systems that have processor groups enabled. Users saw unexpected RSS CPU's assigned. Now the following event log can be seen in logs: “Detected issues with Processor groups on the system that may cause performance degradation. Disable processor groups for best results."
  • Fixed an issue where NDv2 adapter query reported MaxInlineDataSize as zero regardless of the device’s capability.
  • Fixed synchronization issue between NDK OIDs and driver's halt command. The driver started unloading before all the NDK OIDs were completed causing unexpected behavior in the system.
  • Fixed an issue that caused the system to hang when the driver failed to allocate contiguous memory on driver load.
  • Fixed wrong MAC creation from GUIDs that start with E4 D1 D2. In addition to applying the GUIDMask, the bug used to alternate the first byte of the created MAC. This alternation may have caused problems in communication with DHCP for IP address acquiring.
  • Fixed an issue where the ND applications provided with the driver package would fail to run when running on a server with WinOF-2 driver package installed.
  • Fixed a rare issue where system would crash when miniport driver is reset.
  • Fixed the issue where in case of multi streams of fragmented/small packets, one or more of the Tx rings might become non-operational, and the packets might not be returned to the OS. This used to result in a failure in disabling the network interface, and caused a system crash during restart/shutdown.
  • Fixed an issue where driver could falsely indicate that the device is stuck in extreme CPU load conditions.
  • Fixed the issue of VF miniport reset that used to be caused by OID-timeout of OID_GEN_CURRENT_PACKET_FILTER.
  • Fixed RSS functionality in VM guests with SR-IOV enabled and VMs running in VMQ mode with SR-IOV enabled on host. This used to result in poor performance.
  • Fixed the issue where encapsulation settings (NVGRE+VLXAN) were not restored after reset.
  • Fixed possible system crash when upgrading from v5.00 to a newer version.
  • Fixed a race between VMQ and pkey table initialization. This issue may have occurred on a setup on which a V-Switch is defined on a virtual interface (created via the part_man tool) with a non default pkey.
  • Fixed the issue where it was possible to install the Microsoft Azure 2012R2 package on older Operating Systems.
  • Fixed a mismatch in the way the performance tuning and IPoIB create a MAC from a device GUID. This mismatch may have caused the performance tuning to fail finding the correct MAC for GUIDs that do not start with 0002c9, which used to result in a failure to choose the best NUMA for them.
  • Fixed an error which could cause a freeze of the drivers in the startup in a VM with several VFs.
  • Fixed the issue where deleting a team that has VLANs attached to it would fail on Windows 10 Operating System.

The following issues have been resolved in version 5.10.50000:

  • Device state dump used for debug could cause the device to get stuck, requiring driver restart or server reboot to recover.
  • A system with two or more adapters could crash when one of the adapters gets disabled.
  • During very high CPU load on the core that is in charge of transmit notification processing, driver may mistakenly decide the device is hung and initiate a reset to the interface.
  • When a driver fails to start (Mellanox device appears with Yellow bang in the device manager) and user stops the driver, this could cause the system to hang.
  • Synchronization issue between client and server side in nd_write_lat that could cause the test to hang on start.
  • when a user is trying to change the RoCE mode using the "Set-MlnxDriverCoreSetting" PowerShell command on a setup with two devices, the mode does not change until the next driver restart.
  • After OS initiated reset of the interface, default QoS policies were not properly restored.
  • When enabling VMQ after SRIOV has been disabled, VMQ would not work, and the VM would fall back to paravirtualization, impacting performance.
  • Fixed a race which caused some of the configurations to be badly reinitialized during VM or host transition to VMQ mode.
  • Adding VLANs would fail because the driver’s internal table was not cleaned up correctly upon VLAN removal.
  • Memory leak caused by a race between successful finish of a Management Datagram (MAD) and canceling it.
  • Adapter name in command vea_man to not be case sensitive.
  • When after removing the Virtual Ethernet Adapter, some registry keys would remain.
  • when Query Path Record (QPR) option is set, a race condition occurs. The race would be between the handling of received packets and the response to the path query to the new destination.
  • Fixed the Query Path Record list handling to prevent double entering of the same destination.
  • When BSOD may occur when running with two HCAs and using sminfo when no Subnet Manager is available.
  • When creating virtual IPoIB PKey interfaces with HP cards using part_man.exe utility was not possible.
  • A new VM creation or its migration in IPoIB could cause the system to crash.
  • In VMQ mode, not all receive buffers allocated for the VMQ are used, impacting performance.
Enhancements

New Features and Changes in Version 5.35 Fast Update (FUR) from version 5.35:

  • Fixes only.

New Features and Changes in Version 5.35 from version 5.22:

  • Updated driver settings for Virtual Function to receive optimal performance
  • Added RSS (Rx Steering Mode) monitoring counters support
  • Added counter for link up/down to count the number of times that the link operative state changes to down.
  • vstat tool -
    Added interface description for each port in the vstat tool.
  • Mlxtool -
    Added support in the following actions:
    •Driver restart
    •Pulling resource tracker information for VFs

New Features and Changes in Version 5.22 from version 5.10.50000:

  • Improved cache hit rate in RDMA by reducing the size of the Adapter's Memory Translation Table (MTT).
  • Changed the ND port allocation scheme from hashing to 64k bitmask.
  • Changed the default value of RoCE mode to RoCE v2.
  • Modified the Vsat tool to function also when RoCE is disabled.
  • Tools like nd_write_bw and nd_send_bw now support getting send completions using events instead of polling by using -e switch. Parameter only affects client side and only on “duration” mode (-D ).
  • Improved mlxtool error handling for the pkeys option. When a broken IPoIB interface registry entry exists (for example, an old virtual interface that was not fully removed), the tool would fail and exit. Now the tool skips such entries and prints the next ones.
  • Enabled dual-port card to work as a single-port card.
  • Improved Event Log Messages explaining behavior of the driver in case of illegal port configuration Port1: Ethernet w/o RoCE, Port2 IB.
  • Improved Event Log Messages issued on driver-generated dumps.
  • SR-IOV is disabled when the port is set as IB type.
  • Set the *PriorityVLANTag registry key of Virtual Function (VF) to not support neither priority nor VLAN, and removed VlanId registry key completely.
  • [Beta] Added support for SR-IOV Ethernet Windows over KVM.
  • Removed the co-installer that installs performance counters. The counters is installed during the setup.
  • Added support for tagged and untagged traffic over Team driver.
  • Enabled teaming configuration via the Command Line Interface.
  • Release Notes and User Manual documents were removed from the package. A new README file which includes basic installation instructions, summary of main features and requirements has replaced them.

New Features and Changes in Version 5.10.50000 from version 4.95.50000:

  • ATTO devices will be shown in the device manager with customized ATTO device names and model numbers.
  • Enabled the driver to use a minimal number of memory registration resources when physical memory contiguity allows it.
  • Implemented a resource pool to save physically contiguous memory in the driver, which was used by RDMA applications. This way the re-use of this memory will be allowed.
  • Improved ND connection establishment time when using firmware v2.34.5000.
  • Changed NDK and its clients (like SMBDirect) to be disabled by default when PFC is not enabled.
  • Added an RDMA test to the package to demonstrate Linux interoperability.
  • Enlarged private data limit in ND and NDK.
  • Changed default RoCEv2 UDP destination port to match IANA standard.
  • Improved isolation of SRIOV host from VM driver issues.
  • Added support in mlxtool to allow the query of PKeys configured in SR-IOV VMs.
  • Enabled mlxtool to allow a manual generation of register dumps.
  • For performance tuning purposes, debug counters were added to indicate once the driver transmit queue got full.
  • Added a discard counter for performance analysis.
  • Added discard counters per Transport Class.
  • Enabled a device watchdog mechanism that prevents the device from sending excessive pauses to the network for any reason.
  • Added support for Windows 2008R2/Windows 7 teaming driver to allow selecting the MAC address of the primary interface.
  • Added support for installing counters with co-installer.

Version:5.35 (22 Mar 2017)
Fixes

Upgrade Requirement:
Recommended - HPE recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 5.35:

  • Non-optimal out of box performance occured for virtual function.
  • Firmware upgrade failure (error code 9) occured during installation, when RoCE was disabled.
  • Miniport reset led to a driver hang when occurred during driver disabling, or to a system crash when occurred during driver shutdown.

The following issues have been resolved in version 5.22:

  • Fixed an issue that caused the perf_tuning.exe tool cease to function in case of Microsoft Windows 10 operating system, when running a dual-port configuration. 
  • Old SriovEnable registry key is now obsolete. SR-IOV is now enabled by default.
  • The system would unexpectedly cease to function due to a wrong detection of the Forwarding scenario. 
  • Improved the notification about the port type settings events in the Windows systrem event Logs.
  • Fixed an issue where the RDSH service had to be disabled even if the CIM provider was not selected as part of the installation.
  • Fixed an issue which resulted in BSOD 0x1E (KMODE_EXCEPTION_NOT_HANDLED) when the machine had multiple network port (whether a single physical card with multiple network ports or multiple single-port cards) with some ports configured with SR-IOV enabled, and some with SR-IOV disabled.
  • Fixed a wrong multicast attach flow in IPoIB which caused both ports to receive multicast messages sent for one of them. Those packets were dropped later on and had no effect on the receiving traffic in the wrong destination, but it did increment the "Packets Received Error" counter.
  • Fixed the NetworkDirect API INDAdapter::Listen() return status when the requested port was already in use. Changed the status from the non-compliant ND_INVALID_PARAMETER to the specification-compliant ND_ADDRESS_ALREADY_EXISTS.
  • Added a mechanism to ensure that listeners will not receive the same ephemeral port. The driver uses the default range of ephemeral ports 49152 to 65535.
  • Fixed an ND applications return status when a Send request failed with RNR. Changed the status from the non-compliant STATUS_DATA_NOT_ACCEPTED to the specification-compliant STATUS_IO_TIMEOUT.
  • Fixed a race in IPoIB multicast management which caused an interface not to re-register on a multicast group after an SM restart. Such behavior resulted in traffic loss.
  • Fixed an issue which prevented the 'ibdiagnet --get_cable_info' command from showing information on the cables in remote nodes.
  • Fixed an issue which disabled VXLAN offload when received OID_TCP_OFFLOAD_PARAMETERS with EncapsulationPacketTaskOffload Enabled and the VxlanUDPPortNumber set to 0.
  • Fixed wrong counting of MTT-pages shown under "Mellanox WinOF Bus Counters".
  • Fixed an issue which caused the CIM provider installation to fail when another provider which uses the same classes was installed.
  • When the cleanup operation started before an IPoIB initialization was completed, an IPoIB initialization error flow cleanup would cause the timer execution process to cease unexpectedly.
  • Fixed an issue which resulted in BSOD when the NIC received illegal OID_RECEIVE_FILTER_QUEUE_PARAMETERS value with QueueID higher than reported.
  • Fixed an issue which prevented the TEAM interface and the VLAN interface to send and receive traffic at the same time. Now both the TEAM and the VLAN interfaces work at the same time where the TEAM interface handles all untagged frames and the VLAN interface handles the tagged frames.
  • Fixed an issue causing BSOD upon driver restart in VM.
  • Added to VSTAT the ability to show the ports’ state in all port configurations (e.g. Ethernet, RoCE) and for several cards.
  • Fixed an issue that caused the system to hang when the driver was installed and RDMA applications were opened.
  • Disabled encapsulation offload capabilities for VFs regardless of the device capability to support it.
  • Added event-viewer message to identify "PortType" registry in case the port is configured for a unsupported type. For example if the device supports only Ethernet and the port is configured for IB the event-viewer message will be displayed.
  • Fixed a bluescreen issue caused by calling NDK_FN_DISCONNECT on a not connected NDK_CONNECTOR.
  • Fixed an issue causing the IP fragmentation not to function properly, consequently discarding large packets, when SR-IOV was turned ON and the "Jumbo Packet" field on the "Advanced" tab of the Ethernet driver's properties (in device manager) was set to 9602 or more.
  • Modified the event viewer-log message displayed when the PCI virtualization does not support SR-IOV. The new message is: "SR-IOV cannot be enabled due to an error in the PCI_VIRTUALIZATION_INTERFACE. Possible reason, the machine does not support SR-IOV."
  • Fixed an issue causing the system to crash when creating a team from the GUI.
  • Fixed an issue where the TTL setting for the RDMA traffic could not be changed. The current solution is now defined for these three cases, first when the driver will look for private parameter in ibbus\parameters\DefaultTTL, Second If it does not exist, it will take it from TCP/IP configuration (tcpip\parameters\DefaultTTL) and third, if not found, it will use TCP/IP default of 128.
  • Fixed an issue which resulted in interface disabling failure, and system crash when disabling the system, when multi-streams of sent fragmented/small packets could not be sent/returned to the OS. 
  • Fixed an issue causing a Black Screen in Windows guest OS running over non-Windows SR-IOV Hypervisor with two IPoIB adapters when the OpenSM was not running.
  • Fixed wrong packets handling when the number of fragments equals the maximum allowed which resulted in a crash when the fragments array was higher then the allowed value.
  • Fixed an OpenSM issue which caused the driver to crash.
  • Fixed an issue which caused the drivers to not work properly or crash as a result of setting values lower than the their default value.
  • Fixed an issue causing memory leakage when uninstalling the PF driver when vSwitch is connected to the device.
  • Fixed a performance tuning issue when using the "Performance" tab in the Advanced property page. Performance tuning did not work as expected on certain systems that have processor groups enabled. Users saw unexpected RSS CPU's assigned. Now the following event log can be seen in logs: “Detected issues with Processor groups on the system that may cause performance degradation. Disable processor groups for best results."
  • Fixed an issue where NDv2 adapter query reported MaxInlineDataSize as zero regardless of the device’s capability.
  • Fixed synchronization issue between NDK OIDs and driver's halt command. The driver started unloading before all the NDK OIDs were completed causing unexpected behavior in the system.
  • Fixed an issue that caused the system to hang when the driver failed to allocate contiguous memory on driver load.
  • Fixed wrong MAC creation from GUIDs that start with E4 D1 D2. In addition to applying the GUIDMask, the bug used to alternate the first byte of the created MAC. This alternation may have caused problems in communication with DHCP for IP address acquiring.
  • Fixed an issue where the ND applications provided with the driver package would fail to run when running on a server with WinOF-2 driver package installed.
  • Fixed a rare issue where system would crash when miniport driver is reset.
  • Fixed the issue where in case of multi streams of fragmented/small packets, one or more of the Tx rings might become non-operational, and the packets might not be returned to the OS. This used to result in a failure in disabling the network interface, and caused a system crash during restart/shutdown.
  • Fixed an issue where driver could falsely indicate that the device is stuck in extreme CPU load conditions.
  • Fixed the issue of VF miniport reset that used to be caused by OID-timeout of OID_GEN_CURRENT_PACKET_FILTER.
  • Fixed RSS functionality in VM guests with SR-IOV enabled and VMs running in VMQ mode with SR-IOV enabled on host. This used to result in poor performance.
  • Fixed the issue where encapsulation settings (NVGRE+VLXAN) were not restored after reset.
  • Fixed possible system crash when upgrading from v5.00 to a newer version.
  • Fixed a race between VMQ and pkey table initialization. This issue may have occurred on a setup on which a V-Switch is defined on a virtual interface (created via the part_man tool) with a non default pkey.
  • Fixed the issue where it was possible to install the Microsoft Azure 2012R2 package on older Operating Systems.
  • Fixed a mismatch in the way the performance tuning and IPoIB create a MAC from a device GUID. This mismatch may have caused the performance tuning to fail finding the correct MAC for GUIDs that do not start with 0002c9, which used to result in a failure to choose the best NUMA for them.
  • Fixed an error which could cause a freeze of the drivers in the startup in a VM with several VFs.
  • Fixed the issue where deleting a team that has VLANs attached to it would fail on Windows 10 Operating System.

The following issues have been resolved in version 5.10.50000:

  • Device state dump used for debug could cause the device to get stuck, requiring driver restart or server reboot to recover.
  • A system with two or more adapters could crash when one of the adapters gets disabled.
  • During very high CPU load on the core that is in charge of transmit notification processing, driver may mistakenly decide the device is hung and initiate a reset to the interface.
  • When a driver fails to start (Mellanox device appears with Yellow bang in the device manager) and user stops the driver, this could cause the system to hang.
  • Synchronization issue between client and server side in nd_write_lat that could cause the test to hang on start.
  • when a user is trying to change the RoCE mode using the "Set-MlnxDriverCoreSetting" PowerShell command on a setup with two devices, the mode does not change until the next driver restart.
  • After OS initiated reset of the interface, default QoS policies were not properly restored.
  • When enabling VMQ after SRIOV has been disabled, VMQ would not work, and the VM would fall back to paravirtualization, impacting performance.
  • Fixed a race which caused some of the configurations to be badly reinitialized during VM or host transition to VMQ mode.
  • Adding VLANs would fail because the driver’s internal table was not cleaned up correctly upon VLAN removal.
  • Memory leak caused by a race between successful finish of a Management Datagram (MAD) and canceling it.
  • Adapter name in command vea_man to not be case sensitive.
  • When after removing the Virtual Ethernet Adapter, some registry keys would remain.
  • when Query Path Record (QPR) option is set, a race condition occurs. The race would be between the handling of received packets and the response to the path query to the new destination.
  • Fixed the Query Path Record list handling to prevent double entering of the same destination.
  • When BSOD may occur when running with two HCAs and using sminfo when no Subnet Manager is available.
  • When creating virtual IPoIB PKey interfaces with HP cards using part_man.exe utility was not possible.
  • A new VM creation or its migration in IPoIB could cause the system to crash.
  • In VMQ mode, not all receive buffers allocated for the VMQ are used, impacting performance.
Enhancements

New Features and Changes in Version 5.35 from version 5.22:

  • Updated driver settings for Virtual Function to receive optimal performance
  • Added RSS (Rx Steering Mode) monitoring counters support
  • Added counter for link up/down to count the number of times that the link operative state changes to down.
  • vstat tool -
    Added interface description for each port in the vstat tool.
  • Mlxtool -
    Added support in the following actions:
    •Driver restart
    •Pulling resource tracker information for VFs

New Features and Changes in Version 5.22 from version 5.10.50000:

  • Improved cache hit rate in RDMA by reducing the size of the Adapter's Memory Translation Table (MTT).
  • Changed the ND port allocation scheme from hashing to 64k bitmask.
  • Changed the default value of RoCE mode to RoCE v2.
  • Modified the Vsat tool to function also when RoCE is disabled.
  • Tools like nd_write_bw and nd_send_bw now support getting send completions using events instead of polling by using -e switch. Parameter only affects client side and only on “duration” mode (-D ).
  • Improved mlxtool error handling for the pkeys option. When a broken IPoIB interface registry entry exists (for example, an old virtual interface that was not fully removed), the tool would fail and exit. Now the tool skips such entries and prints the next ones.
  • Enabled dual-port card to work as a single-port card.
  • Improved Event Log Messages explaining behavior of the driver in case of illegal port configuration Port1: Ethernet w/o RoCE, Port2 IB.
  • Improved Event Log Messages issued on driver-generated dumps.
  • SR-IOV is disabled when the port is set as IB type.
  • Set the *PriorityVLANTag registry key of Virtual Function (VF) to not support neither priority nor VLAN, and removed VlanId registry key completely.
  • [Beta] Added support for SR-IOV Ethernet Windows over KVM.
  • Removed the co-installer that installs performance counters. The counters is installed during the setup.
  • Added support for tagged and untagged traffic over Team driver.
  • Enabled teaming configuration via the Command Line Interface.
  • Release Notes and User Manual documents were removed from the package. A new README file which includes basic installation instructions, summary of main features and requirements has replaced them.

New Features and Changes in Version 5.10.50000 from version 4.95.50000:

  • ATTO devices will be shown in the device manager with customized ATTO device names and model numbers.
  • Enabled the driver to use a minimal number of memory registration resources when physical memory contiguity allows it.
  • Implemented a resource pool to save physically contiguous memory in the driver, which was used by RDMA applications. This way the re-use of this memory will be allowed.
  • Improved ND connection establishment time when using firmware v2.34.5000.
  • Changed NDK and its clients (like SMBDirect) to be disabled by default when PFC is not enabled.
  • Added an RDMA test to the package to demonstrate Linux interoperability.
  • Enlarged private data limit in ND and NDK.
  • Changed default RoCEv2 UDP destination port to match IANA standard.
  • Improved isolation of SRIOV host from VM driver issues.
  • Added support in mlxtool to allow the query of PKeys configured in SR-IOV VMs.
  • Enabled mlxtool to allow a manual generation of register dumps.
  • For performance tuning purposes, debug counters were added to indicate once the driver transmit queue got full.
  • Added a discard counter for performance analysis.
  • Added discard counters per Transport Class.
  • Enabled a device watchdog mechanism that prevents the device from sending excessive pauses to the network for any reason.
  • Added support for Windows 2008R2/Windows 7 teaming driver to allow selecting the MAC address of the primary interface.
  • Added support for installing counters with co-installer.

Version:5.22 (3 Aug 2016)
Fixes

Upgrade Requirement:
Recommended - HPE recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 5.22:

  • Fixed an issue that caused the perf_tuning.exe tool cease to function in case of Microsoft Windows 10 operating system, when running a dual-port configuration. 
  • Old SriovEnable registry key is now obsolete. SR-IOV is now enabled by default.
  • The system would unexpectedly cease to function due to a wrong detection of the Forwarding scenario. 
  • Improved the notification about the port type settings events in the Windows systrem event Logs.
  • Fixed an issue where the RDSH service had to be disabled even if the CIM provider was not selected as part of the installation.
  • Fixed an issue which resulted in BSOD 0x1E (KMODE_EXCEPTION_NOT_HANDLED) when the machine had multiple network port (whether a single physical card with multiple network ports or multiple single-port cards) with some ports configured with SR-IOV enabled, and some with SR-IOV disabled.
  • Fixed a wrong multicast attach flow in IPoIB which caused both ports to receive multicast messages sent for one of them. Those packets were dropped later on and had no effect on the receiving traffic in the wrong destination, but it did increment the "Packets Received Error" counter.
  • Fixed the NetworkDirect API INDAdapter::Listen() return status when the requested port was already in use. Changed the status from the non-compliant ND_INVALID_PARAMETER to the specification-compliant ND_ADDRESS_ALREADY_EXISTS.
  • Added a mechanism to ensure that listeners will not receive the same ephemeral port. The driver uses the default range of ephemeral ports 49152 to 65535.
  • Fixed an ND applications return status when a Send request failed with RNR. Changed the status from the non-compliant STATUS_DATA_NOT_ACCEPTED to the specification-compliant STATUS_IO_TIMEOUT.
  • Fixed a race in IPoIB multicast management which caused an interface not to re-register on a multicast group after an SM restart. Such behavior resulted in traffic loss.
  • Fixed an issue which prevented the 'ibdiagnet --get_cable_info' command from showing information on the cables in remote nodes.
  • Fixed an issue which disabled VXLAN offload when received OID_TCP_OFFLOAD_PARAMETERS with EncapsulationPacketTaskOffload Enabled and the VxlanUDPPortNumber set to 0.
  • Fixed wrong counting of MTT-pages shown under "Mellanox WinOF Bus Counters".
  • Fixed an issue which caused the CIM provider installation to fail when another provider which uses the same classes was installed.
  • When the cleanup operation started before an IPoIB initialization was completed, an IPoIB initialization error flow cleanup would cause the timer execution process to cease unexpectedly.
  • Fixed an issue which resulted in BSOD when the NIC received illegal OID_RECEIVE_FILTER_QUEUE_PARAMETERS value with QueueID higher than reported.
  • Fixed an issue which prevented the TEAM interface and the VLAN interface to send and receive traffic at the same time. Now both the TEAM and the VLAN interfaces work at the same time where the TEAM interface handles all untagged frames and the VLAN interface handles the tagged frames.
  • Fixed an issue causing BSOD upon driver restart in VM.
  • Added to VSTAT the ability to show the ports’ state in all port configurations (e.g. Ethernet, RoCE) and for several cards.
  • Fixed an issue that caused the system to hang when the driver was installed and RDMA applications were opened.
  • Disabled encapsulation offload capabilities for VFs regardless of the device capability to support it.
  • Added event-viewer message to identify "PortType" registry in case the port is configured for a unsupported type. For example if the device supports only Ethernet and the port is configured for IB the event-viewer message will be displayed.
  • Fixed a bluescreen issue caused by calling NDK_FN_DISCONNECT on a not connected NDK_CONNECTOR.
  • Fixed an issue causing the IP fragmentation not to function properly, consequently discarding large packets, when SR-IOV was turned ON and the "Jumbo Packet" field on the "Advanced" tab of the Ethernet driver's properties (in device manager) was set to 9602 or more.
  • Modified the event viewer-log message displayed when the PCI virtualization does not support SR-IOV. The new message is: "SR-IOV cannot be enabled due to an error in the PCI_VIRTUALIZATION_INTERFACE. Possible reason, the machine does not support SR-IOV."
  • Fixed an issue causing the system to crash when creating a team from the GUI.
  • Fixed an issue where the TTL setting for the RDMA traffic could not be changed. The current solution is now defined for these three cases, first when the driver will look for private parameter in ibbus\parameters\DefaultTTL, Second If it does not exist, it will take it from TCP/IP configuration (tcpip\parameters\DefaultTTL) and third, if not found, it will use TCP/IP default of 128.
  • Fixed an issue which resulted in interface disabling failure, and system crash when disabling the system, when multi-streams of sent fragmented/small packets could not be sent/returned to the OS. 
  • Fixed an issue causing a Black Screen in Windows guest OS running over non-Windows SR-IOV Hypervisor with two IPoIB adapters when the OpenSM was not running.
  • Fixed wrong packets handling when the number of fragments equals the maximum allowed which resulted in a crash when the fragments array was higher then the allowed value.
  • Fixed an OpenSM issue which caused the driver to crash.
  • Fixed an issue which caused the drivers to not work properly or crash as a result of setting values lower than the their default value.
  • Fixed an issue causing memory leakage when uninstalling the PF driver when vSwitch is connected to the device.
  • Fixed a performance tuning issue when using the "Performance" tab in the Advanced property page. Performance tuning did not work as expected on certain systems that have processor groups enabled. Users saw unexpected RSS CPU's assigned. Now the following event log can be seen in logs: “Detected issues with Processor groups on the system that may cause performance degradation. Disable processor groups for best results."
  • Fixed an issue where NDv2 adapter query reported MaxInlineDataSize as zero regardless of the device’s capability.
  • Fixed synchronization issue between NDK OIDs and driver's halt command. The driver started unloading before all the NDK OIDs were completed causing unexpected behavior in the system.
  • Fixed an issue that caused the system to hang when the driver failed to allocate contiguous memory on driver load.
  • Fixed wrong MAC creation from GUIDs that start with E4 D1 D2. In addition to applying the GUIDMask, the bug used to alternate the first byte of the created MAC. This alternation may have caused problems in communication with DHCP for IP address acquiring.
  • Fixed an issue where the ND applications provided with the driver package would fail to run when running on a server with WinOF-2 driver package installed.
  • Fixed a rare issue where system would crash when miniport driver is reset.
  • Fixed the issue where in case of multi streams of fragmented/small packets, one or more of the Tx rings might become non-operational, and the packets might not be returned to the OS. This used to result in a failure in disabling the network interface, and caused a system crash during restart/shutdown.
  • Fixed an issue where driver could falsely indicate that the device is stuck in extreme CPU load conditions.
  • Fixed the issue of VF miniport reset that used to be caused by OID-timeout of OID_GEN_CURRENT_PACKET_FILTER.
  • Fixed RSS functionality in VM guests with SR-IOV enabled and VMs running in VMQ mode with SR-IOV enabled on host. This used to result in poor performance.
  • Fixed the issue where encapsulation settings (NVGRE+VLXAN) were not restored after reset.
  • Fixed possible system crash when upgrading from v5.00 to a newer version.
  • Fixed a race between VMQ and pkey table initialization. This issue may have occurred on a setup on which a V-Switch is defined on a virtual interface (created via the part_man tool) with a non default pkey.
  • Fixed the issue where it was possible to install the Microsoft Azure 2012R2 package on older Operating Systems.
  • Fixed a mismatch in the way the performance tuning and IPoIB create a MAC from a device GUID. This mismatch may have caused the performance tuning to fail finding the correct MAC for GUIDs that do not start with 0002c9, which used to result in a failure to choose the best NUMA for them.
  • Fixed an error which could cause a freeze of the drivers in the startup in a VM with several VFs.
  • Fixed the issue where deleting a team that has VLANs attached to it would fail on Windows 10 Operating System.

The following issues have been resolved in version 5.10.50000:

  • Device state dump used for debug could cause the device to get stuck, requiring driver restart or server reboot to recover.
  • A system with two or more adapters could crash when one of the adapters gets disabled.
  • During very high CPU load on the core that is in charge of transmit notification processing, driver may mistakenly decide the device is hung and initiate a reset to the interface.
  • When a driver fails to start (Mellanox device appears with Yellow bang in the device manager) and user stops the driver, this could cause the system to hang.
  • Synchronization issue between client and server side in nd_write_lat that could cause the test to hang on start.
  • when a user is trying to change the RoCE mode using the "Set-MlnxDriverCoreSetting" PowerShell command on a setup with two devices, the mode does not change until the next driver restart.
  • After OS initiated reset of the interface, default QoS policies were not properly restored.
  • When enabling VMQ after SRIOV has been disabled, VMQ would not work, and the VM would fall back to paravirtualization, impacting performance.
  • Fixed a race which caused some of the configurations to be badly reinitialized during VM or host transition to VMQ mode.
  • Adding VLANs would fail because the driver’s internal table was not cleaned up correctly upon VLAN removal.
  • Memory leak caused by a race between successful finish of a Management Datagram (MAD) and canceling it.
  • Adapter name in command vea_man to not be case sensitive.
  • When after removing the Virtual Ethernet Adapter, some registry keys would remain.
  • when Query Path Record (QPR) option is set, a race condition occurs. The race would be between the handling of received packets and the response to the path query to the new destination.
  • Fixed the Query Path Record list handling to prevent double entering of the same destination.
  • When BSOD may occur when running with two HCAs and using sminfo when no Subnet Manager is available.
  • When creating virtual IPoIB PKey interfaces with HP cards using part_man.exe utility was not possible.
  • A new VM creation or its migration in IPoIB could cause the system to crash.
  • In VMQ mode, not all receive buffers allocated for the VMQ are used, impacting performance.
Enhancements

New Features and Changes in Version 5.22 from version 5.10.50000:

  • Improved cache hit rate in RDMA by reducing the size of the Adapter's Memory Translation Table (MTT).
  • Changed the ND port allocation scheme from hashing to 64k bitmask.
  • Changed the default value of RoCE mode to RoCE v2.
  • Modified the Vsat tool to function also when RoCE is disabled.
  • Tools like nd_write_bw and nd_send_bw now support getting send completions using events instead of polling by using -e switch. Parameter only affects client side and only on “duration” mode (-D ).
  • Improved mlxtool error handling for the pkeys option. When a broken IPoIB interface registry entry exists (for example, an old virtual interface that was not fully removed), the tool would fail and exit. Now the tool skips such entries and prints the next ones.
  • Enabled dual-port card to work as a single-port card.
  • Improved Event Log Messages explaining behavior of the driver in case of illegal port configuration Port1: Ethernet w/o RoCE, Port2 IB.
  • Improved Event Log Messages issued on driver-generated dumps.
  • SR-IOV is disabled when the port is set as IB type.
  • Set the *PriorityVLANTag registry key of Virtual Function (VF) to not support neither priority nor VLAN, and removed VlanId registry key completely.
  • [Beta] Added support for SR-IOV Ethernet Windows over KVM.
  • Removed the co-installer that installs performance counters. The counters is installed during the setup.
  • Added support for tagged and untagged traffic over Team driver.
  • Enabled teaming configuration via the Command Line Interface.
  • Release Notes and User Manual documents were removed from the package. A new README file which includes basic installation instructions, summary of main features and requirements has replaced them.

New Features and Changes in Version 5.10.50000 from version 4.95.50000:

  • ATTO devices will be shown in the device manager with customized ATTO device names and model numbers.
  • Enabled the driver to use a minimal number of memory registration resources when physical memory contiguity allows it.
  • Implemented a resource pool to save physically contiguous memory in the driver, which was used by RDMA applications. This way the re-use of this memory will be allowed.
  • Improved ND connection establishment time when using firmware v2.34.5000.
  • Changed NDK and its clients (like SMBDirect) to be disabled by default when PFC is not enabled.
  • Added an RDMA test to the package to demonstrate Linux interoperability.
  • Enlarged private data limit in ND and NDK.
  • Changed default RoCEv2 UDP destination port to match IANA standard.
  • Improved isolation of SRIOV host from VM driver issues.
  • Added support in mlxtool to allow the query of PKeys configured in SR-IOV VMs.
  • Enabled mlxtool to allow a manual generation of register dumps.
  • For performance tuning purposes, debug counters were added to indicate once the driver transmit queue got full.
  • Added a discard counter for performance analysis.
  • Added discard counters per Transport Class.
  • Enabled a device watchdog mechanism that prevents the device from sending excessive pauses to the network for any reason.
  • Added support for Windows 2008R2/Windows 7 teaming driver to allow selecting the MAC address of the primary interface.
  • Added support for installing counters with co-installer.

Version:5.10.50000 (12 Oct 2015)
Fixes

Upgrade Requirement:
Recommended - HP recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 5.10.50000:

  • Device state dump used for debug could cause the device to get stuck, requiring driver restart or server reboot to recover.
  • A system with two or more adapters could crash when one of the adapters gets disabled.
  • During very high CPU load on the core that is in charge of transmit notification processing, driver may mistakenly decide the device is hung and initiate a reset to the interface.
  • When a driver fails to start (Mellanox device appears with Yellow bang in the device manager) and user stops the driver, this could cause the system to hang.
  • Synchronization issue between client and server side in nd_write_lat that could cause the test to hang on start.
  • when a user is trying to change the RoCE mode using the "Set-MlnxDriverCoreSetting" PowerShell command on a setup with two devices, the mode does not change until the next driver restart.
  • After OS initiated reset of the interface, default QoS policies were not properly restored.
  • When enabling VMQ after SRIOV has been disabled, VMQ would not work, and the VM would fall back to paravirtualization, impacting performance.
  • Fixed a race which caused some of the configurations to be badly reinitialized during VM or host transition to VMQ mode.
  • Adding VLANs would fail because the driver’s internal table was not cleaned up correctly upon VLAN removal.
  • Memory leak caused by a race between successful finish of a Management Datagram (MAD) and canceling it.
  • Adapter name in command vea_man to not be case sensitive.
  • When after removing the Virtual Ethernet Adapter, some registry keys would remain.
  • when Query Path Record (QPR) option is set, a race condition occurs. The race would be between the handling of received packets and the response to the path query to the new destination.
  • Fixed the Query Path Record list handling to prevent double entering of the same destination.
  • When BSOD may occur when running with two HCAs and using sminfo when no Subnet Manager is available.
  • When creating virtual IPoIB PKey interfaces with HP cards using part_man.exe utility was not possible.
  • A new VM creation or its migration in IPoIB could cause the system to crash.
  • In VMQ mode, not all receive buffers allocated for the VMQ are used, impacting performance.

The following issues have been resolved in version 4.95.50000:

  • BSOD on next driver restart when running the sminfo tool and SM is not running.
  • Instability in IPoIB driver when polling mode is enabled.
  • Live-migrated VM with virtual NIC over IPoIB physical interface lost its IP address and came up with APIPA address (169.254.x.x)
  • BSoD after the receive buffer’s size changes in VMQ mode
  • Fixed handling of send request with inline data larger than supported limit.

The following issues have been resolved in version 4.90.50000:

  • Fixed CM CPU consumption for a long period of time while in DPC context.
  • Fixed stability issues.
  • Fixed failure when deleting Virtual Ethernet Interfaces right after creating it.
  • Fixed duplicated values of Receive Completion Method in UI on Windows Server 2012 R2.
  • Fixed propagation of error code when ib_join_mcast() fails.
  • Fixed connectivity problems when using PKeys from the same partition with different membership types.
  • Fixed VM reset after printing the message "mlx4_core 0000:05:00.0: unparavirt command: OTHER (0x3a) accepted from slave:3" in SR-IOV InfiniBand VM over non-windows hypervisor.
  • Fixed the UI crash when working with a single port.
  • Fixed wrong ND_* performance tests duration calculation.
  • Fixed the higher limit of ThreadPoll to be 200,000.
  • Fixed temporary network connectivity issues while migrating VMs or modifying VMQ configuration for VMs that uses IPoIB with VMQ.
  • Fixed the part_man tool to use the actual default p_key instead of 0xffff.
  • Fixed NIC reset when attaching to a multicast group fails.
  • Fixed duplicated values of Receive Completion Method in UI on Windows Server 2012 R2.
  • Fixed CIM failure after installation in maintenance mode.
  • Fixed loading of old driver after driver upgrade that requires system reboot to complete the process.
  • Fixed RoCE disable by default after installation of WinOF in Windows 8.1 Client.
  • Fixed seg fault when executing ND application with no device installed or when a wrong device identifier is used.
  • Fixed wrong reported value of supported number of SGE in 32 bit DLLs.
  • Fixed restoration of NVGRE configuration after NIC reset.
  • Fixed failure when calling Get-MlnxFirmwareIdentity if not all devices are up.
Enhancements

New Features and Changes in Version 5.10.50000 from version 4.95.50000:

  • ATTO devices will be shown in the device manager with customized ATTO device names and model numbers.
  • Enabled the driver to use a minimal number of memory registration resources when physical memory contiguity allows it.
  • Implemented a resource pool to save physically contiguous memory in the driver, which was used by RDMA applications. This way the re-use of this memory will be allowed.
  • Improved ND connection establishment time when using firmware v2.34.5000.
  • Changed NDK and its clients (like SMBDirect) to be disabled by default when PFC is not enabled.
  • Added an RDMA test to the package to demonstrate Linux interoperability.
  • Enlarged private data limit in ND and NDK.
  • Changed default RoCEv2 UDP destination port to match IANA standard.
  • Improved isolation of SRIOV host from VM driver issues.
  • Added support in mlxtool to allow the query of PKeys configured in SR-IOV VMs.
  • Enabled mlxtool to allow a manual generation of register dumps.
  • For performance tuning purposes, debug counters were added to indicate once the driver transmit queue got full.
  • Added a discard counter for performance analysis.
  • Added discard counters per Transport Class.
  • Enabled a device watchdog mechanism that prevents the device from sending excessive pauses to the network for any reason.
  • Added support for Windows 2008R2/Windows 7 teaming driver to allow selecting the MAC address of the primary interface.
  • Added support for installing counters with co-installer.

New Features and Changes in Version 4.95.50000 from version 4.90.50000:

  • Modified counter names in perfmon to be more clear:
    • "Sent Pause Frames" --> "Pause Frames Sent"
    • "Sent Pause Duration" --> "Total Transmitter Pause Duration (us)"
    • "Rcv Pause Frames" --> "Pause Frames Received"
    • "Rcv Pause Duration" --> "Total Requested Pause Duration (us)"
  • ECN is now configurable via PowerShell
  • Added a new mode that ignores FCS warnings and enables the Ethernet packets to be received by the NIC.
  • Added the option of setting the MAC address of 2008R2 teaming driver to be taken from the primary interface.
  • Added the option of taking the MAC Address used for teaming from one of the interfaces without manipulation.
  • Added the option of configuring the team MAC address to be the same as the primary adapter MAC address.
  • Added an autologger session that dumps WPP traces to file to enable easier analysis of issues.
  • Added logging of performance counters and CPU power saving state to system snapshot tool.
  • Added the option to allow RDMA programmers to create pre-allocated pools of ND resources to reduce resource creation time.

Version:4.95.50000 (19 May 2015)
Fixes

Upgrade Requirement:
Recommended - HP recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 4.95.50000:

  • BSOD on next driver restart when running the sminfo tool and SM is not running.
  • Instability in IPoIB driver when polling mode is enabled.
  • Live-migrated VM with virtual NIC over IPoIB physical interface lost its IP address and came up with APIPA address (169.254.x.x)
  • BSoD after the receive buffer’s size changes in VMQ mode
  • Fixed handling of send request with inline data larger than supported limit.

The following issues have been resolved in version 4.90.50000:

  • Fixed CM CPU consumption for a long period of time while in DPC context.
  • Fixed stability issues.
  • Fixed failure when deleting Virtual Ethernet Interfaces right after creating it.
  • Fixed duplicated values of Receive Completion Method in UI on Windows Server 2012 R2.
  • Fixed propagation of error code when ib_join_mcast() fails.
  • Fixed connectivity problems when using PKeys from the same partition with different membership types.
  • Fixed VM reset after printing the message "mlx4_core 0000:05:00.0: unparavirt command: OTHER (0x3a) accepted from slave:3" in SR-IOV InfiniBand VM over non-windows hypervisor.
  • Fixed the UI crash when working with a single port.
  • Fixed wrong ND_* performance tests duration calculation.
  • Fixed the higher limit of ThreadPoll to be 200,000.
  • Fixed temporary network connectivity issues while migrating VMs or modifying VMQ configuration for VMs that uses IPoIB with VMQ.
  • Fixed the part_man tool to use the actual default p_key instead of 0xffff.
  • Fixed NIC reset when attaching to a multicast group fails.
  • Fixed duplicated values of Receive Completion Method in UI on Windows Server 2012 R2.
  • Fixed CIM failure after installation in maintenance mode.
  • Fixed loading of old driver after driver upgrade that requires system reboot to complete the process.
  • Fixed RoCE disable by default after installation of WinOF in Windows 8.1 Client.
  • Fixed seg fault when executing ND application with no device installed or when a wrong device identifier is used.
  • Fixed wrong reported value of supported number of SGE in 32 bit DLLs.
  • Fixed restoration of NVGRE configuration after NIC reset.
  • Fixed failure when calling Get-MlnxFirmwareIdentity if not all devices are up.

The following issues have been resolved in version 4.80.50000:

  • Installation hangup when Remote Desktop Session Host Windows Installer RDS compatibility is enabled.
  • Driver load failure in machines with 1 TB memory and above.
  • Rare cases of driver hang following a Subnet Manager failover event.
  • Stability issues
  • Race condition in NDK between handling of incoming connection and destruction of a listener.
  • Race condition between NDK object creation and usage.
  • Possible reset of driver during migration of large number of VMs at the same time.
  • Incorrect return value in IND2Adapter::QueryAddressList

The following issues have been resolved in version 4.70.50000:

  • Removal of virtual IPoIB ports during uninstallation.
  • Restoration failure of DNS servers during upgrade.
  • Issue which caused Mellanox miniport devices to be listed in "Devices and Printers".
  • Ethernet and IPoIB deadlock in power state change during shutdown/reboot.
  • Stability issues.
  • "part_man exit" with return value 0 in case of error.
  • "ibstat" erratic behavior on devices with RoCE enabled.
  • RDMA Activity counters didn't increase for ND traffic.
  • Hard-coded limitation of 4 SGEs.
  • JumboPackets registry key was not restored correctly.
  • Mellanox devices were listed in "Devices and Printers" and had "Safe Removal" UI.
  • Error statistics collection which could cause false error report.
  • Connectivity problem between Hyper-V VMs on the same host.
  • Loopback issues in the virtualization environment.
  • Issue that prevented receiving ARP traffic in NVGRE mode.

The following issues have been resolved in version 4.60.17738:

  • When uninstalling and reinstalling the driver, the ConnectX-3 Pro Ethernet device was displayed in the Device Manager with a yellow bang (!).
  • Random parsing failures of string registry entries.
  • Compilation failure of "Hello_world" in the SDK.
  • CPU utilization report in nd_*_* tests.
  • sync problems of bidirectional mode in ibv_read_bw/ibv_write_bw.
  • Fixed un-initialized memory access over the VMQ.
  • MAC address uniqueness issue in Microsoft Windows 2008 R2.
  • Packets with corrupted VLAN header were sent when they were meant to be untagged.
  • Unexpected behavior upon QP asynchronous event.
  • The reported link speed value was zero in case of a disconnected network adapter.
  • Port channel teaming issue with CISCO switch and Fabric Extenders traffic drop in Windows Server 2008 R2.
  • Issue preventing get-event to show information after the PCI device is disabled.

 

Enhancements

New Features and Changes in Version 4.95.50000 from version 4.90.50000:

  • Modified counter names in perfmon to be more clear:
    • "Sent Pause Frames" --> "Pause Frames Sent"
    • "Sent Pause Duration" --> "Total Transmitter Pause Duration (us)"
    • "Rcv Pause Frames" --> "Pause Frames Received"
    • "Rcv Pause Duration" --> "Total Requested Pause Duration (us)"
  • ECN is now configurable via PowerShell
  • Added a new mode that ignores FCS warnings and enables the Ethernet packets to be received by the NIC.
  • Added the option of setting the MAC address of 2008R2 teaming driver to be taken from the primary interface.
  • Added the option of taking the MAC Address used for teaming from one of the interfaces without manipulation.
  • Added the option of configuring the team MAC address to be the same as the primary adapter MAC address.
  • Added an autologger session that dumps WPP traces to file to enable easier analysis of issues.
  • Added logging of performance counters and CPU power saving state to system snapshot tool.
  • Added the option to allow RDMA programmers to create pre-allocated pools of ND resources to reduce resource creation time.

New Features and Changes in Version 4.90.50000 from version 4.80.50000:

  • Redesigned and simplified Reset Flow improvements to resolve race conditions with parallel resets.
  • Improved completion memory access speed.
  • Improved RX descriptors memory access.
  • Improved the scalability of VMQ to allow running more Virtual Machines reliably.
  • Enabled ETS per flow according to the DSCP value in the IP header.
  • Reduced memory footprints of Ethernet interfaces.
  • Changed default VMQ/VPort affinity to use the first RSS CPU.
  • Changed behavior in VMQ/SR-IOV mode by making all traffic of the default VPORT/VMQ use the same CPU.
  • Updated IBAL interface version. In order for the applications that use the IBAL interface to work with WinOF Rev 4.90.50000, they must be recompiled with the new SDK.
  • Added support for SM change event.
  • In RoCE v2, added the option of determining the source port field of the UDP header can by the application.
  • Improved CPU utilization.
  • Added support for multiple PKey interfaces in IPoIB.
  • Added support for teaming of IPoIB interfaces to allow failover.
  • Added IPoIB adapters teaming support (beta level).
  • Added sending of gratuitous ARP in IPoIB interface when the MAC address is changed.
  • Reduced memory footprints of IPoIB interfaces.
  • Reduced the multiple number of path record queries to one when old query information exists.
  • Improved completion memory access speed.
  • Changed default VMQ/VPort affinity to use first RSS CPU.
  • Multiple PKey support is now at GA level. The part_man tool allows the creation of up to 64 vIPoIB interfaces (32 per port).
  • Added a warning to the event log if the port MTU is higher than the reported MTU by the SM.
  • In the User Interface, replaced the terms “LBFO” and “Bundle” with “Teaming” and “team” respectively.

New Features and Changes in Version 4.80.50000 from version 4.70.50000:

  • Added check for administrator privileges during installation.
  • Added support for installation in silent mode without execution of perf_tune.
  • Changed Reset Flow (+SR-IOV)-enabled only if no user space application is running and depends on the registry key: AllowResetOnError setting).
  • Changed the number of supported QPs in a multicast group from hard coded value to firmware capabilities dependent.
  • Added multiple P_Key support (beta level).
  • Added IPoIB SR-IOV over KVM and ESX Hypervisors (for both full and partial membership).
  • Added support for LID change event.
  • Added enhancements in part_man for the multiple Pkey support.
  • Changed IPv6 “all dhcp servers” multicast to be persistent.
  • Added RSS in UDP (enabled by default).
  • Added 56 GbE (Please refer to the Infiniband Switch User Guide for further details).
  • Changed DSCP configuration to be per port instead of global.
  • Network Direct: Fixed race in NDK between handling of incoming connection and destruction of a listener.
  • Network Direct: Fixed race between NDK object creation and usage.
  • Improved TCB (Transmission Control Block) management on send.
  • Improved transmit and receive in multi stream scenarios.
  • Enabled hardware checksum offload for non TCP/UDP traffic with ConnectX3-Pro.
  • Improved stability when handling OIDs during driver reset.
  • Added IP based RoCE
  • Added non-default PKey in VM
  • Optimized interrupt moderation values in SR-IOV VF mode for IPoIB
  • Improved perf_tuning detection for the first port
  • Improved performance in packet forwarding scenarios
  • Decreased dropped packets rate for Ethernet significantly
  • Changed default perf_tuning scenario to be “Balanced configuration”
  • Various performance improvements
  • Added ability to read active RoCE configuration from hardware
  • Added support for RoCE v1.25

New Features and Changes in Version 4.70.50000 from version 4.60.17738:

  • All user-space binaries are now signed.
  • Changed Ethernet and IPoIB event log messages to be more clear.
  • Ported SDK project to Visual Studio 2013.
  • Added support for IPoIB SR-IOV Virtual Function (VF) over KVM Hypervisor (Beta level)
  • Added support for non-default pkey, as queried from OpenSM, on IPoIB SR-IOV VF over KVM.
  • Added IPoIB QoS proprietary counters, diagnostics and traffic for monitoring, using Windows' perfmon utility.
  • Added Virtual Ethernet Adapter support which enables using SMB Direct and HyperV (VMQ and NVGRE (over ConnectX®-3 Pro)) on the same port.
  • Added lossless TCP buffer management when no receive WQE are available.
  • Added ConnectX-3 Pro support for RoCEv2.
  • Changed the transport name in vstat and ibstat to be RoCE v2.0
  • Improved perf_tuning setting in single CPU machines to avoid TX collision.
  • Ensured that uninstallation of Mellanox package in Virtual Machine leaves the system clean.
  • Improved information in event log when a bad cable is detected.
  • Improved resiliency on error flow in Ethernet, IPoIB and bus drivers.
  • Added support OF IPv6 to all nd_*_* tests.
  • Enabled optimal interrupt moderation values in SR-IOV VF mode.
  • Stopped using NdisQueryNetBufferPhysicalCount to improve CPU utilization.
  • Enabled searching for IBAT routes based on dest only instead of src,dest and added a mechanism preventing memory growth in IBAT entries.
  • Allowed any number of RSS processors, not only a power of 2.
  • Ensured SR-IOV mode is not enabled for IPoIB ports, which resulted in confusing message in event log.
  • Added support for "unknown" link state indication
  • Added support for DMA checks by driver verifier on SR-IOV Virtual Function.
  • Added support for NVGRE over LBFO Team.
  • Improved performance of handling change receive ring affinity request.
  • In SR-IOV mode, improved resiliency to driver failures in the Virtual Machine which could result in driver load failure in VM.
  • In SR-IOV mode, improved resilience in VF to PF communication.
  • Improved structure of INF file for SR-IOV Physical and Virtual Functions.

New Features and Changes in Version 4.60.17738 from Version 4.4:

  • Enabled configuration changes saving upon Inbox and upgrade from previous releases.
  • Enabled CIM installation as a standalone package.
  • Added IPv6 support to all nd_*_* tests.
  • Added the ability to rearm a CQ in the kernel.
  • Added the ability to handle LID changes.
  • Changed connection timeout behavior. Added the STATUS_CONNECTION_REFUSED return value upon connection timeout.
  • Added the ability to handle LID changes.
  • Added support for iSCSI boot over IPoIB.
  • Performance improvements in latency.
  • Modified the CQ size to prevent CQ overrun.
  • Added DSCP support over IPv4.
  • Added traffic profile.
  • Performance improvements.
  • Added the "ParentBusPath" option to each port registry key.
  • Added a new hardware ID for ConnectX-3 Pro NICs.
  • The QP numbers allocation is now in round-robin manner.
  • "RecvCompletionMethod" as Interrupt is no longer supported.
  • Removed  the ‘Non-DMA’ option from the bus driver configuration.
  • Removed the "TXRingNum" option from the UI.
  • Added NVGRE hardware off-load support.
  • Added the "EncapsulatedPacketTaskOffload" option to the UI when using ConnectX-3 Pro NICs.
  • Added the "nd_send_bw" and "nd_send_lat" ND benchmarking tools.
  • Added IP-IP checksum off-load support.
  • Added Ports TX arbitration and Bandwidth allocation per port.
  • The following ND providers, MLX4ND and MLX4ND2 are now installed by default.
  • Added Sniffer for RoCE packets.
  • The used RoCE mode set upon driver load is now printed into event log message.

Version:4.90.50000 (10 Feb 2015)
Fixes

Upgrade Requirement:
Recommended - HPE recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 4.90.50000:

  • Fixed CM CPU consumption for a long period of time while in DPC context.
  • Fixed stability issues.
  • Fixed failure when deleting Virtual Ethernet Interfaces right after creating it.
  • Fixed duplicated values of Receive Completion Method in UI on Windows Server 2012 R2.
  • Fixed propagation of error code when ib_join_mcast() fails.
  • Fixed connectivity problems when using PKeys from the same partition with different membership types.
  • Fixed VM reset after printing the message "mlx4_core 0000:05:00.0: unparavirt command: OTHER (0x3a) accepted from slave:3" in SR-IOV InfiniBand VM over non-windows hypervisor.
  • Fixed the UI crash when working with a single port.
  • Fixed wrong ND_* performance tests duration calculation.
  • Fixed the higher limit of ThreadPoll to be 200,000.
  • Fixed temporary network connectivity issues while migrating VMs or modifying VMQ configuration for VMs that uses IPoIB with VMQ.
  • Fixed the part_man tool to use the actual default p_key instead of 0xffff.
  • Fixed NIC reset when attaching to a multicast group fails.
  • Fixed duplicated values of Receive Completion Method in UI on Windows Server 2012 R2.
  • Fixed CIM failure after installation in maintenance mode.
  • Fixed loading of old driver after driver upgrade that requires system reboot to complete the process.
  • Fixed RoCE disable by default after installation of WinOF in Windows 8.1 Client.
  • Fixed seg fault when executing ND application with no device installed or when a wrong device identifier is used.
  • Fixed wrong reported value of supported number of SGE in 32 bit DLLs.
  • Fixed restoration of NVGRE configuration after NIC reset.
  • Fixed failure when calling Get-MlnxFirmwareIdentity if not all devices are up.

The following issues have been resolved in version 4.80.50000:

  • Installation hangup when Remote Desktop Session Host Windows Installer RDS compatibility is enabled.
  • Driver load failure in machines with 1 TB memory and above.
  • Rare cases of driver hang following a Subnet Manager failover event.
  • Stability issues
  • Race condition in NDK between handling of incoming connection and destruction of a listener.
  • Race condition between NDK object creation and usage.
  • Possible reset of driver during migration of large number of VMs at the same time.
  • Incorrect return value in IND2Adapter::QueryAddressList

The following issues have been resolved in version 4.70.50000:

  • Removal of virtual IPoIB ports during uninstallation.
  • Restoration failure of DNS servers during upgrade.
  • Issue which caused Mellanox miniport devices to be listed in "Devices and Printers".
  • Ethernet and IPoIB deadlock in power state change during shutdown/reboot.
  • Stability issues.
  • "part_man exit" with return value 0 in case of error.
  • "ibstat" erratic behavior on devices with RoCE enabled.
  • RDMA Activity counters didn't increase for ND traffic.
  • Hard-coded limitation of 4 SGEs.
  • JumboPackets registry key was not restored correctly.
  • Mellanox devices were listed in "Devices and Printers" and had "Safe Removal" UI.
  • Error statistics collection which could cause false error report.
  • Connectivity problem between Hyper-V VMs on the same host.
  • Loopback issues in the virtualization environment.
  • Issue that prevented receiving ARP traffic in NVGRE mode.

The following issues have been resolved in version 4.60.17738:

  • When uninstalling and reinstalling the driver, the ConnectX-3 Pro Ethernet device was displayed in the Device Manager with a yellow bang (!).
  • Random parsing failures of string registry entries.
  • Compilation failure of "Hello_world" in the SDK.
  • CPU utilization report in nd_*_* tests.
  • sync problems of bidirectional mode in ibv_read_bw/ibv_write_bw.
  • Fixed un-initialized memory access over the VMQ.
  • MAC address uniqueness issue in Microsoft Windows 2008 R2.
  • Packets with corrupted VLAN header were sent when they were meant to be untagged.
  • Unexpected behavior upon QP asynchronous event.
  • The reported link speed value was zero in case of a disconnected network adapter.
  • Port channel teaming issue with CISCO switch and Fabric Extenders traffic drop in Windows Server 2008 R2.
  • Issue preventing get-event to show information after the PCI device is disabled.

 

Enhancements

New Features and Changes in Version 4.90.50000 from version 4.80.50000:

  • Redesigned and simplified Reset Flow improvements to resolve race conditions with parallel resets.
  • Improved completion memory access speed.
  • Improved RX descriptors memory access.
  • Improved the scalability of VMQ to allow running more Virtual Machines reliably.
  • Enabled ETS per flow according to the DSCP value in the IP header.
  • Reduced memory footprints of Ethernet interfaces.
  • Changed default VMQ/VPort affinity to use the first RSS CPU.
  • Changed behavior in VMQ/SR-IOV mode by making all traffic of the default VPORT/VMQ use the same CPU.
  • Updated IBAL interface version. In order for the applications that use the IBAL interface to work with WinOF Rev 4.90.50000, they must be recompiled with the new SDK.
  • Added support for SM change event.
  • In RoCE v2, added the option of determining the source port field of the UDP header can by the application.
  • Improved CPU utilization.
  • Added support for multiple PKey interfaces in IPoIB.
  • Added support for teaming of IPoIB interfaces to allow failover.
  • Added IPoIB adapters teaming support (beta level).
  • Added sending of gratuitous ARP in IPoIB interface when the MAC address is changed.
  • Reduced memory footprints of IPoIB interfaces.
  • Reduced the multiple number of path record queries to one when old query information exists.
  • Improved completion memory access speed.
  • Changed default VMQ/VPort affinity to use first RSS CPU.
  • Multiple PKey support is now at GA level. The part_man tool allows the creation of up to 64 vIPoIB interfaces (32 per port).
  • Added a warning to the event log if the port MTU is higher than the reported MTU by the SM.
  • In the User Interface, replaced the terms “LBFO” and “Bundle” with “Teaming” and “team” respectively.

New Features and Changes in Version 4.80.50000 from version 4.70.50000:

  • Added check for administrator privileges during installation.
  • Added support for installation in silent mode without execution of perf_tune.
  • Changed Reset Flow (+SR-IOV)-enabled only if no user space application is running and depends on the registry key: AllowResetOnError setting).
  • Changed the number of supported QPs in a multicast group from hard coded value to firmware capabilities dependent.
  • Added multiple P_Key support (beta level).
  • Added IPoIB SR-IOV over KVM and ESX Hypervisors (for both full and partial membership).
  • Added support for LID change event.
  • Added enhancements in part_man for the multiple Pkey support.
  • Changed IPv6 “all dhcp servers” multicast to be persistent.
  • Added RSS in UDP (enabled by default).
  • Added 56 GbE (Please refer to the Infiniband Switch User Guide for further details).
  • Changed DSCP configuration to be per port instead of global.
  • Network Direct: Fixed race in NDK between handling of incoming connection and destruction of a listener.
  • Network Direct: Fixed race between NDK object creation and usage.
  • Improved TCB (Transmission Control Block) management on send.
  • Improved transmit and receive in multi stream scenarios.
  • Enabled hardware checksum offload for non TCP/UDP traffic with ConnectX3-Pro.
  • Improved stability when handling OIDs during driver reset.
  • Added IP based RoCE
  • Added non-default PKey in VM
  • Optimized interrupt moderation values in SR-IOV VF mode for IPoIB
  • Improved perf_tuning detection for the first port
  • Improved performance in packet forwarding scenarios
  • Decreased dropped packets rate for Ethernet significantly
  • Changed default perf_tuning scenario to be “Balanced configuration”
  • Various performance improvements
  • Added ability to read active RoCE configuration from hardware
  • Added support for RoCE v1.25

New Features and Changes in Version 4.70.50000 from version 4.60.17738:

  • All user-space binaries are now signed.
  • Changed Ethernet and IPoIB event log messages to be more clear.
  • Ported SDK project to Visual Studio 2013.
  • Added support for IPoIB SR-IOV Virtual Function (VF) over KVM Hypervisor (Beta level)
  • Added support for non-default pkey, as queried from OpenSM, on IPoIB SR-IOV VF over KVM.
  • Added IPoIB QoS proprietary counters, diagnostics and traffic for monitoring, using Windows' perfmon utility.
  • Added Virtual Ethernet Adapter support which enables using SMB Direct and HyperV (VMQ and NVGRE (over ConnectX®-3 Pro)) on the same port.
  • Added lossless TCP buffer management when no receive WQE are available.
  • Added ConnectX-3 Pro support for RoCEv2.
  • Changed the transport name in vstat and ibstat to be RoCE v2.0
  • Improved perf_tuning setting in single CPU machines to avoid TX collision.
  • Ensured that uninstallation of Mellanox package in Virtual Machine leaves the system clean.
  • Improved information in event log when a bad cable is detected.
  • Improved resiliency on error flow in Ethernet, IPoIB and bus drivers.
  • Added support OF IPv6 to all nd_*_* tests.
  • Enabled optimal interrupt moderation values in SR-IOV VF mode.
  • Stopped using NdisQueryNetBufferPhysicalCount to improve CPU utilization.
  • Enabled searching for IBAT routes based on dest only instead of src,dest and added a mechanism preventing memory growth in IBAT entries.
  • Allowed any number of RSS processors, not only a power of 2.
  • Ensured SR-IOV mode is not enabled for IPoIB ports, which resulted in confusing message in event log.
  • Added support for "unknown" link state indication
  • Added support for DMA checks by driver verifier on SR-IOV Virtual Function.
  • Added support for NVGRE over LBFO Team.
  • Improved performance of handling change receive ring affinity request.
  • In SR-IOV mode, improved resiliency to driver failures in the Virtual Machine which could result in driver load failure in VM.
  • In SR-IOV mode, improved resilience in VF to PF communication.
  • Improved structure of INF file for SR-IOV Physical and Virtual Functions.

New Features and Changes in Version 4.60.17738 from Version 4.4:

  • Enabled configuration changes saving upon Inbox and upgrade from previous releases.
  • Enabled CIM installation as a standalone package.
  • Added IPv6 support to all nd_*_* tests.
  • Added the ability to rearm a CQ in the kernel.
  • Added the ability to handle LID changes.
  • Changed connection timeout behavior. Added the STATUS_CONNECTION_REFUSED return value upon connection timeout.
  • Added the ability to handle LID changes.
  • Added support for iSCSI boot over IPoIB.
  • Performance improvements in latency.
  • Modified the CQ size to prevent CQ overrun.
  • Added DSCP support over IPv4.
  • Added traffic profile.
  • Performance improvements.
  • Added the "ParentBusPath" option to each port registry key.
  • Added a new hardware ID for ConnectX-3 Pro NICs.
  • The QP numbers allocation is now in round-robin manner.
  • "RecvCompletionMethod" as Interrupt is no longer supported.
  • Removed  the ‘Non-DMA’ option from the bus driver configuration.
  • Removed the "TXRingNum" option from the UI.
  • Added NVGRE hardware off-load support.
  • Added the "EncapsulatedPacketTaskOffload" option to the UI when using ConnectX-3 Pro NICs.
  • Added the "nd_send_bw" and "nd_send_lat" ND benchmarking tools.
  • Added IP-IP checksum off-load support.
  • Added Ports TX arbitration and Bandwidth allocation per port.
  • The following ND providers, MLX4ND and MLX4ND2 are now installed by default.
  • Added Sniffer for RoCE packets.
  • The used RoCE mode set upon driver load is now printed into event log message.

Version:4.80.50000 (23 Sep 2014)
Fixes

Upgrade Requirement:
Recommended - HPE recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 4.80.50000:

  • Installation hangup when Remote Desktop Session Host Windows Installer RDS compatibility is enabled.
  • Driver load failure in machines with 1 TB memory and above.
  • Rare cases of driver hang following a Subnet Manager failover event.
  • Stability issues
  • Race condition in NDK between handling of incoming connection and destruction of a listener.
  • Race condition between NDK object creation and usage.
  • Possible reset of driver during migration of large number of VMs at the same time.
  • Incorrect return value in IND2Adapter::QueryAddressList
The following issues have been resolved in version 4.70.50000:
  • Removal of virtual IPoIB ports during uninstallation.
  • Restoration failure of DNS servers during upgrade.
  • Issue which caused Mellanox miniport devices to be listed in "Devices and Printers".
  • Ethernet and IPoIB deadlock in power state change during shutdown/reboot.
  • Stability issues.
  • "part_man exit" with return value 0 in case of error.
  • "ibstat" erratic behavior on devices with RoCE enabled.
  • RDMA Activity counters didn't increase for ND traffic.
  • Hard-coded limitation of 4 SGEs.
  • JumboPackets registry key was not restored correctly.
  • Mellanox devices were listed in "Devices and Printers" and had "Safe Removal" UI.
  • Error statistics collection which could cause false error report.
  • Connectivity problem between Hyper-V VMs on the same host.
  • Loopback issues in the virtualization environment.
  • Issue that prevented receiving ARP traffic in NVGRE mode.
The following issues have been resolved in version 4.60.17738:
  • When uninstalling and reinstalling the driver, the ConnectX-3 Pro Ethernet device was displayed in the Device Manager with a yellow bang (!).
  • Random parsing failures of string registry entries.
  • Compilation failure of "Hello_world" in the SDK.
  • CPU utilization report in nd_*_* tests.
  • sync problems of bidirectional mode in ibv_read_bw/ibv_write_bw.
  • Fixed un-initialized memory access over the VMQ.
  • MAC address uniqueness issue in Microsoft Windows 2008 R2.
  • Packets with corrupted VLAN header were sent when they were meant to be untagged.
  • Unexpected behavior upon QP asynchronous event.
  • The reported link speed value was zero in case of a disconnected network adapter.
  • Port channel teaming issue with CISCO switch and Fabric Extenders traffic drop in Windows Server 2008 R2.
  • Issue preventing get-event to show information after the PCI device is disabled.
Enhancements

New Features and Changes in Version 4.80.50000 from version 4.70.50000:

  • Added check for administrator privileges during installation.
  • Added support for installation in silent mode without execution of perf_tune.
  • Changed Reset Flow (+SR-IOV)-enabled only if no user space application is running and depends on the registry key: AllowResetOnError setting).
  • Changed the number of supported QPs in a multicast group from hard coded value to firmware capabilities dependent.
  • Added multiple P_Key support (beta level).
  • Added IPoIB SR-IOV over KVM and ESX Hypervisors (for both full and partial membership).
  • Added support for LID change event.
  • Added enhancements in part_man for the multiple Pkey support.
  • Changed IPv6 “all dhcp servers” multicast to be persistent.
  • Added RSS in UDP (enabled by default).
  • Added 56 GbE (Please refer to the Infiniband Switch User Guide for further details).
  • Changed DSCP configuration to be per port instead of global.
  • Network Direct: Fixed race in NDK between handling of incoming connection and destruction of a listener.
  • Network Direct: Fixed race between NDK object creation and usage.
  • Improved TCB (Transmission Control Block) management on send.
  • Improved transmit and receive in multi stream scenarios.
  • Enabled hardware checksum offload for non TCP/UDP traffic with ConnectX3-Pro.
  • Improved stability when handling OIDs during driver reset.
  • Added IP based RoCE
  • Added non-default PKey in VM
  • Optimized interrupt moderation values in SR-IOV VF mode for IPoIB
  • Improved perf_tuning detection for the first port
  • Improved performance in packet forwarding scenarios
  • Decreased dropped packets rate for Ethernet significantly
  • Changed default perf_tuning scenario to be “Balanced configuration”
  • Various performance improvements
  • Added ability to read active RoCE configuration from hardware
  • Added support for RoCE v1.25
New Features and Changes in Version 4.70.50000 from version 4.60.17738:
  • All user-space binaries are now signed.
  • Changed Ethernet and IPoIB event log messages to be more clear.
  • Ported SDK project to Visual Studio 2013.
  • Added support for IPoIB SR-IOV Virtual Function (VF) over KVM Hypervisor (Beta level)
  • Added support for non-default pkey, as queried from OpenSM, on IPoIB SR-IOV VF over KVM.
  • Added IPoIB QoS proprietary counters, diagnostics and traffic for monitoring, using Windows' perfmon utility.
  • Added Virtual Ethernet Adapter support which enables using SMB Direct and HyperV (VMQ and NVGRE (over ConnectX®-3 Pro)) on the same port.
  • Added lossless TCP buffer management when no receive WQE are available.
  • Added ConnectX-3 Pro support for RoCEv2.
  • Changed the transport name in vstat and ibstat to be RoCE v2.0
  • Improved perf_tuning setting in single CPU machines to avoid TX collision.
  • Ensured that uninstallation of Mellanox package in Virtual Machine leaves the system clean.
  • Improved information in event log when a bad cable is detected.
  • Improved resiliency on error flow in Ethernet, IPoIB and bus drivers.
  • Added support OF IPv6 to all nd_*_* tests.
  • Enabled optimal interrupt moderation values in SR-IOV VF mode.
  • Stopped using NdisQueryNetBufferPhysicalCount to improve CPU utilization.
  • Enabled searching for IBAT routes based on dest only instead of src,dest and added a mechanism preventing memory growth in IBAT entries.
  • Allowed any number of RSS processors, not only a power of 2.
  • Ensured SR-IOV mode is not enabled for IPoIB ports, which resulted in confusing message in event log.
  • Added support for "unknown" link state indication
  • Added support for DMA checks by driver verifier on SR-IOV Virtual Function.
  • Added support for NVGRE over LBFO Team.
  • Improved performance of handling change receive ring affinity request.
  • In SR-IOV mode, improved resiliency to driver failures in the Virtual Machine which could result in driver load failure in VM.
  • In SR-IOV mode, improved resilience in VF to PF communication.
  • Improved structure of INF file for SR-IOV Physical and Virtual Functions.
New Features and Changes in Version 4.60.17738 from Version 4.4:
  • Enabled configuration changes saving upon Inbox and upgrade from previous releases.
  • Enabled CIM installation as a standalone package.
  • Added IPv6 support to all nd_*_* tests.
  • Added the ability to rearm a CQ in the kernel.
  • Added the ability to handle LID changes.
  • Changed connection timeout behavior. Added the STATUS_CONNECTION_REFUSED return value upon connection timeout.
  • Added the ability to handle LID changes.
  • Added support for iSCSI boot over IPoIB.
  • Performance improvements in latency.
  • Modified the CQ size to prevent CQ overrun.
  • Added DSCP support over IPv4.
  • Added traffic profile.
  • Performance improvements.
  • Added the "ParentBusPath" option to each port registry key.
  • Added a new hardware ID for ConnectX-3 Pro NICs.
  • The QP numbers allocation is now in round-robin manner.
  • "RecvCompletionMethod" as Interrupt is no longer supported.
  • Removed  the ‘Non-DMA’ option from the bus driver configuration.
  • Removed the "TXRingNum" option from the UI.
  • Added NVGRE hardware off-load support.
  • Added the "EncapsulatedPacketTaskOffload" option to the UI when using ConnectX-3 Pro NICs.
  • Added the "nd_send_bw" and "nd_send_lat" ND benchmarking tools.
  • Added IP-IP checksum off-load support.
  • Added Ports TX arbitration and Bandwidth allocation per port.
  • The following ND providers, MLX4ND and MLX4ND2 are now installed by default.
  • Added Sniffer for RoCE packets.
  • The used RoCE mode set upon driver load is now printed into event log message.

Version:4.70.50000 (23 May 2014)
Fixes

Upgrade Requirement:
Recommended - HPE recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 4.70.50000:

  • Removal of virtual IPoIB ports during uninstallation.
  • Restoration failure of DNS servers during upgrade.
  • Issue which caused Mellanox miniport devices to be listed in "Devices and Printers".
  • Ethernet and IPoIB deadlock in power state change during shutdown/reboot.
  • Stability issues.
  • "part_man exit" with return value 0 in case of error.
  • "ibstat" erratic behavior on devices with RoCE enabled.
  • RDMA Activity counters didn't increase for ND traffic.
  • Hard-coded limitation of 4 SGEs.
  • JumboPackets registry key was not restored correctly.
  • Mellanox devices were listed in "Devices and Printers" and had "Safe Removal" UI.
  • Error statistics collection which could cause false error report.
  • Connectivity problem between Hyper-V VMs on the same host.
  • Loopback issues in the virtualization environment.
  • Issue that prevented receiving ARP traffic in NVGRE mode.
The following issues have been resolved in version 4.60.17738:
  • When uninstalling and reinstalling the driver, the ConnectX-3 Pro Ethernet device was displayed in the Device Manager with a yellow bang (!).
  • Random parsing failures of string registry entries.
  • Compilation failure of "Hello_world" in the SDK.
  • CPU utilization report in nd_*_* tests.
  • sync problems of bidirectional mode in ibv_read_bw/ibv_write_bw.
  • Fixed un-initialized memory access over the VMQ.
  • MAC address uniqueness issue in Microsoft Windows 2008 R2.
  • Packets with corrupted VLAN header were sent when they were meant to be untagged.
  • Unexpected behavior upon QP asynchronous event.
  • The reported link speed value was zero in case of a disconnected network adapter.
  • Port channel teaming issue with CISCO switch and Fabric Extenders traffic drop in Windows Server 2008 R2.
  • Issue preventing get-event to show information after the PCI device is disabled.
The following issues have been resolved in version 4.4:
  • Issue causing the setup to fail upon perf_tune failure during the installation. An error message will be printed in the installation log upon perf_tune failure.
  • Issue with the Mellanox adapter being shown on the USB removal menu, which caused the removal of the Mellanox adapter once removing the USB.
  • Crash in the ib_send_lat/bw utilities caused when the port link was down.
  • “Restore to defaults” option in the perf_tuning tool. Now the default values are being restored.
  • Miniport reset on sending scenarios.
  • Failure of ND connectivity between Virtual Machines on the same host.
  • Bluescreen issue that occurred when disabling the interface after a TX stress over the VMQ.
  • Failure of MPI/ND over InfiniBand

The following issues have been resolved in version 4.3:

  • The RSS indirection table mapping incorrectly built when there were fewer RX rings than RSS cores.
  • Error flows that resulted in a BSOD during driver startup/unload.
  • A leak in active resources caused a BSOD to occur during shutdown.
  • The IBAL applications were prevented from working on machines with 2 cards.
  • When the first packet to be sent was not an ARP or a multicast packet, a packet drop might occur on a remote node.
  • Update to IPoIB VMQ affinity.
  • IPoIB VMQ parent queue management race condition occurred during reset.
  • DHCP packets were incorrectly passed from a Linux VM.
  • RDMA statistics for NDK were incorrectly reported.
  • Known memory leaks.
Enhancements

New Features and Changes in Version 4.70.50000 from version 4.60.17738:

  • All user-space binaries are now signed.
  • Changed Ethernet and IPoIB event log messages to be more clear.
  • Ported SDK project to Visual Studio 2013.
  • Added support for IPoIB SR-IOV Virtual Function (VF) over KVM Hypervisor (Beta level)
  • Added support for non-default pkey, as queried from OpenSM, on IPoIB SR-IOV VF over KVM.
  • Added IPoIB QoS proprietary counters, diagnostics and traffic for monitoring, using Windows' perfmon utility.
  • Added Virtual Ethernet Adapter support which enables using SMB Direct and HyperV (VMQ and NVGRE (over ConnectX®-3 Pro)) on the same port.
  • Added lossless TCP buffer management when no receive WQE are available.
  • Added ConnectX-3 Pro support for RoCEv2.
  • Changed the transport name in vstat and ibstat to be RoCE v2.0
  • Improved perf_tuning setting in single CPU machines to avoid TX collision.
  • Ensured that uninstallation of Mellanox package in Virtual Machine leaves the system clean.
  • Improved information in event log when a bad cable is detected.
  • Improved resiliency on error flow in Ethernet, IPoIB and bus drivers.
  • Added support OF IPv6 to all nd_*_* tests.
  • Enabled optimal interrupt moderation values in SR-IOV VF mode.
  • Stopped using NdisQueryNetBufferPhysicalCount to improve CPU utilization.
  • Enabled searching for IBAT routes based on dest only instead of src,dest and added a mechanism preventing memory growth in IBAT entries.
  • Allowed any number of RSS processors, not only a power of 2.
  • Ensured SR-IOV mode is not enabled for IPoIB ports, which resulted in confusing message in event log.
  • Added support for "unknown" link state indication
  • Added support for DMA checks by driver verifier on SR-IOV Virtual Function.
  • Added support for NVGRE over LBFO Team.
  • Improved performance of handling change receive ring affinity request.
  • In SR-IOV mode, improved resiliency to driver failures in the Virtual Machine which could result in driver load failure in VM.
  • In SR-IOV mode, improved resilience in VF to PF communication.
  • Improved structure of INF file for SR-IOV Physical and Virtual Functions.
New Features and Changes in Version 4.60.17738 from Version 4.4:
  • Enabled configuration changes saving upon Inbox and upgrade from previous releases.
  • Enabled CIM installation as a standalone package.
  • Added IPv6 support to all nd_*_* tests.
  • Added the ability to rearm a CQ in the kernel.
  • Added the ability to handle LID changes.
  • Changed connection timeout behavior. Added the STATUS_CONNECTION_REFUSED return value upon connection timeout.
  • Added the ability to handle LID changes.
  • Added support for iSCSI boot over IPoIB.
  • Performance improvements in latency.
  • Modified the CQ size to prevent CQ overrun.
  • Added DSCP support over IPv4.
  • Added traffic profile.
  • Performance improvements.
  • Added the "ParentBusPath" option to each port registry key.
  • Added a new hardware ID for ConnectX-3 Pro NICs.
  • The QP numbers allocation is now in round-robin manner.
  • "RecvCompletionMethod" as Interrupt is no longer supported.
  • Removed  the ‘Non-DMA’ option from the bus driver configuration.
  • Removed the "TXRingNum" option from the UI.
  • Added NVGRE hardware off-load support.
  • Added the "EncapsulatedPacketTaskOffload" option to the UI when using ConnectX-3 Pro NICs.
  • Added the "nd_send_bw" and "nd_send_lat" ND benchmarking tools.
  • Added IP-IP checksum off-load support.
  • Added Ports TX arbitration and Bandwidth allocation per port.
  • The following ND providers, MLX4ND and MLX4ND2 are now installed by default.
  • Added Sniffer for RoCE packets.
  • The used RoCE mode set upon driver load is now printed into event log message.
New Features and Changes in Version 4.4 from Version 4.3:

General Features:

  • Added a notification in the event log in case SMB is not supported in ConnectX2 firmware.
  • Added the trace tool for WPP tracing.
  • Removed port setting registry key during uninstall.

Performance:

  • Set 512 RX buffers by default.
  • Changed the perf_tuning setting to achieve a better performance tuning

Ethernet Features:

  • Added Transmit Side Scaling (TSS).
  • Added Ethernet QoS proprietary counters, diagnostics and traffic for monitoring, using Windows perfmon utility.
  • Added to the MTU size the IP header size (1500 ->1514, 9600->9614). Thus the minimum Jumbo frame size is 614.
  • Interrupt moderation supports the following new profiles:
    • Low Latency
    • Moderate
    • Aggressive
  • Made mlx4_bus and Ethernet devices removable.
  • Network Direct: Added support for NDv2.
  • Network Direct: Set the default ND provide value to mlx4nd2.
  • Network Direct: Added the option of sensing the incoming Read messages according to the device capabilities when creating an EndPoint limit.
  • Network Direct: Removed the option of NDK registration failure requiring a reboot of the machine to register it again.
  • Removed the QoS attributes when disabling QoS.
  • Enabled MaxRssProcessirs support of the following values: 1, 2, 4, 8, 16, 32, 64.

InfiniBand Features:

  • Added the option of vstat displaying the active_mtu of the ports.
  • Allowed registration of a large Memory Region which is splitted to many segments.
  • Added the option of ibv_devinfo displaying the correct MTU value after it was changed.
  • Added the option of part_man printing the adapter name when the Port GUID is set to zero.
  • Added the option of part_man printing the leading zeroes of port GUID.

Installation / Upgrade:

  • Prevented displaying a message to upgrade the firmware for OEM NICs if it has the latest firmware version.
  • Removed portsetting registry key during uninstall.

New Features and Changes in Version 4.3 from Version 4.2

General Features:

  • Added support for a new provider called MLX4ND, which supports both NDv1 and NDv2 interfaces.

Ethernet Features:

  • RoCE MTU value is no longer set to 1024 by default.
  • All options stay as they are and can only be chosen if they were selected explicitly in the UI/registry.

The current default state is as follows:

  • The value is now derived from the MTU (or MaxFramSize, or Jumbo Packets value) and they are all aliases for the same value).
  • Value is aligned to 256,512,1024,2048 in a way that it will be rounded down to the nearest power of two of the ETH MTU.

InfiniBand Features:

  • Added ibdiagnet utility support.

New Features and Changes in Version 4.2 from Version 3.2.0

General Features:

  • Modified RSS cores and changed VMQ affinity on the fly.
  • Fixed restart issue when there are not enough MSI-X vectors for each machine core.
  • Added support for K-GROUPS processors (more than 64 processors support) to allow assignment of MSI-X affinity for multiple processor groups.
  • Set an adequate number of MTTs to map all physical memory.
  • Allocated firmware and ICM memory in chunks of non-paged memory instead of using contiguous physical memory.
  • Changed device names in device manager and their hardware IDs. The changes were made to distinguish between ConnectX-2 and ConnectX-3:
    • for ConnectX-2: MLX4\ConnectX-2_Eth and IBA\ConnectX-2_IPoIB
    • for ConnectX-3: MLX4\ConnectX-3_Eth and IBA\ConnectX-3_IPoIB

Note: Set QoS settings only for ConnectX-3. Changing the hardware ID, forces the OS to install new device and re-build the registry keys.

  • Added an event log to indicate driver failure upon start if there are two HCA burned with the same GUID.
  • Added firmware upgrade support as part of the setup process. The setup burns the new firmware only on Mellanox cards. Firmware burning failure does not prevent the driver’s installation, therefore, it will show a warning. In this case, it is recommended to update the firmware manually.
  • Enabled configuration of TxRingNum registry key from the UI.
  • Improved the "Port Protocol" dialog.
  • Added Registry key documentation to the setup package.

Performance Enhancements:

  • Optimized code performance.
  • Increased send parallelism.
  • Memory used in receive flow is now allocated with the same affinity of the handling processor for faster access.
  • Statistics parameters are now directly read from hardware instead of being calculated by software.
  • Added support for BlueFlame. BlueFlame is now the default working mode for all packets that have a descriptor which fits into a BF register (currently 256 bytes). Use "BlueFlame" registry key to enable\disable this feature.
  • Added support for RSS functionality on available processors numbers. Used to be restricted to start at the first processor.
  • Changed RSS registry defaults to give better out of the box performance.
  • Added a performance UI to tune performance under various scenarios.
  • Added a tool to tune performance under various scenarios.

Ethernet Features:

  • Added support for multiple TX rings.
  • Added an option to verify that the number of multicast groups used is no higher than the firmware limits.
  • Improved performance in virtualization when using VMQ.

IPoIB Features:

  • Added support for multiple TX rings. The new driver advertises its TSS capability (using multiple TX rings). This feature will not be used when communicating with older version drivers (such as the inbox driver). This way IPv4 communication in a mixed environment that includes the inbox driver should work. IPv6 communication may be problematic in such an environment.
  • Eliminated some race conditions in IPoIB mcast handling.
  • Added mcast addresses according to the Windows mcast table in addition to mcast addresses from igmp\mld queries, in order to connect to such mcasts that are not reported by the queries.
  • Removed redundant LID_CHANGE events. This fixes the redundant reconnection of all IPoIB mcasts.
  • Added support for VM migration. When a VM is migrated from one host to another it does not send a new ARP to hosts it already knew when it was sitting on the first host. In order to prevent communication interruption to such hosts, the driver will initiate an ARP to learn them again.
  • Added support for the part_man tool. It can create only one additional IPoIB interface per port GUID. This feature can be utilized to use different IPoIB interfaces for SMB and Hyper-V. The virtual ports configuration is removed during uninstallation.
  • The following tools were added to the setup package:
    • ibv_asyncwatch.exe
    • ibv_atomic_bw.exe
    • ibv_atomic_lat.exe
    • ibv_devinfo.exe
    • ibv_rc_pingpong.exe
    • ibv_rdma_bw.exe
    • ibv_rdma_lat.exe
    • ibaddr.exe
    • ibcacheedit.exe
    • iblinkinfo.exe
    • ibqueryerrors.exe
    • ibsysstat.exe
    • saquery.exe
    • smpdump.exe

Version:4.60.17738 (20 Mar 2014)
Fixes

Upgrade Requirement:
Recommended - HP recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 4.60.17738:

  • Packets with corrupted VLAN header were sent when they were meant to be untagged.
  • Unexpected behavior upon QP asynchronous event.
  • The reported link speed value was zero in case of a disconnected network adapter.
The following issues have been resolved in version 4.55:
  • When uninstalling and reinstalling the driver, the ConnectX-3 Pro Ethernet device was displayed in the Device Manager with a yellow bang (!).
  • Random parsing failures of string registry entries.
  • Compilation failure of "Hello_world" in the SDK.
  • CPU utilization report in nd_*_* tests.
  • sync problems of bidirectional mode in ibv_read_bw/ibv_write_bw.
  • Fixed un-initialized memory access over the VMQ.
  • Fixed nd_*_bw to achieve better performance (memory buffer alignment) and consistent results.
  • Issue preventing messages to be sent in VLAN 0 when using many VMQ rings.
  • "part_man" issue related to wrong statistics over virtual partman interfaces.
The following issues have been resolved in version 4.4:
  • Issue causing the setup to fail upon perf_tune failure during the installation. An error message will be printed in the installation log upon perf_tune failure.
  • Issue with the Mellanox adapter being shown on the USB removal menu, which caused the removal of the Mellanox adapter once removing the USB.
  • Crash in the ib_send_lat/bw utilities caused when the port link was down.
  • “Restore to defaults” option in the perf_tuning tool. Now the default values are being restored.
  • Miniport reset on sending scenarios.
  • Failure of ND connectivity between Virtual Machines on the same host.
  • Bluescreen issue that occurred when disabling the interface after a TX stress over the VMQ.
  • Failure of MPI/ND over InfiniBand

The following issues have been resolved in version 4.3:

  • The RSS indirection table mapping incorrectly built when there were fewer RX rings than RSS cores.
  • Error flows that resulted in a BSOD during driver startup/unload.
  • A leak in active resources caused a BSOD to occur during shutdown.
  • The IBAL applications were prevented from working on machines with 2 cards.
  • When the first packet to be sent was not an ARP or a multicast packet, a packet drop might occur on a remote node.
  • Update to IPoIB VMQ affinity.
  • IPoIB VMQ parent queue management race condition occurred during reset.
  • DHCP packets were incorrectly passed from a Linux VM.
  • RDMA statistics for NDK were incorrectly reported.
  • Known memory leaks.
Enhancements

New Features and Changes in Version 4.60.17738 from Version 4.4:

  • Enabled configuration changes saving upon Inbox and upgrade from previous releases.
  • Enabled CIM installation as a standalone package.
  • Added IPv6 support to all nd_*_* tests.
  • Added the ability to rearm a CQ in the kernel.
  • Added the ability to handle LID changes.
  • Changed connection timeout behavior. Added the STATUS_CONNECTION_REFUSED return value upon connection timeout.
  • Added the ability to handle LID changes.
  • Added support for iSCSI boot over IPoIB.
  • Performance improvements in latency.
  • Modified the CQ size to prevent CQ overrun.
  • Added DSCP support over IPv4.
  • Added traffic profile.
  • Performance improvements.
  • Added the "ParentBusPath" option to each port registry key.
  • Added a new hardware ID for ConnectX-3 Pro NICs.
  • The QP numbers allocation is now in round-robin manner.
  • "RecvCompletionMethod" as Interrupt is no longer supported.
  • Removed  the ‘Non-DMA’ option from the bus driver configuration.
  • Removed the "TXRingNum" option from the UI.
  • Added NVGRE hardware off-load support.
  • Added the "EncapsulatedPacketTaskOffload" option to the UI when using ConnectX-3 Pro NICs.
  • Added the "nd_send_bw" and "nd_send_lat" ND benchmarking tools.
  • Added IP-IP checksum off-load support.
  • Added Ports TX arbitration and Bandwidth allocation per port.
  • The following ND providers, MLX4ND and MLX4ND2 are now installed by default.
  • Added Sniffer for RoCE packets.
  • The used RoCE mode set upon driver load is now printed into event log message.
New Features and Changes in Version 4.4 from Version 4.3:

General Features:

  • Added a notification in the event log in case SMB is not supported in ConnectX2 firmware.
  • Added the trace tool for WPP tracing.
  • Removed port setting registry key during uninstall.

Performance:

  • Set 512 RX buffers by default.
  • Changed the perf_tuning setting to achieve a better performance tuning

Ethernet Features:

  • Added Transmit Side Scaling (TSS).
  • Added Ethernet QoS proprietary counters, diagnostics and traffic for monitoring, using Windows perfmon utility.
  • Added to the MTU size the IP header size (1500 ->1514, 9600->9614). Thus the minimum Jumbo frame size is 614.
  • Interrupt moderation supports the following new profiles:
    • Low Latency
    • Moderate
    • Aggressive
  • Made mlx4_bus and Ethernet devices removable.
  • Network Direct: Added support for NDv2.
  • Network Direct: Set the default ND provide value to mlx4nd2.
  • Network Direct: Added the option of sensing the incoming Read messages according to the device capabilities when creating an EndPoint limit.
  • Network Direct: Removed the option of NDK registration failure requiring a reboot of the machine to register it again.
  • Removed the QoS attributes when disabling QoS.
  • Enabled MaxRssProcessirs support of the following values: 1, 2, 4, 8, 16, 32, 64.

InfiniBand Features:

  • Added the option of vstat displaying the active_mtu of the ports.
  • Allowed registration of a large Memory Region which is splitted to many segments.
  • Added the option of ibv_devinfo displaying the correct MTU value after it was changed.
  • Added the option of part_man printing the adapter name when the Port GUID is set to zero.
  • Added the option of part_man printing the leading zeroes of port GUID.

Installation / Upgrade:

  • Prevented displaying a message to upgrade the firmware for OEM NICs if it has the latest firmware version.
  • Removed portsetting registry key during uninstall.

New Features and Changes in Version 4.3 from Version 4.2

General Features:

  • Added support for a new provider called MLX4ND, which supports both NDv1 and NDv2 interfaces.

Ethernet Features:

  • RoCE MTU value is no longer set to 1024 by default.
  • All options stay as they are and can only be chosen if they were selected explicitly in the UI/registry.

The current default state is as follows:

  • The value is now derived from the MTU (or MaxFramSize, or Jumbo Packets value) and they are all aliases for the same value).
  • Value is aligned to 256,512,1024,2048 in a way that it will be rounded down to the nearest power of two of the ETH MTU.

InfiniBand Features:

  • Added ibdiagnet utility support.

New Features and Changes in Version 4.2 from Version 3.2.0

General Features:

  • Modified RSS cores and changed VMQ affinity on the fly.
  • Fixed restart issue when there are not enough MSI-X vectors for each machine core.
  • Added support for K-GROUPS processors (more than 64 processors support) to allow assignment of MSI-X affinity for multiple processor groups.
  • Set an adequate number of MTTs to map all physical memory.
  • Allocated firmware and ICM memory in chunks of non-paged memory instead of using contiguous physical memory.
  • Changed device names in device manager and their hardware IDs. The changes were made to distinguish between ConnectX-2 and ConnectX-3:
    • for ConnectX-2: MLX4\ConnectX-2_Eth and IBA\ConnectX-2_IPoIB
    • for ConnectX-3: MLX4\ConnectX-3_Eth and IBA\ConnectX-3_IPoIB

Note: Set QoS settings only for ConnectX-3. Changing the hardware ID, forces the OS to install new device and re-build the registry keys.

  • Added an event log to indicate driver failure upon start if there are two HCA burned with the same GUID.
  • Added firmware upgrade support as part of the setup process. The setup burns the new firmware only on Mellanox cards. Firmware burning failure does not prevent the driver’s installation, therefore, it will show a warning. In this case, it is recommended to update the firmware manually.
  • Enabled configuration of TxRingNum registry key from the UI.
  • Improved the "Port Protocol" dialog.
  • Added Registry key documentation to the setup package.

Performance Enhancements:

  • Optimized code performance.
  • Increased send parallelism.
  • Memory used in receive flow is now allocated with the same affinity of the handling processor for faster access.
  • Statistics parameters are now directly read from hardware instead of being calculated by software.
  • Added support for BlueFlame. BlueFlame is now the default working mode for all packets that have a descriptor which fits into a BF register (currently 256 bytes). Use "BlueFlame" registry key to enable\disable this feature.
  • Added support for RSS functionality on available processors numbers. Used to be restricted to start at the first processor.
  • Changed RSS registry defaults to give better out of the box performance.
  • Added a performance UI to tune performance under various scenarios.
  • Added a tool to tune performance under various scenarios.

Ethernet Features:

  • Added support for multiple TX rings.
  • Added an option to verify that the number of multicast groups used is no higher than the firmware limits.
  • Improved performance in virtualization when using VMQ.

IPoIB Features:

  • Added support for multiple TX rings. The new driver advertises its TSS capability (using multiple TX rings). This feature will not be used when communicating with older version drivers (such as the inbox driver). This way IPv4 communication in a mixed environment that includes the inbox driver should work. IPv6 communication may be problematic in such an environment.
  • Eliminated some race conditions in IPoIB mcast handling.
  • Added mcast addresses according to the Windows mcast table in addition to mcast addresses from igmp\mld queries, in order to connect to such mcasts that are not reported by the queries.
  • Removed redundant LID_CHANGE events. This fixes the redundant reconnection of all IPoIB mcasts.
  • Added support for VM migration. When a VM is migrated from one host to another it does not send a new ARP to hosts it already knew when it was sitting on the first host. In order to prevent communication interruption to such hosts, the driver will initiate an ARP to learn them again.
  • Added support for the part_man tool. It can create only one additional IPoIB interface per port GUID. This feature can be utilized to use different IPoIB interfaces for SMB and Hyper-V. The virtual ports configuration is removed during uninstallation.
  • The following tools were added to the setup package:
    • ibv_asyncwatch.exe
    • ibv_atomic_bw.exe
    • ibv_atomic_lat.exe
    • ibv_devinfo.exe
    • ibv_rc_pingpong.exe
    • ibv_rdma_bw.exe
    • ibv_rdma_lat.exe
    • ibaddr.exe
    • ibcacheedit.exe
    • iblinkinfo.exe
    • ibqueryerrors.exe
    • ibsysstat.exe
    • saquery.exe
    • smpdump.exe

Version:4.60 (15 Jan 2014)
Fixes

Upgrade Requirement:
Recommended - HPE recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 4.60:

  • MAC address uniqueness issue in Microsoft Windows 2008 R2.
  • Packets with corrupted VLAN header were sent when they were meant to be untagged.
  • Unexpected behavior upon QP asynchronous event.
  • The reported link speed value was zero in case of a disconnected network adapter.
The following issues have been resolved in version 4.55:
  • When uninstalling and reinstalling the driver, the ConnectX-3 Pro Ethernet device was displayed in the Device Manager with a yellow bang (!).
  • Random parsing failures of string registry entries.
  • Compilation failure of "Hello_world" in the SDK.
  • CPU utilization report in nd_*_* tests.
  • sync problems of bidirectional mode in ibv_read_bw/ibv_write_bw.
  • Fixed un-initialized memory access over the VMQ.
  • Fixed nd_*_bw to achieve better performance (memory buffer alignment) and consistent results.
  • Issue preventing messages to be sent in VLAN 0 when using many VMQ rings.
  • "part_man" issue related to wrong statistics over virtual partman interfaces.

The following issues have been resolved in version 4.4:
  • Issue causing the setup to fail upon perf_tune failure during the installation. An error message will be printed in the installation log upon perf_tune failure.
  • Issue with the Mellanox adapter being shown on the USB removal menu, which caused the removal of the Mellanox adapter once removing the USB.
  • Crash in the ib_send_lat/bw utilities caused when the port link was down.
  • “Restore to defaults” option in the perf_tuning tool. Now the default values are being restored.
  • Miniport reset on sending scenarios.
  • Failure of ND connectivity between Virtual Machines on the same host.
  • Bluescreen issue that occurred when disabling the interface after a TX stress over the VMQ.
  • Failure of MPI/ND over InfiniBand

The following issues have been resolved in version 4.3:

  • The RSS indirection table mapping incorrectly built when there were fewer RX rings than RSS cores.
  • Error flows that resulted in a BSOD during driver startup/unload.
  • A leak in active resources caused a BSOD to occur during shutdown.
  • The IBAL applications were prevented from working on machines with 2 cards.
  • When the first packet to be sent was not an ARP or a multicast packet, a packet drop might occur on a remote node.
  • Update to IPoIB VMQ affinity.
  • IPoIB VMQ parent queue management race condition occurred during reset.
  • DHCP packets were incorrectly passed from a Linux VM.
  • RDMA statistics for NDK were incorrectly reported.
  • Known memory leaks.
Enhancements

New Features and Changes in Version 4.60 from Version 4.4:

  • Enabled configuration changes saving upon Inbox and upgrade from previous releases.
  • Enabled CIM installation as a standalone package.
  • Added IPv6 support to all nd_*_* tests.
  • Added the ability to rearm a CQ in the kernel.
  • Added the ability to handle LID changes.
  • Changed connection timeout behavior. Added the STATUS_CONNECTION_REFUSED return value upon connection timeout.
  • Added the ability to handle LID changes.
  • Added support for iSCSI boot over IPoIB.
  • Performance improvements in latency.
  • Modified the CQ size to prevent CQ overrun.
  • Added DSCP support over IPv4.
  • Added traffic profile.
  • Performance improvements.
  • Added the "ParentBusPath" option to each port registry key.
  • Added a new hardware ID for ConnectX-3 Pro NICs.
  • The QP numbers allocation is now in round-robin manner.
  • "RecvCompletionMethod" as Interrupt is no longer supported.
  • Removed  the ‘Non-DMA’ option from the bus driver configuration.
  • Removed the "TXRingNum" option from the UI.
  • Added NVGRE hardware off-load support.
  • Added the "EncapsulatedPacketTaskOffload" option to the UI when using ConnectX-3 Pro NICs.
  • Added the "nd_send_bw" and "nd_send_lat" ND benchmarking tools.
  • Added IP-IP checksum off-load support.
  • Added Ports TX arbitration and Bandwidth allocation per port.
  • The following ND providers, MLX4ND and MLX4ND2 are now installed by default.
  • Added Sniffer for RoCE packets.
  • The used RoCE mode set upon driver load is now printed into event log message.
New Features and Changes in Version 4.4 from Version 4.3:

General Features:

  • Added a notification in the event log in case SMB is not supported in ConnectX2 firmware.
  • Added the trace tool for WPP tracing.
  • Removed port setting registry key during uninstall.

Performance:

  • Set 512 RX buffers by default.
  • Changed the perf_tuning setting to achieve a better performance tuning

Ethernet Features:

  • Added Transmit Side Scaling (TSS).
  • Added Ethernet QoS proprietary counters, diagnostics and traffic for monitoring, using Windows perfmon utility.
  • Added to the MTU size the IP header size (1500 ->1514, 9600->9614). Thus the minimum Jumbo frame size is 614.
  • Interrupt moderation supports the following new profiles:
    • Low Latency
    • Moderate
    • Aggressive
  • Made mlx4_bus and Ethernet devices removable.
  • Network Direct: Added support for NDv2.
  • Network Direct: Set the default ND provide value to mlx4nd2.
  • Network Direct: Added the option of sensing the incoming Read messages according to the device capabilities when creating an EndPoint limit.
  • Network Direct: Removed the option of NDK registration failure requiring a reboot of the machine to register it again.
  • Removed the QoS attributes when disabling QoS.
  • Enabled MaxRssProcessirs support of the following values: 1, 2, 4, 8, 16, 32, 64.

InfiniBand Features:

  • Added the option of vstat displaying the active_mtu of the ports.
  • Allowed registration of a large Memory Region which is splitted to many segments.
  • Added the option of ibv_devinfo displaying the correct MTU value after it was changed.
  • Added the option of part_man printing the adapter name when the Port GUID is set to zero.
  • Added the option of part_man printing the leading zeroes of port GUID.

Installation / Upgrade:

  • Prevented displaying a message to upgrade the firmware for OEM NICs if it has the latest firmware version.
  • Removed portsetting registry key during uninstall.

New Features and Changes in Version 4.3 from Version 4.2

General Features:

  • Added support for a new provider called MLX4ND, which supports both NDv1 and NDv2 interfaces.

Ethernet Features:

  • RoCE MTU value is no longer set to 1024 by default.
  • All options stay as they are and can only be chosen if they were selected explicitly in the UI/registry.

The current default state is as follows:

  • The value is now derived from the MTU (or MaxFramSize, or Jumbo Packets value) and they are all aliases for the same value).
  • Value is aligned to 256,512,1024,2048 in a way that it will be rounded down to the nearest power of two of the ETH MTU.

InfiniBand Features:

  • Added ibdiagnet utility support.

New Features and Changes in Version 4.2 from Version 3.2.0

General Features:

  • Modified RSS cores and changed VMQ affinity on the fly.
  • Fixed restart issue when there are not enough MSI-X vectors for each machine core.
  • Added support for K-GROUPS processors (more than 64 processors support) to allow assignment of MSI-X affinity for multiple processor groups.
  • Set an adequate number of MTTs to map all physical memory.
  • Allocated firmware and ICM memory in chunks of non-paged memory instead of using contiguous physical memory.
  • Changed device names in device manager and their hardware IDs. The changes were made to distinguish between ConnectX-2 and ConnectX-3:
    • for ConnectX-2: MLX4\ConnectX-2_Eth and IBA\ConnectX-2_IPoIB
    • for ConnectX-3: MLX4\ConnectX-3_Eth and IBA\ConnectX-3_IPoIB

Note: Set QoS settings only for ConnectX-3. Changing the hardware ID, forces the OS to install new device and re-build the registry keys.

  • Added an event log to indicate driver failure upon start if there are two HCA burned with the same GUID.
  • Added firmware upgrade support as part of the setup process. The setup burns the new firmware only on Mellanox cards. Firmware burning failure does not prevent the driver’s installation, therefore, it will show a warning. In this case, it is recommended to update the firmware manually.
  • Enabled configuration of TxRingNum registry key from the UI.
  • Improved the "Port Protocol" dialog.
  • Added Registry key documentation to the setup package.

Performance Enhancements:

  • Optimized code performance.
  • Increased send parallelism.
  • Memory used in receive flow is now allocated with the same affinity of the handling processor for faster access.
  • Statistics parameters are now directly read from hardware instead of being calculated by software.
  • Added support for BlueFlame. BlueFlame is now the default working mode for all packets that have a descriptor which fits into a BF register (currently 256 bytes). Use "BlueFlame" registry key to enable\disable this feature.
  • Added support for RSS functionality on available processors numbers. Used to be restricted to start at the first processor.
  • Changed RSS registry defaults to give better out of the box performance.
  • Added a performance UI to tune performance under various scenarios.
  • Added a tool to tune performance under various scenarios.

Ethernet Features:

  • Added support for multiple TX rings.
  • Added an option to verify that the number of multicast groups used is no higher than the firmware limits.
  • Improved performance in virtualization when using VMQ.

IPoIB Features:

  • Added support for multiple TX rings. The new driver advertises its TSS capability (using multiple TX rings). This feature will not be used when communicating with older version drivers (such as the inbox driver). This way IPv4 communication in a mixed environment that includes the inbox driver should work. IPv6 communication may be problematic in such an environment.
  • Eliminated some race conditions in IPoIB mcast handling.
  • Added mcast addresses according to the Windows mcast table in addition to mcast addresses from igmp\mld queries, in order to connect to such mcasts that are not reported by the queries.
  • Removed redundant LID_CHANGE events. This fixes the redundant reconnection of all IPoIB mcasts.
  • Added support for VM migration. When a VM is migrated from one host to another it does not send a new ARP to hosts it already knew when it was sitting on the first host. In order to prevent communication interruption to such hosts, the driver will initiate an ARP to learn them again.
  • Added support for the part_man tool. It can create only one additional IPoIB interface per port GUID. This feature can be utilized to use different IPoIB interfaces for SMB and Hyper-V. The virtual ports configuration is removed during uninstallation.
  • The following tools were added to the setup package:
    • ibv_asyncwatch.exe
    • ibv_atomic_bw.exe
    • ibv_atomic_lat.exe
    • ibv_devinfo.exe
    • ibv_rc_pingpong.exe
    • ibv_rdma_bw.exe
    • ibv_rdma_lat.exe
    • ibaddr.exe
    • ibcacheedit.exe
    • iblinkinfo.exe
    • ibqueryerrors.exe
    • ibsysstat.exe
    • saquery.exe
    • smpdump.exe

Version:4.4 (25 Jun 2013)
Fixes

Upgrade Requirement:
Recommended - HP recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 4.4:

  • Issue causing the setup to fail upon perf_tune failure during the installation. An error message will be printed in the installation log upon perf_tune failure.
  • Issue with the Mellanox adapter being shown on the USB removal menu, which caused the removal of the Mellanox adapter once removing the USB.
  • Crash in the ib_send_lat/bw utilities caused when the port link was down.
  • “Restore to defaults” option in the perf_tuning tool. Now the default values are being restored.
  • Miniport reset on sending scenarios.
  • Failure of ND connectivity between Virtual Machines on the same host.
  • Bluescreen issue that occurred when disabling the interface after a TX stress over the VMQ.
  • Failure of MPI/ND over InfiniBand

The following issues have been resolved in version 4.3:

  • The RSS indirection table mapping incorrectly built when there were fewer RX rings than RSS cores.
  • Error flows that resulted in a BSOD during driver startup/unload.
  • A leak in active resources caused a BSOD to occur during shutdown.
  • The IBAL applications were prevented from working on machines with 2 cards.
  • When the first packet to be sent was not an ARP or a multicast packet, a packet drop might occur on a remote node.
  • Update to IPoIB VMQ affinity.
  • IPoIB VMQ parent queue management race condition occurred during reset.
  • DHCP packets were incorrectly passed from a Linux VM.
  • RDMA statistics for NDK were incorrectly reported.
  • Known memory leaks.
Enhancements

New Features and Changes in Version 4.4 from Version 4.3

General Features:

  • Added a notification in the event log in case SMB is not supported in ConnectX2 firmware.
  • Added the trace tool for WPP tracing.
  • Removed port setting registry key during uninstall.

Performance:

  • Set 512 RX buffers by default.
  • Changed the perf_tuning setting to achieve a better performance tuning

Ethernet Features:

  • Added Transmit Side Scaling (TSS).
  • Added Ethernet QoS proprietary counters, diagnostics and traffic for monitoring, using Windows perfmon utility.
  • Added to the MTU size the IP header size (1500 ->1514, 9600->9614). Thus the minimum Jumbo frame size is 614.
  • Interrupt moderation supports the following new profiles:
    • Low Latency
    • Moderate
    • Aggressive
  • Made mlx4_bus and Ethernet devices removable.
  • Network Direct: Added support for NDv2.
  • Network Direct: Set the default ND provide value to mlx4nd2.
  • Network Direct: Added the option of sensing the incoming Read messages according to the device capabilities when creating an EndPoint limit.
  • Network Direct: Removed the option of NDK registration failure requiring a reboot of the machine to register it again.
  • Removed the QoS attributes when disabling QoS.
  • Enabled MaxRssProcessirs support of the following values: 1, 2, 4, 8, 16, 32, 64.

InfiniBand Features:

  • Added the option of vstat displaying the active_mtu of the ports.
  • Allowed registration of a large Memory Region which is splitted to many segments.
  • Added the option of ibv_devinfo displaying the correct MTU value after it was changed.
  • Added the option of part_man printing the adapter name when the Port GUID is set to zero.
  • Added the option of part_man printing the leading zeroes of port GUID.

Installation / Upgrade:

  • Prevented displaying a message to upgrade the firmware for OEM NICs if it has the latest firmware version.
  • Removed portsetting registry key during uninstall.


New Features and Changes in Version 4.3 from Version 4.2

General Features:

  • Added support for a new provider called MLX4ND, which supports both NDv1 and NDv2 interfaces.

Ethernet Features:

  • RoCE MTU value is no longer set to 1024 by default.
  • All options stay as they are and can only be chosen if they were selected explicitly in the UI/registry.

The current default state is as follows:

  • The value is now derived from the MTU (or MaxFramSize, or Jumbo Packets value) and they are all aliases for the same value).
  • Value is aligned to 256,512,1024,2048 in a way that it will be rounded down to the nearest power of two of the ETH MTU.

InfiniBand Features:

  • Added ibdiagnet utility support.

New Features and Changes in Version 4.2 from Version 3.2.0

General Features:

  • Modified RSS cores and changed VMQ affinity on the fly.
  • Fixed restart issue when there are not enough MSI-X vectors for each machine core.
  • Added support for K-GROUPS processors (more than 64 processors support) to allow assignment of MSI-X affinity for multiple processor groups.
  • Set an adequate number of MTTs to map all physical memory.
  • Allocated firmware and ICM memory in chunks of non-paged memory instead of using contiguous physical memory.
  • Changed device names in device manager and their hardware IDs. The changes were made to distinguish between ConnectX-2 and ConnectX-3:
    • for ConnectX-2: MLX4\ConnectX-2_Eth and IBA\ConnectX-2_IPoIB
    • for ConnectX-3: MLX4\ConnectX-3_Eth and IBA\ConnectX-3_IPoIB

Note: Set QoS settings only for ConnectX-3. Changing the hardware ID, forces the OS to install new device and re-build the registry keys.

  • Added an event log to indicate driver failure upon start if there are two HCA burned with the same GUID.
  • Added firmware upgrade support as part of the setup process. The setup burns the new firmware only on Mellanox cards. Firmware burning failure does not prevent the driver’s installation, therefore, it will show a warning. In this case, it is recommended to update the firmware manually.
  • Enabled configuration of TxRingNum registry key from the UI.
  • Improved the "Port Protocol" dialog.
  • Added Registry key documentation to the setup package.

Performance Enhancements:

  • Optimized code performance.
  • Increased send parallelism.
  • Memory used in receive flow is now allocated with the same affinity of the handling processor for faster access.
  • Statistics parameters are now directly read from hardware instead of being calculated by software.
  • Added support for BlueFlame. BlueFlame is now the default working mode for all packets that have a descriptor which fits into a BF register (currently 256 bytes). Use "BlueFlame" registry key to enable\disable this feature.
  • Added support for RSS functionality on available processors numbers. Used to be restricted to start at the first processor.
  • Changed RSS registry defaults to give better out of the box performance.
  • Added a performance UI to tune performance under various scenarios.
  • Added a tool to tune performance under various scenarios.

Ethernet Features:

  • Added support for multiple TX rings.
  • Added an option to verify that the number of multicast groups used is no higher than the firmware limits.
  • Improved performance in virtualization when using VMQ.

IPoIB Features:

  • Added support for multiple TX rings. The new driver advertises its TSS capability (using multiple TX rings). This feature will not be used when communicating with older version drivers (such as the inbox driver). This way IPv4 communication in a mixed environment that includes the inbox driver should work. IPv6 communication may be problematic in such an environment.
  • Eliminated some race conditions in IPoIB mcast handling.
  • Added mcast addresses according to the Windows mcast table in addition to mcast addresses from igmp\mld queries, in order to connect to such mcasts that are not reported by the queries.
  • Removed redundant LID_CHANGE events. This fixes the redundant reconnection of all IPoIB mcasts.
  • Added support for VM migration. When a VM is migrated from one host to another it does not send a new ARP to hosts it already knew when it was sitting on the first host. In order to prevent communication interruption to such hosts, the driver will initiate an ARP to learn them again.
  • Added support for the part_man tool. It can create only one additional IPoIB interface per port GUID. This feature can be utilized to use different IPoIB interfaces for SMB and Hyper-V. The virtual ports configuration is removed during uninstallation.
  • The following tools were added to the setup package:
    • ibv_asyncwatch.exe
    • ibv_atomic_bw.exe
    • ibv_atomic_lat.exe
    • ibv_devinfo.exe
    • ibv_rc_pingpong.exe
    • ibv_rdma_bw.exe
    • ibv_rdma_lat.exe
    • ibaddr.exe
    • ibcacheedit.exe
    • iblinkinfo.exe
    • ibqueryerrors.exe
    • ibsysstat.exe
    • saquery.exe
    • smpdump.exe

Version:4.3 (21 Jan 2013)
Fixes

Upgrade Requirement:
Recommended - HPE recommends users update to this version at their earliest convenience.


The following issues have been resolved in version 4.3

  • The RSS indirection table mapping incorrectly built when there were fewer RX rings than RSS cores.
  • Error flows that resulted in a BSOD during driver startup/unload.
  • A leak in active resources caused a BSOD to occur during shutdown.
  • The IBAL applications were prevented from working on machines with 2 cards.
  • When the first packet to be sent was not an ARP or a multicast packet, a packet drop might occur on a remote node.
  • Update to IPoIB VMQ affinity.
  • IPoIB VMQ parent queue management race condition occurred during reset.
  • DHCP packets were incorrectly passed from a Linux VM.
  • RDMA statistics for NDK were incorrectly reported.
  • Known memory leaks.
Enhancements

New Features and Changes in Version 4.3 from Version 4.2

General Features:

  • Added support for a new provider called MLX4ND, which supports both NDv1 and NDv2 interfaces.

Ethernet Features:

  • RoCE MTU value is no longer set to 1024 by default.
  • All options stay as they are and can only be chosen if they were selected explicitly in the UI/registry.

The current default state is as follows:

  • The value is now derived from the MTU (or MaxFramSize, or Jumbo Packets value) and they are all aliases for the same value).
  • Value is aligned to 256,512,1024,2048 in a way that it will be rounded down to the nearest power of two of the ETH MTU.

InfiniBand Features:

  • Added ibdiagnet utility support.

New Features and Changes in Version 4.2 from Version 3.2.0

General Features:

  • Modified RSS cores and changed VMQ affinity on the fly.
  • Fixed restart issue when there are not enough MSI-X vectors for each machine core.
  • Added support for K-GROUPS processors (more than 64 processors support) to allow assignment of MSI-X affinity for multiple processor groups.
  • Set an adequate number of MTTs to map all physical memory.
  • Allocated firmware and ICM memory in chunks of non-paged memory instead of using contiguous physical memory.
  • Changed device names in device manager and their hardware IDs. The changes were made to distinguish between ConnectX-2 and ConnectX-3:
    • for ConnectX-2: MLX4\ConnectX-2_Eth and IBA\ConnectX-2_IPoIB
    • for ConnectX-3: MLX4\ConnectX-3_Eth and IBA\ConnectX-3_IPoIB

Note: Set QoS settings only for ConnectX-3. Changing the hardware ID, forces the OS to install new device and re-build the registry keys.

  • Added an event log to indicate driver failure upon start if there are two HCA burned with the same GUID.
  • Added firmware upgrade support as part of the setup process. The setup burns the new firmware only on Mellanox cards. Firmware burning failure does not prevent the driver’s installation, therefore, it will show a warning. In this case, it is recommended to update the firmware manually.
  • Enabled configuration of TxRingNum registry key from the UI.
  • Improved the "Port Protocol" dialog.
  • Added Registry key documentation to the setup package.

Performance Enhancements:

  • Optimized code performance.
  • Increased send parallelism.
  • Memory used in receive flow is now allocated with the same affinity of the handling processor for faster access.
  • Statistics parameters are now directly read from hardware instead of being calculated by software.
  • Added support for BlueFlame. BlueFlame is now the default working mode for all packets that have a descriptor which fits into a BF register (currently 256 bytes). Use "BlueFlame" registry key to enable\disable this feature.
  • Added support for RSS functionality on available processors numbers. Used to be restricted to start at the first processor.
  • Changed RSS registry defaults to give better out of the box performance.
  • Added a performance UI to tune performance under various scenarios.
  • Added a tool to tune performance under various scenarios.

Ethernet Features:

  • Added support for multiple TX rings.
  • Added an option to verify that the number of multicast groups used is no higher than the firmware limits.
  • Improved performance in virtualization when using VMQ.

IPoIB Features:

  • Added support for multiple TX rings. The new driver advertises its TSS capability (using multiple TX rings). This feature will not be used when communicating with older version drivers (such as the inbox driver). This way IPv4 communication in a mixed environment that includes the inbox driver should work. IPv6 communication may be problematic in such an environment.
  • Eliminated some race conditions in IPoIB mcast handling.
  • Added mcast addresses according to the Windows mcast table in addition to mcast addresses from igmp\mld queries, in order to connect to such mcasts that are not reported by the queries.
  • Removed redundant LID_CHANGE events. This fixes the redundant reconnection of all IPoIB mcasts.
  • Added support for VM migration. When a VM is migrated from one host to another it does not send a new ARP to hosts it already knew when it was sitting on the first host. In order to prevent communication interruption to such hosts, the driver will initiate an ARP to learn them again.
  • Added support for the part_man tool. It can create only one additional IPoIB interface per port GUID. This feature can be utilized to use different IPoIB interfaces for SMB and Hyper-V. The virtual ports configuration is removed during uninstallation.
  • The following tools were added to the setup package:
    • ibv_asyncwatch.exe
    • ibv_atomic_bw.exe
    • ibv_atomic_lat.exe
    • ibv_devinfo.exe
    • ibv_rc_pingpong.exe
    • ibv_rdma_bw.exe
    • ibv_rdma_lat.exe
    • ibaddr.exe
    • ibcacheedit.exe
    • iblinkinfo.exe
    • ibqueryerrors.exe
    • ibsysstat.exe
    • saquery.exe
    • smpdump.exe

Version:4.2 (6 Nov 2012)
Enhancements

Upgrade Requirement:
Recommended - HP recommends users update to this version at their earliest convenience.

It is recommended to make sure that the inbox Mellanox driver is not in use, prior to installing WinOF v4.2 on a Windows 2012 machine. This is done by removing any Mellanox adapters from "Device Manager". Please refer "installation notes" for details.


General Features:

  • Modified RSS cores and changed VMQ affinity on the fly.
  • Fixed restart issue when there are not enough MSI-X vectors for each machine core.
  • Added support for K-GROUPS processors (more than 64 processors support) to allow assignment of MSI-X affinity for multiple processor groups.
  • Set an adequate number of MTTs to map all physical memory.
  • Allocated firmware and ICM memory in chunks of non-paged memory instead of using contiguous physical memory.
  • Fixed RSS indirection table mapping building when there are less RX rings than RSS cores.
  • Fixed a bug, preventing standard work with BAR value more than 4GB.
  • Fixed memory leaks.
  • Fixed error flows causing a Bluescreen in driver startup\unload.
  • Fixed a Bluescreen occurrence upon shutdown due to leak in active resources.
  • Changed device names in device manager and their hardware IDs. The changes were made to distinguish between ConnectX-2 and ConnectX-3:
    • for ConnectX-2: MLX4\ConnectX-2_Eth and IBA\ConnectX-2_IPoIB
    • for ConnectX-3: MLX4\ConnectX-3_Eth and IBA\ConnectX-3_IPoIB
    • Set QoS settings only for ConnectX-3. Changing the hardware ID, forces the OS to install new device and re-build the registry keys.
  • Added an event log to indicate driver failure upon start if there are two HCA burned with the same GUID.
  • Added firmware upgrade support as part of the setup process. The setup burns the new firmware only on Mellanox cards. Firmware burning failure does not prevent the driver’s installation, therefore, it will show a warning. In this case, it is recommended to update the firmware manually.
  • Enabled configuration of TxRingNum registry key from the UI.
  • Improved the "Port Protocol" dialog.
  • Added Registry key documentation to the setup package.
Performance Enhancements:
  • Optimized code performance.
  • Increased send parallelism.
  • Memory used in receive flow is now allocated with the same affinity of the handling processor for faster access.
  • Statistics parameters are now directly read from hardware instead of being calculated by software.
  • Added support for BlueFlame. BlueFlame is now the default working mode for all packets that have a descriptor which fits into a BF register (currently 256 bytes). Use "BlueFlame" registry key to enable\disable this feature.
  • Added support for RSS functionality on available processors numbers. Used to be restricted to start at the first processor.
  • Changed RSS registry defaults to give better out of the box performance.
  • Added a performance UI to tune performance under various scenarios.
  • Added a tool to tune performance under various scenarios.
Ethernet Features:
  • Added support for multiple TX rings.
  • Added an option to verify that the number of multicast groups used is no higher than the firmware limits.
  • Improved performance in virtualization when using VMQ.
IPoIB Features:
  • Fixed a bug that prevented IBAL applications from working on machines with 2 cards.
  • Fixed a bug that caused packet drop on remote node when the first sent packet is not an ARP or a multicast packet.
  • Added support for multiple TX rings. The new driver advertises its TSS capability (using multiple TX rings). This feature will not be used when communicating with older version drivers (such as the inbox driver). This way IPv4 communication in a mixed environment that includes the inbox driver should work. IPv6 communication may be problematic in such an environment.
  • Eliminated some race conditions in IPoIB mcast handling.
  • Added mcast addresses according to the Windows mcast table in addition to mcast addresses from igmp\mld queries, in order to connect to such mcasts that are not reported by the queries.
  • Removed redundant LID_CHANGE events. This fixes the redundant reconnection of all IPoIB mcasts.
  • Added support for VM migration. When a VM is migrated from one host to another it does not send a new ARP to hosts it already knew when it was sitting on the first host. In order to prevent communication interruption to such hosts, the driver will initiate an ARP to learn them again.
  • Fixed IPoIB VMQ affinity update bugs.
  • Fixed IPoIB VMQ parent queue management race during reset.
  • Fixed a bug in passing DHCP packets from a Linux VM.
  • Fixed bug in RDMA statistics for NDK.
  • Removed affinity restriction to group 0 for NDK.
  • Added support for the part_man tool. It can create only one additional IPoIB interface per port GUID. This feature can be utilized to use different IPoIB interfaces for SMB and Hyper-V. The virtual ports configuration is removed during uninstallation.
  • The following tools were added to the setup package:
    • ibv_asyncwatch.exe
    • ibv_atomic_bw.exe
    • ibv_atomic_lat.exe
    • ibv_devinfo.exe
    • ibv_rc_pingpong.exe
    • ibv_rdma_bw.exe
    • ibv_rdma_lat.exe
    • ibaddr.exe
    • ibcacheedit.exe
    • iblinkinfo.exe
    • ibqueryerrors.exe
    • ibsysstat.exe
    • saquery.exe
    • smpdump.exe