xen-devel
Re: [Xen-devel] Using VT-D to grant a Windows DomU access to a PCIExpres
Yes, so currently we are working on it.
Simply 1-to-1 map the framebuffer and the real vga bios does not work.
And Some standard vga I/O ports should be passed through and the cirrus
related stuff should be removed.
2007/12/7, Han, Weidong <weidong.han@xxxxxxxxx>:
Once more, graphics card is special, you need to do some tricky things to make it work.
Randy (Weidong)
We are trying to pass a PCI-E graphics card to Vista(HVM)
using the Neo-1-to-1 approach, but encountered the same
problem with you.
2007/12/7, David Stone <unclestoner@xxxxxxxxx>:
I've also been trying to get hardware-accelerate Direct3D to work in a (Windows) DomU via VT-D. I've got a PCI NIC passing through fine, but
not a graphics carrd. The points below describe where I'm at and what is happening. I'd appreciate any help anyone could offer, and also I have these specific questions:
Is PCI Express supported by VT-D and/or Xen's VT-D support? The
graphics card I'd like to pass through is PCI Express. If so, what PCI devices do I have to hide from Dom0 and pass to my Windows DomU? Do I need to do this for the "PCI Express Root Port" AND "PCI Express Port 1" PCI devices as well has the graphics card
itself? What device types have been tested (informally) with Xen's VT-D support? NICs I assume (plus NICs work fine for me anyway), anything else? Has all the testing been with a Linux HVM DomU, or also other
OS DomU's
- I have a machine with a VT-D IOMMU (Dell Optiplex 755). - I'm using various Xen builds from xen-unstable. - I've verified that (for certain builds) Xen's VT-D support is
working for me. I used a NIC PCI device (for a couple of reasons) as a test of VT-D/Xen, and it works...I can see the actual NIC in Windows 2003 DomU's Device Manager (not an emulated NIC nor a PV driver), and
it interacts with the network fine. Furthermore I can RDP into the Windows DomU - The next step was to try passing the PCI Express graphics card (an ATI) through to the Windows DomU. - In order to save my graphics card for my Windows DomU, I tell
various components (grub, Xen kernel, Linux kernel) to use the serial port instead of the graphics card. I also pciback.hide the PCI Express graphics card from Dom0 (just as I hid the PCI NIC). When booting up Xen/Dom0 the all I see on the monitor is the BIOS spash
screen, "Grub Loading Stage2...", and after that just a black screen with a blinking cursor in the upper-left corner. Everything else starting with the Grub selection screen is through the serial port.
- I start up my Windows DomU. For now the intent is to RDP into it and see if Windows sees the graphics card I passed through to it or not. (As stated above, this works fine if I don't try to pass through
the graphics card) But, after may 20 seconds (about the time it takes the Windows DomU to fully boot up normally), my physical machine hangs. The last thing is just an open-parenthesis on the serial console (where I have Xen directing it's output)...I presume it is the
beginning of a message from Xen that is related to the hang, because I don't see any such message normally.
lspci -nn 00:00.0 Host bridge [0600]: Intel Corporation DRAM Controller [8086:29b0] (rev 02)
00:01.0 PCI bridge [0604]: Intel Corporation PCI Express Root Port [8086:29b1] (rev 02) 00:03.0 Communication controller [0780]: Intel Corporation MEI Controller [8086:29b4] (rev 02) 00:03.2 IDE interface [0101]: Intel Corporation PT IDER Controller
[8086:29b6] (rev 02) 00:03.3 Serial controller [0700]: Intel Corporation Serial KT Controller [8086:29b7] (rev 02) 00:1a.0 USB Controller [0c03]: Intel Corporation USB UHCI Controller #4 [8086:2937] (rev 02)
00:1a.1 USB Controller [0c03]: Intel Corporation USB UHCI Controller #5 [8086:2938] (rev 02) 00:1a.7 USB Controller [0c03]: Intel Corporation USB2 EHCI Controller #2 [8086:293c] (rev 02) 00:1b.0 Audio device [0403]: Intel Corporation HD Audio Controller
[8086:293e] (rev 02) 00:1c.0 PCI bridge [0604]: Intel Corporation PCI Express Port 1 [8086:2940] (rev 02) 00:1d.0 USB Controller [0c03]: Intel Corporation USB UHCI Controller #1 [8086:2934] (rev 02) 00:
1d.1 USB Controller [0c03]: Intel Corporation USB UHCI Controller #2 [8086:2935] (rev 02) 00:1d.2 USB Controller [0c03]: Intel Corporation USB UHCI Controller #3 [8086:2936] (rev 02) 00:1d.7 USB Controller [0c03]: Intel Corporation USB2 EHCI Controller
#1 [8086:293a] (rev 02) 00:1e.0 PCI bridge [0604]: Intel Corporation 82801 PCI Bridge [8086:244e] (rev 92) 00:1f.0 ISA bridge [0601]: Intel Corporation LPC Interface Controller [8086:2914] (rev 02) 00:1f.2
SATA controller [0106]: Intel Corporation 6 port SATA AHCI Controller [8086:2922] (rev 02) 00:1f.3 SMBus [0c05]: Intel Corporation SMBus Controller [8086:2930] (rev 02) 01:00.0 VGA compatible controller [0300]: ATI Technologies Inc Unknown
device [1002:94c3] 03:00.0 Ethernet controller [0200]: Intel Corporation 82557/8/9 [Ethernet Pro 100] [8086:1229] (rev 05)
_______________________________________________ Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|