11Troubleshooting
11.2Windows guests
11.2.1 Windows bluescreens after changing VM configuration
Often, customers encounter Windows startup failures (the infamous “blue screen”) after performing configuration changes to a virtual machine which are not allowed for an already installed Windows operating system. Depending on the presence of several hardware features, the Windows installation program chooses special kernel and device driver versions and will fail to startup should these hardware features be removed.
Most importantly, never disable ACPI and the I/O APIC if they were enabled at installation time. Enabling them for a Windows VM which was installed without them does not cause any harm. However, Windows will not use these features in this case.
11.2.2Windows 0x101 bluescreens with SMP enabled (IPI timeout)
If a VM is configured to have more than one processor (symmetrical multiprocessing, SMP), some configurations of Windows guests crash with an 0x101 error message, indicating a timeout for
According to Microsoft, this is due to a race condition in Windows. A hotfix is available.1 If this does not help, please reduce the number of virtual processors to 1.
11.2.3 Windows 2000 installation failures
When installing Windows 2000 guests, you might run into one of the following issues:
•Installation reboots, usually during component registration.
•Installation fills the whole hard disk with empty log files.
•Installation complains about a failure installing msgina.dll.
These problems are all caused by a bug in the hard disk driver of Windows 2000. After issuing a hard disk request, there is a race condition in the Windows driver code which leads to corruption if the operation completes too fast, i.e. the hardware in- terrupt from the IDE controller arrives too soon. With physical hardware, there is a guaranteed delay in most systems so the problem is usually hidden there (however it should be possible to reproduce it on physical hardware as well). In a virtual environ- ment, it is possible for the operation to be done immediately (especially on very fast systems with multiple CPUs) and the interrupt is signaled sooner than on a physical system. The solution is to introduce an artificial delay before delivering such inter- rupts. This delay can be configured for a VM using the following command:
1See http://support.microsoft.com/kb/955076.
146