[Fedora-xen] Re: PCI passthrough

Andy Burns fedora.lists at burns.me.uk
Sat Jun 28 17:10:24 UTC 2008

2008/6/28 Andy Burns <fedora.lists at burns.me.uk>:

> to change plan, will either F8 or CentOS5.2 domU's support pci
> passthrough, on top of either F8 or CentOS5.2 dom0?

I've kept F8 as dom0 and now using CentOS5.2 as domU

I've added pciback.hide=(08.01.0) to grub.conf for dom0

but it seems that pciback options are not understood at boot time (due
to it being a module?)

I'm aware I may be able to handle preventing dom0 handling the device
better in the long term with /etc/modprobe.conf, but for now I'm
running a little script in dom0

rmmod saa7134
modprobe pciback
echo -n $SLOT > /sys/bus/pci/drivers/pciback/new_slot
echo -n $SLOT > /sys/bus/pci/drivers/pciback/bind

I've created a new domU using the centosplus kernel to get extra V4L
drivers with the following /etc/xen/ style config file

memory = 1024
name = "mythbe"
vif = [ 'mac=00:16:3E:76:E8:92, bridge=eth0' ]
disk = [ 'phy:/dev/vgr1/lvmythroot,xvda,w' ]
pci = ['08:01.0']
bootloader = "/usr/bin/pygrub"
vcpus = 1
on_reboot = 'restart'
on_crash = 'restart'

The domU starts OK, and the pci device is present

# lspci -v
00:00.0 Multimedia controller: Philips Semiconductors SAA7130 Video
Broadcast Decoder (rev 01)
        Subsystem: Compro Technology, Inc. Videomate DVB-T200
        Flags: bus master, medium devsel, latency 64, IRQ 17
        Memory at febffc00 (32-bit, non-prefetchable) [size=1K]
        Capabilities: [40] Power Management version 1

I assume it is normal that the bus/slot/function numbers are not the
same in domU as in dom0?

I can load the driver for the card in the domU

# lsmod | grep saa
saa7134               159017  0
video_buf              59717  1 saa7134
compat_ioctl32         41793  1 saa7134
ir_kbd_i2c             42961  1 saa7134
i2c_core               56129  2 saa7134,ir_kbd_i2c
ir_common              63173  2 saa7134,ir_kbd_i2c
videodev               58049  1 saa7134
v4l1_compat            44613  2 saa7134,videodev
v4l2_common            57153  3 saa7134,compat_ioctl32,videodev

However, I am seeing an error in dmesg of domU

# dmesg | grep saa
saa7130/34: v4l2 driver version 0.2.14 loaded
saa7130[0]: found at 0000:00:00.0, rev: 1, irq: 17, latency: 64, mmio:
saa7130[0]: subsystem: 185b:c901, board: Compro Videomate DVB-T200
saa7130[0]: can't ioremap() MMIO memory
saa7134: probe of 0000:00:00.0 failed with error -5

Any suggestions?

More information about the Fedora-xen mailing list