All of lore.kernel.org
 help / color / mirror / Atom feed
From: "dev001" <pgngw+dev001+xen-users@f-m.fm>
To: xen-devel@lists.xensource.com
Subject: how to PCI-passthrough 1 card to a DomU when another @ Dom0 uses the same driver?
Date: Tue, 01 Feb 2011 21:03:31 -0800	[thread overview]
Message-ID: <1296623011.3053.1418495679@webmail.messagingengine.com> (raw)

it was suggested (thx!) @ my OP
(http://lists.xensource.com/archives/html/xen-users/2011-02/msg00013.html)
might be more appropriate here ... hope that's the case (?)

my Dom0 host runs,

uname -a
        Linux test 2.6.34.8-7-xen #1 SMP 2011-01-20 21:58:39 +0100
        x86_64 x86_64 x86_64 GNU/Linux
lsb_release -d
        Description:    openSUSE 11.3 (x86_64)
rpm -qa | grep -i Xen-4
        xen-4.0.1_21326_02-0.3.1.x86_64

i've got 3 NICs,

lspci | grep -i eth
        02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd.
        RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 01)
        03:00.0 Ethernet controller: Marvell Technology Group Ltd.
        88E8053 PCI-E Gigabit Ethernet Controller (rev 20)
        04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd.
        RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 02)

where 04:00.0 is assigned as the internal-LAN/Bridge port, and 02:00.0 &
03:00.0 are PCIe cards that I intend to PCI-passthrough to a DomU guest.

so far, I've:

cat /boot/grub/menu.lst
        ...
    kernel /xen.gz ... iommu=verbose dom0_vcpus_pin=true sched=credit
    cpuidle=1 cpufreq=xen clocksource=acpi numa=on
    module /vmlinuz-xen ... elevator=cfq clocksource=xen mce=off
    nomodeset pciback.permissive
    pciback.hide=(0000:02:00.0)(0000:03:00.0)
    pci=resource_aligment=0000:02:00.0;0000:03:0.0
    module /initrd-xen
        ...

cat /etc/modprobe.d/99-local.conf
        options pciback hide=(0000:02:00.0)(0000:03:00.0)
        install sky2       /sbin/modprobe pciback ; /sbin/modprobe
        --first-time --ignore-install sky2
        install r8169      /sbin/modprobe pciback ; /sbin/modprobe
        --first-time --ignore-install r8169

cat /etc/init.d/boot.local
        modprobe pciback hide='(02:00.0)(03.00.0)'
        echo -n 0000:02:00.0 > sys/bus/pci/drivers/pciback/permissive
        echo -n 0000:03:00.0 > sys/bus/pci/drivers/pciback/permissive

@ Dom0 boot, i only see ONE card seized,

dmesg | egrep -i seiz
        [    2.081944] pciback 0000:03:00.0: seizing device

and, of course as a result, for a guest,

cat test.cfg
        ...
        extra = 'textmode=1 xencons=xvc0 elevator=noop iommu=soft'
        pci   = [ '02:00.0', '03:00.0']
        ...

xm create test.cfg
        Error: pci: PCI Backend and pci-stub don't own device
        0000:02:00.0


if i simply replace the 04:00.0 Realtek card with a non-r8619 driver
card, e.g.,

        04:00.0 Ethernet controller: Atheros Communications
        AR8121/AR8113/AR8114 Gigabit or Fast Ethernet (rev b0)

and repeat the experiment, then both cards are CORRECTLY seized,

dmesg | egrep -i seiz
        [    3.027654] pciback 0000:02:00.0: seizing device
        [    3.321515] pciback 0000:03:00.0: seizing device

and I can subsequently launch the DomU, with both cards successfully
passed through.

i.e., using two cards with the same driver type FAILS to allow one of
the cards to be seized.

i suspect this has to do with the driver not being unloadable at the
time of device seizure, as it's in use.

if that's the case -- how do i configure this so that the _same_ driver
can be used for _both_ the Dom0 card instance, and then appropriately
seized for the PCI-passthru target'd 2nd card?

or, is this another issue & there's addition/other config necessary?

             reply	other threads:[~2011-02-02  5:03 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-02-02  5:03 dev001 [this message]
2011-02-02 20:27 ` how to PCI-passthrough 1 card to a DomU when another @ Dom0 uses the same driver? Konrad Rzeszutek Wilk
2011-02-02 21:43   ` dev001
2011-02-02 22:26     ` dev001
2011-02-03 16:26     ` Konrad Rzeszutek Wilk
2011-02-03 17:12       ` dev001
2011-02-03 17:42         ` Konrad Rzeszutek Wilk

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1296623011.3053.1418495679@webmail.messagingengine.com \
    --to=pgngw+dev001+xen-users@f-m.fm \
    --cc=xen-devel@lists.xensource.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.