[libvirt-users] F14->F16 Upgrade Results in Win2003 Server Client BSOD 0x7f

Laine Stump laine at laine.org
Thu May 17 19:04:27 UTC 2012

On 05/09/2012 08:11 AM, Thomas J. Baker wrote:
> Hello,
> I upgraded my kvm server from Fedora 14 to Fedora 16 and the only casualty was a Windows 2003 Server client that will no longer boot with and produces a BSOD. I admittedly know very little about Windows and this VM has been around - real hardware -> Parallels on a Mac -> linux kvm but it was working fine under Fedora 14. The client does boot fine under safe mode but anything higher than that (even safe mode with networking) results in the BSOD. I've tried explicitly setting the network driver to rtl8139 in virt-manager which appears to be what it was under F14 but it didn't help. Neither did just removing the NIC under Device Manager and letting it get recognized again. 
> As you can guess given the description, this crusty old Win2003 server instance has some worth in that recreating it is very undesirable for all involved. I'd appreciate any tips on getting it working again.

(I apologize in advance for all the confusion caused by qemu hardware
machine type vs. Fedora release number :-/).

Was the KVM version of this guest perhaps created on a Fedora 13 server?
If so, it may have been using the QEMU machine type "fedora-13", which
was created during the lifecycle of Fedora 13 (in order to add support
for some bit of hardware that wasn't supported by qemu at F13 release).
That qemu machine type was deprecated, but still usable, in Fedora 14
(where qemu treated it equivalent to the "pc-0.13" machine type).

(In Fedora 15, the "fedora-13" machine type was inadvertently made into
a synonym for "pc-0.14" rather than "pc-0.13".)

In Fedora 16, the "fedora-13" machine type is still treated as a synonym
for "pc-0.14" by qemu, but libvirt automatically translates all
occurrences of "fedora-13" in a guest's configuration to "pc-0.14" so
that it doesn't rely on this qemu behavior. This is done because Fedora
17's qemu will completely remove support for the "fedora-13" machine type.

The result of all this confusion is that anyone upgrading from Fedora 15
to Fedora 16 will have their "fedora-13" machine type translated into
exactly the same machine type they've been effectively using anyway.
But, in the case of upgrading directly from F14 to F16, pre-upgrade the
guest will have been running inside a qemu "pc-0.13" machine type, and
after the upgrade it will be running inside a qemu "pc-0.14" machine type.

I really don't have any idea about the details in difference between
these two machine types or whether it's enough of a difference to cause
a BSOD, but on the off chance this could be the source of your problem,
you can try this:

Edit the configuration of your guest and look for a line like this:

    <type arch='x86_64' machine='pc-0.14'>hvm</type>

Change 'pc-0.14' to 'pc-0.13' and save the config, then try starting
your guest.

(If the machine type is already 'pc-0.13', then this isn't your problem).

If that doesn't help, possibly you could get better help if you included
your guest's domain config and the information from the BSOD.

More information about the libvirt-users mailing list