Hi folks, A number of people have been trying VFIO's VGA support, a few have even been successful. Resetting devices has been a problem and makes it very, very difficult to really use VGA assignment effectively. The code in the branches below attempts to address this. Discrete graphics devices are typically on their own bus, which we can reset so we theoretically get something pretty close to a power-on state for the GPU on each run (or after each guest reset). With this I'm able to get multiple runs on my HD7850 with no need to reset the host. Hopefully this will also cleanup after any host uses of the device so we can unload driver rather than blacklisting them. If you've been playing with VFIO and VGA, please give the branches below a shot and report successes and failures. Note that this new reset is only enable with the x-vga=on option, so should not do gratuitous bus resets for other devices. Thanks, Alex git://github.com/awilliam/linux-vfio.git vfio-vga-reset git://github.com/awilliam/qemu-vfio.git vfio-vga-reset PS - The above linux branch is v3.9 based which has a known kvm emulator bug. If you're on Intel and nothing happens, try: sudo modprobe -r kvm_intel sudo modprobe kvm_intel emulate_invalid_guest_state=0 This is required to execute the VGA BIOS on my HD7850. If things still don't work, apply the following patch: --- a/hw/misc/vfio.c +++ b/hw/misc/vfio.c @@ -40,7 +40,7 @@ #include "sysemu/kvm.h" #include "sysemu/sysemu.h" -/* #define DEBUG_VFIO */ +#define DEBUG_VFIO #ifdef DEBUG_VFIO #define DPRINTF(fmt, ...) \ do { fprintf(stderr, "vfio: " fmt, ## __VA_ARGS__); } while (0) And log the output (there will be lots). Also, AMD/ATI and Nvidia are the only devices expected to have a reasonable shot at working. I'm seeing reports of success on AMD/ATI HD 5xxx, 6xxx, and 7xxx, as well as Nvidia Geforce 7-series, 8-series, 4xx series, and 6xx series. Older cards from those vendors probably aren't very interesting to support (honestly I wouldn't care much about 7/8 series Nvidia or HD5xxx AMD, except I happen to have some for testing - use emulated VGA if you don't care about performance). Intel IGD graphics has numerous issues since it's partially incorporated into the chipset. Please don't bother to report IGD is broken unless you're interested in fixing it. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html