vMotion fails at 80% with a general system error
search cancel

vMotion fails at 80% with a general system error

book

Article ID: 310361

calendar_today

Updated On:

Products

VMware vCenter Server VMware vSphere ESXi

Issue/Introduction

Symptoms:
  • vMotion fails at 80%
  • If you put the host in maintenance mode, it fails and experiences a purple screen error.
  • In vCenter Server, an error window appears with a message similar to one of these:

    • A general system error occurred: Failed to write checkpoint data (offset 33558328, size 16384): Limit exceeded
    • A general system error occurred: Failed waiting for data. Error bad0007. Bad parameter.
    • A general system error occurred: failed to initiate VMotion dest (vim.fault.InvalidState).

  • The <CPDE></CPDE>vmware.log for the virtual machine being migrated has entries similar to:

    vmx| Migrate_SetFailure: Now in new log file.
    vmx| Migrate_SetFailure: Failed to write checkpoint data (offset 33558528, size 16384): Limit exceeded
    vmx| Msg_Post: Error
    vmx| [vob.vmotion.write.outofbounds] VMotion [c0a8644e:1243364928717250] failed due to out of bounds write: offset 33558528 or size 16384 is greater than expected
    vmx| [msg.checkpoint.migration.openfail] Failed to write checkpoint data (offset 33558528, size 16384): Limit exceeded.
    vmx| ----------------------------------------
    vmx| MigrateWrite: failed: Limit exceeded

  • The hostd.log for the source or destination host may contain entries similar to:

    [F6512B90 info 'vm:/vmfs/volumes/fff91bd3-41793f11/ITGVMS01-13/ITGVMS01-13.vmx'] Question info: VMotion [a210935:125476923788 2447] failed due to out of bounds write: offset 33562624 or size 16384 is greater than expected
    [F66C96D0 verbose 'vm:/vmfs/volumes/fff91bd3-41793f11/ITGVMS01-13/ITGVMS01-13.vmx'] Retrieved current VM state from found ry 5, 2
    [F66C96D0 verbose 'vm:/vmfs/volumes/fff91bd3-41793f11/ITGVMS01-13/ITGVMS01-13.vmx'] VMotionLastStatusCb: Failed with error 536870918: Failed waiting for data. Error bad0006. Limit exceeded.
    [F66C96D0 info 'VMotionDst (1254769237882447)'] ResolveCb: Failed with fault: (vmodl.fault.SystemError) { dynamicType = <unset>,
    faultCause = (vmodl.MethodFault) null,
    reason = "Failed waiting for data. Error bad0006. Limit exceeded.


Environment

VMware ESX Server 3.5.x
VMware VirtualCenter 2.5.x
VMware ESX 4.0.x
VMware vCenter Server 4.0.x

Resolution

This issue is resolved in ESX/ESXi 4.0 Update 1. You can download the latest version of ESX/ESXi 4 from the vSphere download page.

Prior to ESX/ESXi 4.0 Update 1, this issue may occur if Video RAM (VRAM) is greater than 30MB for a virtual machine.

Notes:

  • Using VMotion to migrate a virtual machine with VRAM greater than 30MB to an ESX/ESXi 4.0 Update 1 host might prevent you from migrating it back to a host that does not have this fix.
  • When using high resolution monitors, VMware View may change the virtual machine's VRAM to greater than 30 MB.

To work around this issue, if you cannot upgrade to ESX/ESXi 4.0 Update 1, ensure that the amount of VRAM assigned to the virtual machine is 30MB or less.

vCenter Server 4.0

To change the amount of VRAM assigned to a virtual machine running on an ESX host managed by vCenter Server 4.0:

  1. Power off the virtual machine.
  2. Right-click on the virtual machine and click Edit Settings.
  3. Click Hardware > Video card > Enter total video RAM.
  4. Set the value to 30MB or less.
  5. Save the changes.
  6. Power on the virtual machine.

vCenter Server 2.5

To change the amount of VRAM assigned to a virtual machine running on an ESX host managed by vCenter Server 2.5:

  1. Power off the virtual machine.
  2. Record the path to the virtual machine configuration file (extension .vmx) on the ESX host.
  3. Right-click on the virtual machine and click Edit Settings > Options > General Options > Virtual Machine Configuration File.
  4. Log in to the ESX host as root using an SSH client.
  5. Make a backup copy of the .vmx file.
  6. The VRAM size is listed in the .vmx file for the virtual machine with a tag of svga.vramSize . It displays the value in bytes.
  7. Edit the .vmx file and change the value for svga.vramSize to 30MB or less.

    Note: When set to 30MB, the entry reads svga.vramSize=31457280.

  8. Save the .vmx file.
  9. Remove the virtual machine from the Inventory in vCenter.
  10. Add the virtual machine to the Inventory in vCenter by browsing the datastore from vCenter to locate the .vmx file for the virtual machine, in the path noted at step 2 above.
  11. Right-click on the .vmx file and click Add to Inventory.
  12. Power on the virtual machine.