libvirt hardcodes the "nic" parameter to qemu, but Vista needs a different "model" argument, as described here: http://kvm.qumranet.com/kvmwiki/Vista_Networking_Workaround?highlight=%28vista%29 When I modify the qemu_conf.c to add that model line, networking works in Vista. This is a problem at least as of libvirt-0.3.2-1.fc7, qemu 0.9.0-2.fc7, and kvm-35-2.fc7.
No, modifying the libvirt driver to hardcode it to ne2k is not an acceptable change because it breaks other OS for which rtl8139 *is* the best choice. ie all Linux guests. The correct solution is to fix the RTL8139 driver in QEMU/KVM. IIRC there were recently some fixes applied to upstream QEMU specifically for Vista support. I'll try and find them so we can fix the real problem rather than hacking around it.
Created attachment 207741 [details] Fix checksum for Vista Attaching the patch from upstream http://www.mail-archive.com/qemu-devel@nongnu.org/msg11365.html
Please re-test with either the i386 or x86_64 experimental KVM RPM builds I've done containing the patch from comment #2: x86_64 http://koji.fedoraproject.org/koji/taskinfo?taskID=176240 i386 http://koji.fedoraproject.org/koji/taskinfo?taskID=176241 If it works with Vista's RTL8139 driver, I'll apply to the real build in Fedora updates.
Yes, that fixes it on my x86_64 machine. :-) Thank you.
Submitted kvm-35-3.fc7 to F-7 updates-testing with the fix.
Also submitted qemu-0.9.0-3.fc7 to updates-testing, and both kvm & qemu to rawhide, and queued fixed for Xen.
kvm-35-3.fc7 has been pushed to the Fedora 7 testing repository. If problems still persist, please make note of it in this bug report.
qemu-0.9.0-3.fc7 has been pushed to the Fedora 7 testing repository. If problems still persist, please make note of it in this bug report.
kvm-35-3.fc7 has been pushed to the Fedora 7 stable repository. If problems still persist, please make note of it in this bug report.
qemu-0.9.0-3.fc7 has been pushed to the Fedora 7 stable repository. If problems still persist, please make note of it in this bug report.
Okay, it looks as though the problem actually still persists. I accidentally thought things worked, but they don't, it seems. I can't get a DHCP response inside a Vista VM, and with a static IP I can't ping my router (I get Destination Host Unreachable).
Oh, wait, I'm sorry. It was just an iptables problem--I forget every time I start the VM that I have to disable iptables because I'm using a physical bridge.