NVIDIA WinOF-2 Documentation v24.4
NVIDIA WinOF-2 Documentation v24.4

Release Notes Change Log History



Rev 24.1.50000 (DRV 24.1.26317)


As of v24.1, all WinOF-2 drivers are installed with PnpLockdown set to 1. When PnpLockDown directive is set to 1, PnP prevents applications from directly modifying the driver files in System folders.

For additional information see https://learn.microsoft.com/en-us/windows-hardware/drivers/install/inf-version-section.

Relaxed Ordering through Mkey

Added the registry key RdmaRelaxedOrderingWrite to enable Relaxed Ordering on the RDMA flows.

For further information see RDMA Registry Keys.

Firmware Pages Limiter

Added support for firmware pages limiter method by enabling the EnableFwVfPageLimit registry key. The firmware limitation is recommended when the software limitation is not supported.

For further information see SR-IOV Options & Reported Driver Events.

Network DirectRoCE FrameSize

Added support for the *NetworkDirectRoCEFrameSize registry key used to configure the maximum size of a RoCE frame (MTU). This key replaces the RoceFrameSize key used until now.

For further information see Ethernet Registry Keys.

RoCE, RTT, Congestion Control

Added the ability to configure the DSCP value of RTT response packets when using Zero Touch RoCE RTT Congestion Control algorithm.

This capability is configured using the new registry key RttResponseDscp.

For further information see RoCE CC RTT Response DSCP.

Bug Fixes

See Bug Fixes.



Rev 23.10.50000 (DRV 23.10.26252)

Health Syndrome, DDR

Added a health syndrome indicating that a hardware failure has occurred.

The following is the health syndrome message: PCI data poisoned error has been received while fetching ICM (synd = 18).

Link Speed Detection and Report

Added support for detecting and reporting Link Speed of 800G, especially for OSFP cables in the PDDR log.

VM RoCEv2 Traffic Restriction

Limited VM RoCEv2 traffic to a specific IPv6 source address. The feature can be controlled via mlx5cmd using the new subcommand "-RoceRestrict".

Additionally, the following new counters were added for the dropped packets by this feature in the "Mellanox WinOF-2 VF Port Traffic" counters:

  • RoCE Restrict Packets Discarded

  • RoCE Restrict Bytes Discarded

For further information, see RoCE Restrict Configuration Utility and Mellanox WinOF-2 VF Port Traffic.


Added new RDMA VF diagnostic counters. These counters are disabled by default, to enable them use the EnableVFRdmaCounters key.

For further information, see Mellanox WinOF-2 VF Diagnostics.

NicHealthMonitor Utility

Added a new utility to estimate the driver and the firmware health by analyzing diagnostic counters and checking the event log for events logged by the driver.

For further information see NicHealthMonitor Utility.

Bug Fixes

See Bug Fixes.



Rev 23.7.50000 (DRV 23.7.26138)

Installation Package

Windows Server 2012 R2 will no longer be supported after WinOF-2 v23.7.50000.

Mlx5Cmd: NIC Health Monitor

The NIC Health Monitor is an external tool used to check and monitor the health of the NIC by analyzing the firmware and the diagnostic counters previously collected by the user.

For further information, see NIC Health Monitor.

Mlx5Cmd: AutoLogger

The AutoLogger is a debuggability capability implemented as part of Mlx5Cmd, that automatically collects logs until it detects a trigger defined by the user.

For further information, see AutoLogger.


Added new "Mellanox WinOF-2 Transmit Datapath Counters".

For further information, see Adapter Cards Counters.

Registry Keys

Updated the default values of the following registry keys:

  • *PriorityVLANTag

  • DumpMeNowDumpMask

  • MaxCallsToNdisIndicate

  • RelaxedOrderingWrite

  • TxIntModeration

For further information, see Configuring the Driver Registry Keys.

Bug Fixes

See Bug Fixes.

Rev 23.4.50020 (DRV 23.4.26054)

Multi Prio Sent Queue

Added a "MultiPrioSq" registry key to enable and disable the MultiPrioSq feature.

The "MultiPrioSq" controls the SL-Diff feature in which the firmware modifies the priority (SL - Service Level) of the HW send-queue to match the one of the sent packet (QoS).

For further information, refer to Multi Prio Send Queue.


Added two new error counters (Generated Packets dropped due to steering failure & Handled Packets dropped due to steering failure) to "Mellanox WinOF-2 Diagnostics Ext 1“ and "Mellanox WinOF-2 VF Diagnostics“ counter sets.

For further information, refer to Adapter Cards Counters.

NVIDIA BlueField-3 DPU

Added support for NVIDIA BlueField-3 DPU devices.


The RShimCmd Tool for supports 2 additional capabilities:

  • Boot Mode: Sets the next boot mode in DPU.

  • Timeout: Sets the value of timeout in –PushImage command.

Additionally, updated the Print of the Driver's and DPU's Variables when the verbosity is 1.

For further information, refer to RShim Drivers and Usage.

Bug Fixes

See Bug Fixes.

Rev 3.20.50010 (DRV 3.20.25915)

DevxFsRules DPDK

Enables the creation of flow rules with patterns with the exact match on both the destination and the source ports for UDP and TCP.

This new functionality is available via the new bit added to the Regkey DevxFsRules: bit 19 - MLX5_DEVX_FS_RULE_DST_PORTS.

Note: Both the destination and source ports must be both specified.


Added support for callback of type KbCallbackTriageDumpData to collect mst dump as part of live dump, and in case of bugcheck.

Note: This new capability is supported in Windows Client 10 version 1903 and Windows Server 2022 and above.


RSHIM host driver alignment for all the drivers (Windows/Linux/Arm).

For further information, see RShim Drivers and Usage.

Rev 3.10.51000 (DRV 3.10.25798)


Updated the MFT and firmware versions. For the updated version see Supported Network Adapter Cards and MFT Tools.

Rev 3.10.50000 (DRV 3.10.25798)

Adapter Cards

ConnectX-4 adapter card will no longer be supported as of WinOF-2 v3.10.

Installation Package

As of WinOF-2 v3.10, Windows Server 2012 R2 and Windows 8.1 Client will have a separate installation package from other supported OS.


Added support for NDK 2.1 (NDIS 6.85) AcceptEx and CompleteConnectEx.

BlueField UEFI System Boot Customizations during Installation

Bluefield's UEFI system boot options and more can be customized during the BFB Installation through the use of configuration parameters in the bf.cfg file. For further information on the bf.cfg file, refer to the BlueField Documentation.

For further information, see sections "BlueField UEFI System Boot Customizations during Installation".

Hibernation: ConnectX-6 Dx Active Cooled Cards

Added support for hibernation for ConnectX-6 Dx active cooled card in Windows workstations.


Added new performance counters: RDMA Connection Errors & CM DREQ.

For further information see, Adapter Cards Counters.


Added new counters to query ICMC counters.

For further information see, Mellanox WinOF-2 ICMC Diag Counters Ext1.

ZTT Register

Added support for setting a ZTT operation flag using a dynamic registry key.

Note: Before sending the get/set request for the ZTT registry [mlx5cmd], make sure ZTT is supported by the firmware.

For further information on the registry key, see "EnableZtt" in section Performance Registry Keys.

Bug Fixes

See Bug Fixes

Rev 3.0.50000 (DRV 3.0. 25668 )


Added a new mode to FwWaWqeTooSmallMode.

In this mode the firmware will not generate a WQE completion and will discard the arrived packet (Discard Wqe No Cqe) when VF WQE is too small .

By exposing the WqeTooSmall counter in the VM, the new mode enables the counter to count the number of times this action is successfully performed by the firmware.

NVIDIA BlueField-2 NIC Mode

The driver now supports NVIDIA BlueField-2 devices over IPoB running in NIC mode. In this mode, the DPU behaves exactly like an adapter card from the perspective of the external host.

For further information, see section "NVIDIA BlueField-2 DPU NIC Operation Mode" in the NVIDIA BlueField-2 Firmware Release Notes.

Port Traffic Counters

Added new counters to "Mellanox WinOF-2 VF Port Traffic".

For further information see section Adapter Cards Counters.

Diagnostic Counters

Added a new counter "Packets Received dropped due to lack of receive WQEs" to the "Mellanox WinOF-2 VF Diagnostics" counters set.

For further information see section Adapter Cards Counters.


As of WinOF-2 v3.0, the DOCA module will be published on a separate package.

DOCA comm channel and socket relay applications were moved to the new DOCA, thus they are removed from the WinOF-2 package.

Note: A DOCA developer should install the DOCA SDK package and not the DevX SDK package.

For more information please see the DOCA documentation.

Bug Fixes

See Bug Fixes.

Rev 2.90.50010 (DRV 2.90.25506)

Adapter Cards

Added support for NVIDIA ConnectX-7 adapter cards.

NVIDIA BlueField-2 NIC Mode

The driver now supports NVIDIA BlueField-2 devices running in NIC mode. In this mode, the DPU behaves exactly like an adapter card from the perspective of the external host.

For further information, see section "NVIDIA BlueField-2 DPU NIC Operation Mode" in the NVIDIA BlueField-2 Firmware Release Notes.

DOCA Socket Relay

Added support for an AF_UNIX connection between applications that run on the Windows host and services that run inside the the DPU.

For further information, see DOCA Socket Relay.

DOCA Communication Channel API

DOCA communication channel API in NVIDIA BlueField-2 SmartNIC adapter cards is now at GA level.

For further information, see DOCA Communication Channel API.


Added new interfaces for DevX library to set:

  • the promiscuous mode with the two modes: ALL, MC

  • MTU (limited to Host case, and port MTU >= 1522)

For further information, see Offload Capabilities for Windows DPDK.

NVIDIA BlueField-2 DevX

Added support for flex parser to the DevX steering rule.

Enhanced Connection Establishment

Enhanced Connection Establishment (ECE) is a new negotiation scheme introduced in IBTA v1.4 to exchange extra information about nodes capabilities and later negotiate them at the connection establishment phase. ECE is intended for RDMA connection, i.e., it works in ND and NDK connections.

For further information, see Enhanced Connection Establishment.

CM Packets

This new capability provides the option of ignoring RoCE connections that have differences in the source IP address. Now the user can decide whether or not to allow differences between the IB header source IP and the private data source IP.

To activate this option, the 'EnableCmAntiSpoofing' key must be set to 1 (default value is 0).

For further information, see "RDMA Registry Keys" in section Configuring the Driver Registry Keys.

DriverVersion Utility

Changed the output of mlx5cmd -driverVersion command.

Instead of presenting the OS name, now the tool will present the OS build number + Server\Client information.


Enabled multiple Rivermax applications to listen on the same stream.

Bug Fixes

See Bug Fixes

Rev 2.80.50000 (DRV 2.80.25134)

Operating Systems

Removed support for Windows Server 2012.

DOCA Communication Channel API

[Alpha Level] Added support for DOCA communication channel API in NVIDIA BlueField-2 SmartNIC adapter cards.

DOCA Communication Channel API allows developers to write client applications running on Windows native hosts or Windows Virtual Machines to exchange messages with service applications running on BlueField-2 DPU.

For further information see DOCA Communication Channel API.

GPU Memory Registration

Added support for large GPU memory registration through ibv_reg_mr() and ibv_reg_mr_iova2().

DPU Time Service

Added support for "PTP like" for BlueField-2 devices when using the REAL_TIME timestamping ability.

For further information, see DevX Utility.

Hardware QoS Offload

Added Hardware QoS Offload support to allow egress bandwidth management entirely in the hardware.

For further information, see Hardware QoS Offload.

Reduced RoCE Latency for SMBDirect using Two Queues: One for FRWR and the other for Send

Added a new configuration value ('NdkFmrDedicatedQp') to control whether or not a separated QP is used for NDK fast-register operations.

The dedicated QP will improve latency on systems that phase latency issues.

Warning: The feature is useful only for SMBDirect and can be harmful for other applications using NDK.

Note: This capability is supported in ConnectX-4 and ConnectX-4-Lx adapter cards when in Ethernet (RoCE) mode.

Note: This value is OFF by default.

For further information, see Configuring the Driver Registry Keys.

Asymmetric Number of VFs per PF

This new capability allows the user to set an asymmetric Number of VFs per PF using IOCTL. When using IOCTL to open a second PF on the same port, the new PF will be opened with '0' VFs. The number of VFs can be modified by using the mlxconfig tool, as long as the total number of VFs (on all PFs together) will not exceed the maximum number of VFs allowed.

GPUDirect for Windows

GPUDirect support in Windows is now at GA level.

For further information, see GPUDirect.

Bug Fixes

See Bug Fixes History

Rev 2.70.53000 (DRV 2.70. 24739 )

Bug Fixes

See Bug Fixes History

Rev 2.70.51000 (DRV 2.70.24728)

Bug Fixes

See Bug Fixes History

Rev 2.70.50000 (DRV 2.70. 24708 )

GPUDirect for Windows

[Beta] Added GPUDirect support in Windows to allow the NIC direct access to the GPU memory.

For further information, see GPUDirect.

Operating System

Added support for Windows Server 2022 Operating System.

ND, MlxNdPerf

Added a new performance benchmark tool called MlxNdPerf that replaces all old ND performance tools (e.g. nd_send_bw...).

For further information see MlxNdPerf Utility.

Real Time PTP

Added support for fetching the real_time value from the init_segment.

VXLAN Offloading

VXLAN offloading is now supported on multiple ports. Port configuration can be done through the use of "Mlx5Cmd -Vxlan" command and you can configure up to 4 ports for offloading.

For further information see VXLAN Offloading Configuration Utility.

Vport, Promiscuous mode, DPDK

Added support for promiscuous mode enablement on a Vport when using DPDK.

Note: This capability is support in PF only.

PDDR Cable Information

Added support for cable information in ConnectX-6 / ConnectX-6 Dx / ConnectX-6 Lx and Bluefield-2 adapter cards.

DSFP Connector

Added support for DSFP connector.

Bug Fixes

See Bug Fixes History

Rev 2.60.51000 (DRV 2.60.23957)

Bug Fixes

See Bug Fixes History

Rev 2.60.50000 (DRV 2.60.23957)

Adapter Cards

Added support for NVIDIA® BlueField SmartNIC at GA level.

Hardware vPort Context

Added the option to dump hardware vPort context using mlx5cmd.

Configuration Validator

This tool validates the configuration of registry keys provided in the configuration file.

For further information see Configuration Validator

Link FEC Configuration Utility

The Link FEC Configuration utility provides the ability to query supported link FEC modes by the adapter for the current link speed and for all supported link speeds.

For further information see Link FEC Configuration Utility

Packet Pacing Capabilities

This tools query allocated Packet Pacing objects.

For further information see Packet Pacing Capabilities

DevX Registry Keys

Added new registry keys that configure the DevX feature.

For further information see DevX Registry Keys

NDIS Poll Mode

Windows introduced a new poll mode feature starting NDIS 6.85 onwards. The poll API handles Datapath processing for both TX and/or RX side. When the feature is enabled, the driver registers with NDIS for call backs to poll RX and/or TX data.

For further information see NDIS Poll Mode.

smpquery Utility

smpquery allows querying of various information about the InfiniBand network.

For further information see smpquery Utility.


Added the following new counters:

  • Packets processed in NDIS poll mode

  • CQ Overrun

For further information see Mellanox WinOF-2 Receive Datapath & Mellanox WinOF-2 Transmit Datapath / Mellanox WinOF-2 PCI Device Diagnostic & Mellanox WinOF-2 Diagnostics Extension 1

Non-encapsulated Packets Steering

Non-encapsulated packet handling enables the user to facilitate the following main flows:

  • Matching by the inner header only (non-encapsulated packets dropped or indicated on default vPort in Promiscuous mode).

  • Matching encapsulated packets by inner header and non-encapsulated packets when registry GreEnableDualTunneling is configured.

  • Matching encapsulated packets by outer header and non-encapsulated packets.

For further information, see Non-encapsulated Packets Steering.

Driver Events

The following event logs severity status was changed from "Error" to "Warning" as they are not fatal errors:








Registry Keys

Added new registry keys to control moving to DPC mode once the maximum RX/TX packet processing limit is reached.

For further information, see Performance Registry Keys.


Removed "Mellanox WinOF-2 VF Internal Traffic Counters" from Virtual Functions.

Note: Mellanox WinOF-2 VF Internal Traffic Counters are relevant for Physical Functions ONLY.

PCIe Transfer Speed

Added PCIe transfer speed units for event MLX_PCIE_LINK. For further information, see event 0x0191 in Reported Driver Events.

IPoIB Teaming

Added support for IPoIB Teaming in failover mode.

Bug Fixes

See Bug Fixes History

© Copyright 2024, NVIDIA. Last updated on May 4, 2024.