Workaround for All RabbitMQ running on VMware ESXi 8.0.2 Due to AVX-512 Bug
search cancel

Workaround for All RabbitMQ running on VMware ESXi 8.0.2 Due to AVX-512 Bug

book

Article ID: 390336

calendar_today

Updated On:

Products

VMware RabbitMQ VMware Tanzu RabbitMQ Pivotal RabbitMQ

Issue/Introduction

In ESXi 8.0.2, a bug in the AVX-512 instruction implementation causes crashes in RabbitMQ running on Erlang.

Environment

  • VMware ESXi 8.0.2

  • RabbitMQ running on Erlang

  • Virtual machines using CPUs that support AVX-512

 

Cause

The ESXi 8.0.2 implementation of the AVX-512 CPU instruction contains a bug that leads to an Erlang crash, thereby affecting RabbitMQ operations.

Resolution

1. Upgrade to ESXi 8.0.3, which resolves this issue along with several critical CVEs 

OR

2. For customers who cannot upgrade to ESXi 8.0.3, the following workaround can be applied to disable AVX-512 within the VM settings: 

Option 1: Modify the Kernel Command Line Parameter (Linux Guests Only)

  1. Add the following kernel command line parameter to the Linux guest OS:

    clearcpuid=304
  2. Reboot the VM for the change to take effect.

Option 2: Modify the VMX File Settings

  1. Edit the VM's .vmx configuration file and add the following parameters:

    featMask.vm.cpuid.AVX512F="Max:0"
    featMask.vm.cpuid.AVX512FP16="Max:0"
  2. Perform a full power cycle of the VM (shut down and restart) for the changes to take effect.

Applying either of these workarounds will prevent the guest OS from using the AVX-512 instruction set, mitigating the RabbitMQ crash issue while remaining on ESXi 8.0.2.