Port-xen archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

iommu hardware and vga pass through with nbsd 6 dom0



Hello mailinglist,

Recently, I've experimented with my new IOMMU AMD-Vi motherboard in order to pass through the primary VGA device to an HVM domu with Windows 7.

I have started small and installed Win7 in an domu using the standard cirrus logic graphics adapter. The consecutive step was to use IOMMU for VGA Pass Through.

I have put the two addtional lines from [0] into my config:
gfx_passthru=1
pci=[ '0000:01:00.0', '0000:01:00.1' ]
I've identified the vga adapter device numbers with lspci -v.

Now running xm create gives an error:
netbsd# xm create /home/xen/win7test
Using config file "/home/xen/win7test".
Error: pci: failed to locate device and parse its resources - unsupported operand type(s) for +: 'NoneType' and 'str'

I have found an mailinglist post [1], but the solution seemed to be comitted in xentools41, which I tried to use. btw: xentools41 is not part of the precompiled bin packages in amd64 so I have installed it out of the pkgsrc 2012Q3-tree.

Putting the primary vga adapter on the pci.hide list during boot of nbsd dom0 didn't seem logical to me - so I have NOT tried this.

Is PCI passthrough supported apart from Xen 3.1 in netbsd 6?
Where ran I out of sync with the examples I've found by searching the net[2]? VT-d/AMD-Vi seems to be supported by the Xen 4.1.3 kernel.

Has someone made it, to pass through it's primary vga adaptor to an hvm domu?

Many thanks for any hint,
Marcus

[0] http://wiki.xen.org/wiki/Xen_VGA_Passthrough
[1] http://mail-index.netbsd.org/netbsd-users/2012/05/29/msg010731.html
[2] http://extreme.pcgameshardware.de/linux-und-sonstige-betriebssysteme/108786-xen-und-3d-30-print.html [of course a Linux example]

#xm dmesg
[...]
(XEN) AMD-Vi: IOMMU 0 Enabled.
(XEN) AMD-Vi: Enabling global vector map
(XEN) I/O virtualisation enabled
(XEN)  - Dom0 mode: Relaxed
[...]

netbsd# netbsd#cat /home/xen/win7test
kernel = "/usr/pkg/lib/xen/boot/hvmloader"
builder='hvm'
memory = 512
name = "Win7"
vcpus=2
xen_extended_power_mgmt=2
vif = [ 'type=ioemu, bridge=bridge0' ]
disk = [ 'phy:/dev/mapper/vg_vms-lv_win7xen,hda,w' , 'file:/var/tmp/Win7Pro_SB.iso,ioemu:hdc:cdrom,r' ]
device_model = '/usr/pkg/libexec/qemu-dm'
boot="dc"
sdl=0
vnc=1
serial='pty'
tsc_mode=0
localtime=1
usb=1
usbdevice='mouse'
keymap='de'
gfx_passthru=1
pci=[ '0000:01:00.0', '0000:01:00.1' ]

netbsd# uname -r
6.0.1

netbsd# pkg_info xentools41
Information for xentools41-4.1.3nb1:
[...]


Home | Main Index | Thread Index | Old Index