Unable to format or initialize a virtual machine's virtual disk
search cancel

Unable to format or initialize a virtual machine's virtual disk

book

Article ID: 307329

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

Symptoms:
  • You cannot format or initialize a virtual machine's virtual disk
  • This issue occurs on Xiotech Magnitude 3D 3000, and Magnitude 3D 4000 arrays
  • The guest operating system of a virtual machine is unable to initialize or format a virtual disk that is stored on a VMFS datastore that is formatted with a block size of 4MB or 8MB
  • When initializing the disk in Windows, you receive an error similar to:

    The operation was canceled due to an internal error.

  • A message similar to the following is found in /var/log/vmkernel :

    May 5 04:43:30 esxhost03 vmkernel: 0:19:08:53.235 cpu2:1094)VSCSIFs: 439: fd 4111 status Not supported

Additional symptoms may include, but may not be limited to, the following:

  • Windows virtual machines running on snapshots fail or stop responding with a blue screen error
  • The inability to create files (VMDKs) that are greater than 512GB in size
  • VMware Converter fails with NFC errors
  • Snapshot operations fail on ESX hosts that have been upgraded to vSphere 4.0

format-initialize-vm-hard-disk

Environment

VMware ESX 4.0.x
VMware ESX 4.1.x
VMware ESX Server 3.5.x

Resolution

To resolve this issue, you must provide additional parameters to the Qlogic driver responsible for handling the communication between the ESX host and the Xiotech array.
Note: All commands must be run as the root user on the ESX host service console.

Identifying the driver name

You must determine driver that is being used for the ESX host.
To determine the driver being used:
  1. Run the following command:

    esxcfg-module –q

  2. Identify the lines that begin with qla from the returned list.

    Using the name identified in step 2, replace instances of <driver> in the commands provided in this article. If the driver name does not end with .o (period and letter O, not a zero), add .o to the end of the driver name.

    Two examples of module names that you are likely to find are qla2300_707_vmw.o and qla2300_707.o .

Working around this issue

To apply the workaround:

  1. Run the following command:

    esxcfg-module –s “ql2xmaxsgs=32 ql2xmaxqdepth=255” <driver>

  2. Reboot the ESX host

Removing the workaround

If the workaround is no longer needed on a particular host, the workaround can be reversed to regain some possible performance benefits.
To remove the workaround:
  1. Run the following command:

    esxcfg-module –s “” <driver>

  2. Reboot the ESX host