xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* with Xen4 config -> (pci-passthrough-strict-check no), DomU init reports "Error: pci: PCI Backend and pci-stub don't own device"
@ 2010-01-29 22:10 0bo0
  2010-01-29 22:36 ` 0bo0
  2010-01-29 22:44 ` Konrad Rzeszutek Wilk
  0 siblings, 2 replies; 8+ messages in thread
From: 0bo0 @ 2010-01-29 22:10 UTC (permalink / raw)
  To: xen-devel; +Cc: horms, dexuan.cui

testing,

	uname -ri
		2.6.33-rc5-4-xen x86_64
	rpm -qa | grep -i Xen-4
		xen-4.0.0_20873_01-29.1.x86_64

	cat test.cfg
		name         = 'test'
		builder      = 'linux'
		bootloader   = '/usr/lib/xen/boot/domUloader.py'
		bootargs     = '--entry=xvda1:vmlinuz-xen,/boot/initrd-xen'
		disk         = [
'phy:/dev/VG0/boot,xvda,w','phy:/dev/VG0/swap,xvdb,w','phy:/dev/VG0/root,xvdc,w',]
		root         = '/dev/xvdc1'
		vfb          = ['']
	xm create -c ./test.cfg

boots OK.

but if (re)enabling pci passthrough,

	vi test.cfg
			...
		+	pci          = [ '04:07.0' ]
			...

	dmesg | grep "Command line"
		[    0.000000] Command line: ... guestdev=0000:04:07.0,0000:04:06.0
reassign_resources iommu=1 noirqdebug clocksource=xen mce=off

for a PCI card behind a shared bridge,

	lspci -vt | grep "\[04\]" -A1
	           +-14.4-[04]--+-06.0  Intel Corporation 82541PI Gigabit
Ethernet Controller
	           |            \-07.0  Silicon Image, Inc. SiI 3124 PCI-X
Serial ATA Controller

with,

	grep passthrough /etc/xen/xend-config.sxp
		(pci-passthrough-strict-check no)
	grep hide /etc/modprobe.d/99-local.conf
		options pciback hide=(0000:04:07.0)(0000:04:06.0)

and checking,

	lsmod | egrep -i "pciback|xen"
		pciback                54471  0
		xenbus_be               3474  4 netbk,blkbk,blktap,pciback
		xenblk                 26117  0
		cdrom                  42939  2 sr_mod,xenblk
		xennet                 37545  0

@ DomU init.

	xm create -c ./test.cfg

returns,

	Using config file "./test.cfg".
	Error: pci: PCI Backend and pci-stub don't own device 0000:04:07.0

that error looks to hail from recent changes to 'XendDomainInfo.py', cref:

	http://article.gmane.org/gmane.comp.emulators.xen.devel/76231

with strict-check disabled in /xend-config.sxp, shouldn't this be ok to do/use?

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: with Xen4 config -> (pci-passthrough-strict-check no), DomU init reports "Error: pci: PCI Backend and pci-stub don't own device"
  2010-01-29 22:10 with Xen4 config -> (pci-passthrough-strict-check no), DomU init reports "Error: pci: PCI Backend and pci-stub don't own device" 0bo0
@ 2010-01-29 22:36 ` 0bo0
  2010-01-29 22:44 ` Konrad Rzeszutek Wilk
  1 sibling, 0 replies; 8+ messages in thread
From: 0bo0 @ 2010-01-29 22:36 UTC (permalink / raw)
  To: xen-devel

checking @ source,

...
 # Test whether the device is owned by pciback or pci-stub.
        try:
            pci_device = PciDevice(new_dev)
        except Exception, e:
            raise VmError("pci: failed to locate device and "+
                    "parse its resources - "+str(e))
        if pci_device.driver!='pciback' and pci_device.driver!='pci-stub':
            raise VmError(("pci: PCI Backend and pci-stub don't own device %s")\
                            %pci_device.name)
...

verifying the device is being seized @ startup; looks not to be :-/

...
dmesg | egrep "4:06|4:07|pciback"
...
[    0.216794] PCI: 0000:04:07.0 has been reserved for guest domain.
[    0.216794] PCI: 0000:04:06.0 has been reserved for guest domain.
[    0.260161] pci 0000:04:06.0: reg 10: [mem 0xfbfe0000-0xfbffffff]
[    0.260171] pci 0000:04:06.0: reg 14: [mem 0xfbfc0000-0xfbfdffff]
[    0.260180] pci 0000:04:06.0: reg 18: [io  0xec00-0xec3f]
[    0.260214] pci 0000:04:06.0: reg 30: [mem 0xfbfa0000-0xfbfbffff pref]
[    0.260221] pci 0000:04:06.0: Disabling memory decoding and
releasing memory resources.
[    0.260262] pci 0000:04:06.0: PME# supported from D0 D3hot D3cold
[    0.260268] pci 0000:04:06.0: PME# disabled
[    0.260340] pci 0000:04:07.0: reg 10: [mem 0xfbf9fc00-0xfbf9fc7f 64bit]
[    0.260357] pci 0000:04:07.0: reg 18: [mem 0xfbf90000-0xfbf97fff 64bit]
[    0.260367] pci 0000:04:07.0: reg 20: [io  0xe880-0xe88f]
[    0.260385] pci 0000:04:07.0: reg 30: [mem 0xfbf00000-0xfbf7ffff pref]
[    0.260391] pci 0000:04:07.0: Disabling memory decoding and
releasing memory resources.
[    0.260434] pci 0000:04:07.0: supports D1 D2
[    0.273957] pci 0000:04:07.0: BAR 6: assigned [mem
0xf0100000-0xf017ffff pref]
[    0.273961] pci 0000:04:06.0: BAR 0: assigned [mem 0xfbf00000-0xfbf1ffff]
[    0.273972] pci 0000:04:06.0: BAR 0: set to [mem
0xfbf00000-0xfbf1ffff] (PCI address [0xfbf00000-0xfbf1ffff]
[    0.273977] pci 0000:04:06.0: BAR 1: assigned [mem 0xfbf20000-0xfbf3ffff]
[    0.273985] pci 0000:04:06.0: BAR 1: set to [mem
0xfbf20000-0xfbf3ffff] (PCI address [0xfbf20000-0xfbf3ffff]
[    0.273991] pci 0000:04:06.0: BAR 6: assigned [mem
0xf0180000-0xf019ffff pref]
[    0.273995] pci 0000:04:07.0: BAR 2: assigned [mem
0xfbf40000-0xfbf47fff 64bit]
[    0.274008] pci 0000:04:07.0: BAR 2: set to [mem
0xfbf40000-0xfbf47fff 64bit] (PCI address [0xfbf40000-0xfbf47fff]
[    0.274013] pci 0000:04:07.0: BAR 0: assigned [mem
0xfbf48000-0xfbf4807f 64bit]
[    0.274026] pci 0000:04:07.0: BAR 0: set to [mem
0xfbf48000-0xfbf4807f 64bit] (PCI address [0xfbf48000-0xfbf4807f]
[    5.562894] sata_sil24 0000:04:07.0: version 1.1
[    5.562913] sata_sil24 0000:04:07.0: enabling device (019d -> 019f)
[    5.562933] sata_sil24 0000:04:07.0: PCI INT A -> GSI 21 (level,
low) -> IRQ 21
[   29.932444] pciback 0000:04:06.0: seizing device
[   29.932501] pciback 0000:04:06.0: enabling device (0115 -> 0117)
[   29.932521] pciback 0000:04:06.0: PCI INT A -> GSI 20 (level, low) -> IRQ 20
[   29.932528] pciback 0000:04:06.0: PCI INT A disabled

dropping back to

  uname -ri
    2.6.31.12-2-xen x86_64


the dmesg output and the DomU init results are the same ... no-go.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: with Xen4 config -> (pci-passthrough-strict-check no), DomU init reports "Error: pci: PCI Backend and pci-stub don't own device"
  2010-01-29 22:10 with Xen4 config -> (pci-passthrough-strict-check no), DomU init reports "Error: pci: PCI Backend and pci-stub don't own device" 0bo0
  2010-01-29 22:36 ` 0bo0
@ 2010-01-29 22:44 ` Konrad Rzeszutek Wilk
  2010-01-29 23:11   ` 0bo0
  1 sibling, 1 reply; 8+ messages in thread
From: Konrad Rzeszutek Wilk @ 2010-01-29 22:44 UTC (permalink / raw)
  To: 0bo0; +Cc: xen-devel, horms, dexuan.cui

> 	grep passthrough /etc/xen/xend-config.sxp
> 		(pci-passthrough-strict-check no)
> 	grep hide /etc/modprobe.d/99-local.conf
> 		options pciback hide=(0000:04:07.0)(0000:04:06.0)

That won't work. That option is only useful if pciback is compiled
in the kernel. To be exact, you would need this in your bootline
argument:
 xen-pciback.hide=(04:07.0)(04:06.0) pci=resource_alignment=04:07.0 


> 
> and checking,
> 
> 	lsmod | egrep -i "pciback|xen"
> 		pciback                54471  0
> 		xenbus_be               3474  4 netbk,blkbk,blktap,pciback

Since it is module you need to follow the documentation about how to
seize and bind using pciback. Google is your friend.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: with Xen4 config -> (pci-passthrough-strict-check no), DomU init reports "Error: pci: PCI Backend and pci-stub don't own device"
  2010-01-29 22:44 ` Konrad Rzeszutek Wilk
@ 2010-01-29 23:11   ` 0bo0
  2010-02-01 16:57     ` 0bo0
  0 siblings, 1 reply; 8+ messages in thread
From: 0bo0 @ 2010-01-29 23:11 UTC (permalink / raw)
  To: Konrad Rzeszutek Wilk; +Cc: xen-devel, horms, dexuan.cui

I bleieve you have it backwards, no?

On Fri, Jan 29, 2010 at 2:44 PM, Konrad Rzeszutek Wilk
<konrad.wilk@oracle.com> wrote:
>>       grep passthrough /etc/xen/xend-config.sxp
>>               (pci-passthrough-strict-check no)
>>       grep hide /etc/modprobe.d/99-local.conf
>>               options pciback hide=(0000:04:07.0)(0000:04:06.0)
>
> That won't work. That option is only useful if pciback is compiled
> in the kernel. To be exact, you would need this in your bootline
> argument:
>  xen-pciback.hide=(04:07.0)(04:06.0) pci=resource_alignment=04:07.0
>
>
>>
>> and checking,
>>
>>       lsmod | egrep -i "pciback|xen"
>>               pciback                54471  0
>>               xenbus_be               3474  4 netbk,blkbk,blktap,pciback
>
> Since it is module you need to follow the documentation about how to
> seize and bind using pciback. Google is your friend.
>

reading @

http://wiki.xensource.com/xenwiki/Assign_hardware_to_DomU_with_PCIBack_as_module

"If the Dom0 XenLinux kernel is built with pciback as a module,
attempting to use the kernel command-line parameter pciback.hide won't
work. '

...

"If the Dom0 XenLinux kernel is built with pciback as a module,
attempting to use the kernel command-line parameter pciback.hide won't
work. This includes loading pciback in an initrd. This means that if
you wish to assign hardware to a DomU another method is needed.

There are two possibilities. ..."

since Dom0 is, apparently, "built with pciback as a module", the wiki
specifically instructs:

    Add a line to /etc/modprobe.conf to pass the hide parameter to pciback
    options pciback hide=(0000:05:02.0)

You'll also note, from the dmesg output i'd included above, that
there's no problem seizing the *1st* card, configured in the same
manner.

and, all of this worked just fine before the most recent Xen4 update
(this morning ...)

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: with Xen4 config -> (pci-passthrough-strict-check no), DomU init reports "Error: pci: PCI Backend and pci-stub don't own device"
  2010-01-29 23:11   ` 0bo0
@ 2010-02-01 16:57     ` 0bo0
  2010-02-01 18:28       ` 0bo0
  0 siblings, 1 reply; 8+ messages in thread
From: 0bo0 @ 2010-02-01 16:57 UTC (permalink / raw)
  To: xen-devel

On Fri, Jan 29, 2010 at 3:11 PM, 0bo0 <0.bugs.only.0@gmail.com> wrote:
> http://wiki.xensource.com/xenwiki/Assign_hardware_to_DomU_with_PCIBack_as_module
>
> "If the Dom0 XenLinux kernel is built with pciback as a module,
> attempting to use the kernel command-line parameter pciback.hide won't
> work. '

Can someone please clarify whether the instructions at wiki remain valid?

Thanks.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: with Xen4 config -> (pci-passthrough-strict-check no), DomU init reports "Error: pci: PCI Backend and pci-stub don't own device"
  2010-02-01 16:57     ` 0bo0
@ 2010-02-01 18:28       ` 0bo0
  2010-02-01 18:58         ` Pasi Kärkkäinen
  0 siblings, 1 reply; 8+ messages in thread
From: 0bo0 @ 2010-02-01 18:28 UTC (permalink / raw)
  To: xen-devel

for anyone interested,

upgrading openSUSE 11.2's kernel from 2.6.33-rc5-4-xen x86_64 ->
2.6.33-rc5-5-xen x86_64 fixed the problem reported here.  @ DomU, now,
 boots fine and the shared-bus PCI card is properly passedthrough.
dropping back to verify, and the problem returns.

the instructions @ wiki remain correct, and -- for kernel with pciback
compiled as module -- the command line options suggested (
xen-pciback.hide=(04:07.0)(04:06.0) pci=resource_alignment) do NOT
work.  rather the /etc/modprobe* config additions, along with the
usual (guestdev=0000:04:07.0,0000:04:06.0 reassign_resources) works as
it always has, consistente with the documentation.

hth.

thanks.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: with Xen4 config -> (pci-passthrough-strict-check no), DomU init reports "Error: pci: PCI Backend and pci-stub don't own device"
  2010-02-01 18:28       ` 0bo0
@ 2010-02-01 18:58         ` Pasi Kärkkäinen
  2010-02-01 19:21           ` 0bo0
  0 siblings, 1 reply; 8+ messages in thread
From: Pasi Kärkkäinen @ 2010-02-01 18:58 UTC (permalink / raw)
  To: 0bo0; +Cc: xen-devel

On Mon, Feb 01, 2010 at 10:28:27AM -0800, 0bo0 wrote:
> for anyone interested,
> 
> upgrading openSUSE 11.2's kernel from 2.6.33-rc5-4-xen x86_64 ->
> 2.6.33-rc5-5-xen x86_64 fixed the problem reported here.  @ DomU, now,
>  boots fine and the shared-bus PCI card is properly passedthrough.
> dropping back to verify, and the problem returns.
> 

Are these opensuse 2.6.33 kernels using the forward ported xenlinux patches,
or are they pvops kernels?

-- Pasi

> the instructions @ wiki remain correct, and -- for kernel with pciback
> compiled as module -- the command line options suggested (
> xen-pciback.hide=(04:07.0)(04:06.0) pci=resource_alignment) do NOT
> work.  rather the /etc/modprobe* config additions, along with the
> usual (guestdev=0000:04:07.0,0000:04:06.0 reassign_resources) works as
> it always has, consistente with the documentation.
> 
> hth.
> 
> thanks.
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xensource.com
> http://lists.xensource.com/xen-devel

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: with Xen4 config -> (pci-passthrough-strict-check no), DomU init reports "Error: pci: PCI Backend and pci-stub don't own device"
  2010-02-01 18:58         ` Pasi Kärkkäinen
@ 2010-02-01 19:21           ` 0bo0
  0 siblings, 0 replies; 8+ messages in thread
From: 0bo0 @ 2010-02-01 19:21 UTC (permalink / raw)
  To: Pasi Kärkkäinen; +Cc: xen-devel

On Mon, Feb 1, 2010 at 10:58 AM, Pasi Kärkkäinen <pasik@iki.fi> wrote:
> Are these opensuse 2.6.33 kernels using the forward ported xenlinux patches,
> or are they pvops kernels?

I'm assuming they're what opensuse has always done -- so far, anyway
-- which are the forwarded ported kernels.  I've not gone looking
elsewhere -- rather using distro-kernels with distro-Xen.  i'm not
entirely sure how one'd verify not-pvops...

fyi, the kernels I'm using for these tests are here:
http://download.opensuse.org/repositories/Kernel:/HEAD/openSUSE_11.2/x86_64/

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2010-02-01 19:21 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-01-29 22:10 with Xen4 config -> (pci-passthrough-strict-check no), DomU init reports "Error: pci: PCI Backend and pci-stub don't own device" 0bo0
2010-01-29 22:36 ` 0bo0
2010-01-29 22:44 ` Konrad Rzeszutek Wilk
2010-01-29 23:11   ` 0bo0
2010-02-01 16:57     ` 0bo0
2010-02-01 18:28       ` 0bo0
2010-02-01 18:58         ` Pasi Kärkkäinen
2010-02-01 19:21           ` 0bo0

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).