If you are building the qemu-dm, device models for xen, from http://xenbits.xensource.com/git-http/qemu-xen-unstable.git or the tools/ioemu-dir/ directory that is created when building http://xenbits.xensource.com/xen-unstable.hg (due to the wonders of the xen build system, they are the same thing). And you are doing this on Debian. And you would like PCI pass-through to work for HVM domains. Then make sure you have the libpci-dev package installed before building. Otherwise qemu-dm will be built without pass-through support. If you install libpci-dev after building then run make clean before rebuilding, to ensure that all files are rebuilt correctly - they won't be otherwise.
If you do this then the instructions in the Xen VT-d How-To should work.
Otherwise you will end up the following nasty message, which just cost me more time than I care to admit, in /var/log/xen/xend.log
ERROR (XendDomainInfo:581) Device model didn't tell the vslots for PCI device
On a semi-related note, if you wish to use VT-d PCI pass-through in
paravirtualised domains then pass iommu=pv as an argument to xen when
booting. Otherwise non-VT-d pass-through will be used for paravirtualised
domains. This is independent whether qemu-dm was compiled with
libpci-dev present or not.
Fri, 12 Dec 2008 16:58:52 +1100| Permalink