The VMware Knowledge Base provides support solutions, error messages and troubleshooting guides
Broadcom 5719/5720 NICs using tg3 driver become unresponsive and stop traffic in vSphere (2035701)
- When a system uses the
tg3driver with 1 Gb NICs, the logs report excessive NetQueue messages similar to:
2012-07-17T20:45:09.053Z cpu14:2091)<6>tg3 : vmnic3: RX NetQ allocated on 1
2012-07-17T20:45:09.053Z cpu14:2091)<6>tg3 : vmnic3: NetQ set RX Filter: 1 [00:50:56:7f:96:94 0]
2012-07-17T20:45:44.054Z cpu7:2091)<6>tg3 : vmnic3: NetQ remove RX filter: 1
2012-07-17T20:45:44.054Z cpu7:2091)<6>tg3 : vmnic3: Free NetQ RX Queue: 1
- Broadcom 5719 and 5720 NICs are present within the system.
- One or more NICs in the system stop functioning or responding, causing partial or full loss of network connectivity to virtual machines or any other type of VMkernel networking (vMotion, management, NFS, iSCSI, etc).
- The NICs impacted do not appear to be receiving CDP (Cisco Discovery Protocol) information from the upstream physical switch.
tg3driver released by Broadcom. This driver can be downloaded here. For more information on updating this driver, see Installing async drivers on ESXi 5.x (2005205).
For ESX/ESXi 4.x, this issue has been resolved in async tg3 driver version 3.129d.v40.1. This driver can be downloaded here. For more information on updating this driver in ESX/ESXi 4.x, please see Installing async drivers on ESXi/ESX 4.x (1032936).
To work around this issue, disable the NetQueue feature.
Note: NetQueue can only be disabled on third-party async versions of the
tg3driver. Inbox drivers are now included with ESXi 5.0 Update 2 and ESXi 5.1 and do not include the NetQueue feature. To see the various async and inbox driver versions for the Broadcom 5719/5720 adapter, refer to the VMware Hardware Compatibility Guide.
The performance enhancement from NetQueue does not benefit 1 Gb NICs. This feature spreads the network load across multiple CPUs, and a single CPU can handle approximately 3 Gb of network load.
Therefore, if there are no 10 Gb NICs on the host, you can disable NetQueue for the host using these commands:
- On ESXi 5.x, use this command:
# esxcli system settings kernel set -s netNetqueueEnabled -v FALSE
- On ESXi/ESX 4.x, use this command to verify the existing settings on the
# esxcfg-module -q | grep -E "^tg"
# esxcfg-advcfg -j netNetqueueEnabled
netNetqueueEnabled = TRUE
If there are 10 Gb NICs on the host in addition to the
tg3NICs, then only disable NetQueue for the
To disable NetQueue on ESXi/ESX for the
tg3driver, run this command:
# esxcfg-module -s force_netq=0,0,0,0 tg3
To disable NetQueue for the host, run this command:
esxcfg-advcfg -k FALSE netNetqueueEnabled
To enable NetQueue for the host, run this command:
esxcfg-advcfg -k TRUE netNetqueueEnabled
Note: The number of zeroes (
0) in the
force_netqparameter array must be the same as the number of
tg3devices on your system. For example, the preceding command applies if you have 4
tg3NICs, which can be verified using the
To revert the change or to enable NetQueue for the
tg3driver, run this command:
# esxcfg-module -s force_netq=1,1,1,1 tg3
Alternatively, you can remove the option for the driver using this command:
# esxcfg-module -s "" tg3
tg3driver using these commands:
- To unload the driver:
# vmkload_mod -u tg3
- To reload the driver:
# vmkload_mod tg3
To check if the setting is configured:
- View the contents of the
esx.conffile by running this command:
# cat /etc/vmware/esx.conf
- At the end of this file, ensure that you see an entry similar to:
/vmkernel/module/tg3/options = "force_netq=0,0,0,0"
To verify the current NetQueue status after it is disabled, run this command:
# esxcli system settings kernel list | grep -i netqueue
netNetqueueEnabled Bool Enable/Disable NetQueue support. FALSE FALSE TRUE
Where the keys are:
Bool Column = FALSE
Enable Column = FALSE
disable Column = TRUE
You can also use the vSphere Client to make the configuration change:
- Click the host in vCenter Server.
- Click Configuration.
- Under Software, click Advanced Settings.
- Expand VMkernel in the list and click Boot.
- Scroll down to the setting named
VMkernel.Boot.netNetqueueEnabledand deselect it to disable.
- Reboot the host.
Request a Product Feature
To request a new product feature or to provide feedback on a VMware product, please visit the Request a Product Feature page.