Take care if using an older Broadcom tg3 driver + TSO enabled at your ESXi host

If the following conditions are true for ESXi hosts in your environment, please take care of VMware KB 2072515. There is a known issue, which may lead to silent data corruption:

  • ESXi host is running version 3.5 or later
  • the system is configured with more than 4 GB RAM
  • TCP Segmentation Offload (TSO) is enabled on the adapter
  • tg3 driver version is less then v3.135b

How to check the version of the tg3 driver:

Open an SSH connection to your ESXi host and run the following command:

vmkload_mod -s tg3 | grep Version

tg3version

How to check if TSO is enabled:

Open an SSH connection to your ESXi host and run the following command:

esxcli system settings advanced list -o /Net/UseHwTSO

TSOenabled

If “Int Value” is 1, than TSO is enabled…

How to update the Broadcom tg3 driver using VMware Update Manager:

  • Download the tg3 driver offline bundle:

ESXi 5.5: 3.135b.v551

ESXi 5.0/5.1: 3.135b.v50.1

ESXi 3.5/4.x: there is no fix available at the moment – as a workaround you can only disable TSO!

  • Extract the .zip file – you will find another .zip file in it, named “tg3-…-offline_bundle-…zip”.
  • connect to your vCenter and open “Home” – “Update Manager”
  • change to the “Patch Repository” tab
  • click “Import Patches”
  • select the offline-bundle .zip file identified before and click “Next”
  • the tg3 driver will be added to the repository – click “Finish” to confirm

You can find the drivers in the Update Manager Repository displayed as: “tg3 driver for ESX”

tg3_install01

Now you have to create a Host Extension Baseline to install the patch package on the ESXi hosts:

  • change to the “Baselines and Groups” tab
  • click “Create”
  • enter a name for the new baseline and select “Host Extension” as baseline type:

tg3_install1

after clicking “next” select the defined “tg3 driver for ESX” patch and add the extension. Confirm with “next”:

tg3_install2

  • review your selection and “Finish”

You have successfully created the Host Extension Baseline.

Now change to “Host and Clusters” and select a dedicated host or a whole cluster to attach the Extension Baseline. Select the “Update Manager” Tab and click “Attach”.  Select the Baseline you have defined before:

attach_baseline

You can now place the ESXi host in maintenance mode to update the driver (Remediate)

How to update the Broadcom tg3 driver via comandline:

  • download the tg3 driver offline bundle:

ESXi 5.5: 3.135b.v551

ESXi 5.0/5.1: 3.135b.v50.1

ESXi 3.5/4.x: there is no fix available at the moment – as a workaround you can only disable TSO!

  • extract the .zip file – you will find another .zip file in it, named “tg3-…-offline_bundle-…zip”.
  • open an SSH connection to your ESXi host
  • upload the offline_bundle.zip file identified before to a datastore
  • place the ESXi host in maintenance mode:

esxcli system maintenancemode set –e true

  • install the driver using the following command:

esxcli software vib install –d /vmfs/volume/…datastore…/offline_bundle.zip

Note: please replace “…datastore…” with the name of your datastore and “offline_bundle.zip” with the correct name of the .zip file!

  • reboot the host and check if the tg3 driver has the version as expected

Leave a Comment

Your e-mail address will not be published. Required fields are marked *