DetailPage-MSS-KB

Microsoft small business knowledge base

Article ID: 2517374 - Last Review: April 1, 2011 - Revision: 1.0

Hotfix Download Available
View and request hotfix downloads
 

On This Page

SYMPTOMS

Consider the following scenario:
  • You have an Intel CPU that supports the Advanced Vector Extensions (AVX) feature on a computer that is running Windows Server 2008 R2.

    Note
    Intel introduces support for the AVX feature in the Sandy Bridge processor family.
  • You install the Hyper-V server role on the computer.
  • You try to start a virtual machine after you create the virtual machine on the computer.
In this scenario, you cannot start the virtual machine. Additionally, you receive an error message that resembles one of the following error messages:
An error occurred while attempting to start the selected virtual machine(s).
<virtual machine name> could not initialize

<virtual machine name> could not initialize. (Virtual machine ID <virtual machine GUID>)
Also, an Event 3040 is logged in the Hyper-V-Worker node under Applications and Services Logs that contains an error message that resembles the following:
<virtual machine name> Failed to set/change partition property

CAUSE

This issue occurs because Windows Server 2008 R2 does not support the AVX feature.

RESOLUTION

Note This hotfix package disables the AVX feature on the virtual processors so that the virtual machines can start successfully. You must upgrade to Windows Server 2008 R2 SP1 to support the AVX feature so that the virtual machines can run as expected and to take advantage of the AVX instructions.

Hotfix information

A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing the problem described in this article. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next software update that contains this hotfix.

If the hotfix is available for download, there is a "Hotfix download available" section at the top of this Knowledge Base article. If this section does not appear, contact Microsoft Customer Service and Support to obtain the hotfix.

Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft website:
http://support.microsoft.com/contactus/?ws=support (http://support.microsoft.com/contactus/?ws=support)
Note The "Hotfix download available" form displays the languages for which the hotfix is available. If you do not see your language, it is because a hotfix is not available for that language.

Prerequisites

To apply this hotfix, the computer must be running Windows Server 2008 R2, and the Hyper-V server role must be installed.

Registry information

To use the hotfix in this package, you do not have to make any changes to the registry.

Restart requirement

You must restart the computer after you apply this hotfix.

Hotfix replacement information

This hotfix does not replace a previously released hotfix.

File information

The global version of this hotfix installs files that have the attributes that are listed in the following tables. The dates and the times for these files are listed in Coordinated Universal Time (UTC). The dates and the times for these files on your local computer are displayed in your local time together with your current daylight saving time (DST) bias. Additionally, the dates and the times may change when you perform certain operations on the files.
Windows Server 2008 R2 file information notes
  • The files that apply to a specific product, milestone (RTM, SPn), and service branch (LDR, GDR) can be identified by examining the file version numbers as shown in the following table:
    Collapse this tableExpand this table
    VersionProductMilestoneService branch
    6.1.760 0.16xxxWindows Server 2008 R2RTMGDR
    6.1.760 0.20xxxWindows Server 2008 R2RTMLDR
  • The MANIFEST files (.manifest) and the MUM files (.mum) that are installed for each environment are listed separately in the "Additional file information for Windows Server 2008 R2" section. MUM and MANIFEST files, and the associated security catalog (.cat) files, are extremely important to maintain the state of the updated components. The security catalog files, for which the attributes are not listed, are signed with a Microsoft digital signature.
For all supported x64-based versions of Windows Server 2008 R2
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Hvax64.exe6.1.7600.16774634,36805-Mar-201103:40x64
Hvboot.sys6.1.7600.16774117,63205-Mar-201106:26x64
Hvix64.exe6.1.7600.16774686,59205-Mar-201103:40x64
Hvax64.exe6.1.7600.20916634,36805-Mar-201103:41x64
Hvboot.sys6.1.7600.20916117,63205-Mar-201106:30x64
Hvix64.exe6.1.7600.20916686,59205-Mar-201103:41x64

WORKAROUND

Workaround for Windows Server 2008 R2

To work around this issue, you can force compatible CPU flags by setting a WMI property. This property is inaccessible from any user interface (UI). However, this property is documented on the Microsoft Software Developer Network (MSDN) website. You may have to perform this workaround for all virtual machines that are created. The change is persistent after the computer restarts. However, there are two known issues when you perform this workaround. Also, see the following sample Windows PowerShell script.
  • The workaround also sets compatibility for other CPU features such as Cache line size. Therefore, the virtual machines cannot use the full capabilities of the CPU.
  • The workaround is required to be run every time that a new virtual machine is created.
The following is a sample Windows PowerShell script.
                LimitProcFeatures.ps1:

$VirtualMachines = gwmi -namespace "root\virtualization" Msvm_ComputerSystem
$VMManagementService = Get-WmiObject -Namespace "root\virtualization" -Class Msvm_VirtualSystemManagementService

foreach ($vm in $VirtualMachines)
{
    $vmName = $vm.Name
    $vmElementName = $vm.ElementName
        if(!$vm.Caption.Contains("Hosting Computer System"))
        {
            Write-Output "Limiting $vmElementName CPU features"
            $VMProcessors = (gwmi -namespace "root\virtualization" Msvm_ProcessorSettingData) | where { $_.InstanceID -match "Microsoft:$vmName.*" } 
            $VMProcessors | foreach { $_.LimitProcessorFeatures = $true}  
            $retValue = $VMProcessors | foreach {$VMManagementService.ModifyVirtualSystemResources($vm.__PATH, $_.GetText([System.Management.TextFormat]::WmiDtd20) )}
            if(!$retValue.ReturnValue)
            {
                Write-Output "Success";
            }
        }
}

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

The third-party products that this article discusses are manufactured by companies that are independent of Microsoft. Microsoft makes no warranty, implied or otherwise, about the performance or reliability of these products.

MORE INFORMATION

For more information about the AVX feature, visit the following Intel website:
General information about the AVX feature (http://software.intel.com/en-us/avx/)
For more information about software update terminology, click the following article number to view the article in the Microsoft Knowledge Base:
824684  (http://support.microsoft.com/kb/824684/ ) Description of the standard terminology that is used to describe Microsoft software updates

Microsoft provides third-party contact information to help you find technical support. This contact information may change without notice. Microsoft does not guarantee the accuracy of this third-party contact information.

Additional file information


Additional file information for Windows Server 2008 R2

Additional files for all supported x64-based versions of Windows Server 2008 R2
Collapse this tableExpand this table
File nameAmd64_7592163787ae17c6846e4fb2b40f8f5a_31bf3856ad364e35_6.1.7600.20916_none_7de78a62dc4f2890.manifest
File versionNot applicable
File size710
Date (UTC)05-Mar-2011
Time (UTC)08:43
PlatformNot applicable
File nameAmd64_f19b40c4485ced443925c7cae3f5dd26_31bf3856ad364e35_6.1.7600.16774_none_1c5e1475a6ccebec.manifest
File versionNot applicable
File size710
Date (UTC)05-Mar-2011
Time (UTC)08:43
PlatformNot applicable
File nameAmd64_microsoft-hyper-v-drivers-hypervisor_31bf3856ad364e35_6.1.7600.16774_none_8c501c427f2f0db2.manifest
File versionNot applicable
File size4,163
Date (UTC)05-Mar-2011
Time (UTC)07:03
PlatformNot applicable
File nameAmd64_microsoft-hyper-v-drivers-hypervisor_31bf3856ad364e35_6.1.7600.20916_none_8d1c9b0f981a35ab.manifest
File versionNot applicable
File size4,163
Date (UTC)05-Mar-2011
Time (UTC)07:13
PlatformNot applicable
File nameUpdate.mum
File versionNot applicable
File size1,462
Date (UTC)05-Mar-2011
Time (UTC)08:43
PlatformNot applicable

APPLIES TO
  • Microsoft Hyper-V Server 2008 R2
  • Windows Server 2008 R2 Datacenter
  • Windows Server 2008 R2 Enterprise
  • Windows Server 2008 R2 Standard
Keywords: 
kbautohotfix kbqfe kbhotfixserver kbfix kbsurveynew kbexpertiseinter KB2517374
Share
Additional support options
Ask The Microsoft Small Business Support Community
Contact Microsoft Small Business Support
Find Microsoft Small Business Support Certified Partner
Find a Microsoft Store For In-Person Small Business Support