XEN: Giving guest complete control over NIC(s).

Gilboa Davara gilboad at gmail.com
Wed Jun 21 17:55:10 UTC 2006


On 6/21/06, Gilboa Davara <gilboad at gmail.com> wrote:
> On Tue, 2006-06-20 at 09:19 -0700, list user wrote:
> > Gilboa Davara wrote:
> > > Hello all,
> > >
> > > I'm installing Xen on a machine with multiple Gbps NICs that I'm using
> > > for driver development.
> > > Is there a way to give the guest complete control over a number of these
> > > NICs without having the host to route/bridge the traffic to the guest?
> >
> > Yes.
> >
> > 1) use "lspci" to determine which PCI slots the network cards occupy
> > 2) Hide them from dom0:  in dom0's grub.conf add "pciback.hide(xx:yy.z)"
> >     to the kernel boot parameters. e.g.
> >       "module /vmlinuz-2.6.16-xen ro root=/dev/vg0/fc4 \
> >       "pciback.hide=(aa:aa.a)(bb:bb.b)"
> >     Multiple slots may be hidden by adding additional parentheticized
> >     slot info.  *Don't use quotes* inside the parens.
> > 3) give the selected pci slots to the domU by adding a corresponding
> >     line to its config file: e.g into /etc/xen/vm1 add:
> >       "pci = ['aa:aa.a','bb:bb.b']"
> >      Multiple slots are given within the brackets, *separated by commas*,
> >      *quotes are required* within the brackets.
> >
> > As of 3.0.2 exported pci slots crash domUs when when trying to
> > automagically save/restore domUs using xendomains or the other tools.
> > They will require clean boots.
> >
> > Hope that helps.
> >
>
> Hello,
>
> I've added the pciback.hide option but it doesn't seem to work.
>
> [root at gilboa-home-srv gilboa]# cat /etc/grub.conf | grep xen0 -A2
> title Fedora Core (2.6.16-1.2133_FC5xen0)
>         root (hd0,0)
>         kernel /xen.gz-2.6.16-1.2133_FC5
>         module /vmlinuz-2.6.16-1.2133_FC5xen0 ro root=/dev/VolMD/LogFC5
> rhgb quiet pciback.hide=(01:09.0)
>         module /initrd-2.6.16-1.2133_FC5xen0.img
> title Fedora Core (2.6.16-1.2133_FC5xenU)
>         root (hd0,0)
>
> [root at gilboa-home-srv gilboa]# dmesg | grep pci
> Bootdata ok (command line is ro root=/dev/VolMD/LogFC5 rhgb quiet
> pciback.hide=(01:09.0))
> Kernel command line: ro root=/dev/VolMD/LogFC5 rhgb quiet
> pciback.hide=(01:09.0)
> Unknown boot option `pciback.hide=(01:09.0)': ignoring
> ACPI: bus type pci registered
> PCI: If a device doesn't work, try "pci=routeirq".  If it helps, post a
> report
> pcie_portdrv_probe->Dev[005d:10de] has invalid IRQ. Check vendor BIOS
> Allocate Port Service[0000:00:0b.0:pcie00]
> pcie_portdrv_probe->Dev[005d:10de] has invalid IRQ. Check vendor BIOS
> Allocate Port Service[0000:00:0c.0:pcie00]
> pcie_portdrv_probe->Dev[005d:10de] has invalid IRQ. Check vendor BIOS
> Allocate Port Service[0000:00:0d.0:pcie00]
> pcie_portdrv_probe->Dev[005d:10de] has invalid IRQ. Check vendor BIOS
> Allocate Port Service[0000:00:0e.0:pcie00]
>
> What am I missing?
>
>

OK. I think I found the problem. Missing configuration in 2133 kernel?

[gilboa at gilboa-home-srv ~]$ cat /boot/config-2.6.16-1.2133_FC5xen0  |
grep XEN | grep PCI
# CONFIG_XEN_PCIDEV_FRONTEND is not set
# CONFIG_XEN_PCIDEV_BACKEND is not set

Gilboa




More information about the fedora-list mailing list