Monthly Archives: August 2015

VMware virtual IDE to virtual SCSI hard disk conversion steps – Windows XP

I was trying to upgrade a Windows XP 32bit machine to Window 7, the hard part was the hard disk free space was nearly full and I can’t expand the drive as it is IDE. VMware virtual machine Edit settings is not allowing me to expand the hard disk, as the expansion setting shows greyed out. To expand the Windows XP hard disk, first the disk controller needs to be changed to SCSI.

VMare virtual machine IDE to SCSI conversion involve six parts,

  1. Adding a new SCSI disk to the virtual machine.
  2. Install iSCSI drivers on the virtual machine.
  3. Install VMware tools.
  4. Detach the IDE hard disk.
  5. Edit .VMDK file and change the controller type.
  6. Reattach the hard disk.

Imp: Take a backup of the virtual machine before proceeding.

To convert the IDE disk to SCSI:

  • Download the driver (LSI20320-R controller) from the LSI site

    (
    Windows XP SP3 virtual machines require the LSI Logic driver version 1.34.02.

    ESXi 4.1 hosts with Windows XP virtual machines need the LSI Logic driver version 1.34.02. The LSI Logic 1.34.02 driver filename is SYMMPI_SCSI_WinXP_x86_1.34.02.zip.

    ESX 4.0 hosts with Windows XP virtual machines need the LSI Logic driver version 1.28.03.

    The Windows Hardware Quality Labs (WHQL) 1.20.18.00 driver for Windows XP filename will be LSI20320-R_xp_50700_01034132IT_1201800_1005239.zip .

    The 1.28.03 driver download contains another zip file named symmpi_wXP_1201800.zip . Make a floppy image of the contents of symmpi_wXP_1201800.zip and insert this floppy disk when you are prompted for a driver disk during the Windows XP installation process. )

  • Power off the virtual machine.
  • From the Edit Settings menu for this virtual machine:
    • Click Add > Hard Disk > Create New Virtual Disk.
    • Change the Capacity
      to 1 GB and click Next.
    • Ensure that the Virtual Device Node is set to SCSI.
    • Complete the wizard and select the New SCSI Controller.
    • If the current type is not LSI Logic Parallel Select Change Type, change the type toLSI Logic Parallel.
    • Click OK.
    • Choose the same controller as in Step 4 as the adapter type. The SCSI ID should read SCSI 0:0.

  • Power on the virtual machine.
  • Follow the Found New Hardware wizard or in the Windows device manager inside the Windows guest and select the unknown device.
  • Right-click Update Driver and select the LSILogic SCSI controller driver downloaded earlier. This installs the drivers for the LSILogic SCSI controller inside the guest operating system.

  • Install latest VMware Tools and reboot.
  • Power off the virtual machine.
  • Locate the datastore path where the virtual machine resides.
    For example:
    # cd /vmfs/volumes/datastore_name/vm_name/
  • From the ESX Service Console, open the primary disk (.vmdk) using the vi editor. For more information, see Editing files on an ESX host using vi or nano (1020302).
  • Look for the line:

    ddb.adapterType = “ide”

  • To change the adapter type to LSI Logic change the line to:

    ddb.adapterType = “lsilogic”

    To change the adapter type to Bus Logic change the line to:

    ddb.adapterType = “buslogic”

    In some instances the entry appears as 

    ddb.adapterType = “legacyESX”.

    In this case change the line to:

    ddb.adapterType = “lsilogic”

  • Save the file.
  • From VMware Infrastructure/vSphere Client:
  1. Click Edit Settings for the virtual machine.
  2. Select the IDE virtual disk.
  3. Choose to Remove the Disk from the virtual machine.
  4. Click OK.Caution: Do not choose delete from disk.
  1. From the Edit Settings menu for this virtual machine:
    1. Click Add > Hard Disk > Use Existing Virtual Disk.
    2. Navigate to the location of the disk and select to add it into the virtual machine.
    3. Choose the same controller as in Step 9 as the adapter type. The SCSI ID should read SCSI 0:0.
  2. If a CDROM device exists in the virtual machine it may need to have the IDE channel adjusted from IDE 0:1 to IDE 0:0. If this option is greyed out, remove the CD-ROM from the virtual machine and add it back. This sets it to IDE 0:0.

Reference: VMware KB 1007035 & 1016192

 

Stop Error “CRITICAL_STRUCTURE_CORRUPTION

The guest OS stops running with Stop Error “CRITICAL_STRUCTURE_CORRUPTION”, on such condition we need to manually edit the virtual machine setting and change CPUID Mask as mentioned below. This problem is commonly seen while hosting newer versions of operating systems and is resolved in vSphere 5.0 Update 3

To manually create a CPUID mask for the affected virtual machines:

  • Power down the virtual machine.
  • Right-click the virtual machine and click Edit Settings.
  • Click the Options tab.
  • Select CPUID Mask under Advanced.
  • Click Advanced.
    • For Intel:
      • Under the Register column, locate the edx register under Level 80000001.
      • Paste this into the value field:—-:0—:—-:—-:—-:—-:—-:—-For example,

        cpuid.80000001.edx = —-:0—:—-:—-:—-:—-:—-:—-

    • For AMD:
      • Select the AMD Override tab.
      • Change cpuid.80000001.edx.amd = ———–H——————– to
        cpuid.80000001.edx.amd = —-0—————————
  • Click OK to close the virtual machine properties.