* PCI backend and slot functions
@ 2006-08-02 13:12 Tristan Gingold
2006-08-02 13:17 ` Chris
2006-08-02 14:15 ` [Xen-ia64-devel] " Alex Williamson
0 siblings, 2 replies; 6+ messages in thread
From: Tristan Gingold @ 2006-08-02 13:12 UTC (permalink / raw)
To: xen-devel, xen-ia64-devel
Hi,
Currently PCI slot functions are not virtualized. When I hide 0000:06:01.1 it
appears as 0000:00:00.1 and there is no function 0 for the slot. This is an
issue because on linux/ia64, functions > 0 are not probed if there is no
function 0.
How is it handled on x86 ?
Should I add an option to virtualize slot functions ?
Tristan.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: PCI backend and slot functions
2006-08-02 13:12 PCI backend and slot functions Tristan Gingold
@ 2006-08-02 13:17 ` Chris
2006-08-02 13:42 ` Tristan Gingold
2006-08-02 14:15 ` [Xen-ia64-devel] " Alex Williamson
1 sibling, 1 reply; 6+ messages in thread
From: Chris @ 2006-08-02 13:17 UTC (permalink / raw)
To: Tristan Gingold; +Cc: xen-devel, xen-ia64-devel
Tristan Gingold wrote:
> Currently PCI slot functions are not virtualized. When I hide 0000:06:01.1 it
> appears as 0000:00:00.1 and there is no function 0 for the slot. This is an
> issue because on linux/ia64, functions > 0 are not probed if there is no
> function 0.
>
> How is it handled on x86 ?
>
> Should I add an option to virtualize slot functions ?
IIUC, when you hide 0000:06:01.1 from dom0 you want that device to
appear as 0000:06:01.1 to domU. Have you looked at the PCI Backend Mode
options in the xenolinux configuration? Specifically, look at the
difference between XEN_PCIDEV_BACKEND_VPCI and XEN_PCIDEV_BACKEND_PASS
to see if either gives what you want. I've only tried this on x86, but
it sounds like what you want, but perhaps there's a bug in the ia64
implementation (I haven't looked at it yet).
-Chris
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: PCI backend and slot functions
2006-08-02 13:17 ` Chris
@ 2006-08-02 13:42 ` Tristan Gingold
0 siblings, 0 replies; 6+ messages in thread
From: Tristan Gingold @ 2006-08-02 13:42 UTC (permalink / raw)
To: Chris; +Cc: xen-devel, xen-ia64-devel
Le Mercredi 02 Août 2006 15:17, Chris a écrit :
> Tristan Gingold wrote:
> > Currently PCI slot functions are not virtualized. When I hide
> > 0000:06:01.1 it appears as 0000:00:00.1 and there is no function 0 for
> > the slot. This is an issue because on linux/ia64, functions > 0 are not
> > probed if there is no function 0.
> >
> > How is it handled on x86 ?
> >
> > Should I add an option to virtualize slot functions ?
>
> IIUC, when you hide 0000:06:01.1 from dom0 you want that device to
> appear as 0000:06:01.1 to domU. Have you looked at the PCI Backend Mode
> options in the xenolinux configuration? Specifically, look at the
> difference between XEN_PCIDEV_BACKEND_VPCI and XEN_PCIDEV_BACKEND_PASS
> to see if either gives what you want.
Yes both works on ia64.
> I've only tried this on x86, but
> it sounds like what you want, but perhaps there's a bug in the ia64
> implementation (I haven't looked at it yet).
As far as I understand pci backend and frontend work correctly but the pci
cards probing seems to be different to x86.
Thank you for your comment,
Tristan.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [Xen-ia64-devel] PCI backend and slot functions
2006-08-02 13:12 PCI backend and slot functions Tristan Gingold
2006-08-02 13:17 ` Chris
@ 2006-08-02 14:15 ` Alex Williamson
2006-08-02 14:30 ` Tristan Gingold
1 sibling, 1 reply; 6+ messages in thread
From: Alex Williamson @ 2006-08-02 14:15 UTC (permalink / raw)
To: Tristan Gingold; +Cc: xen-devel, xen-ia64-devel
On Wed, 2006-08-02 at 15:12 +0200, Tristan Gingold wrote:
> Hi,
>
> Currently PCI slot functions are not virtualized. When I hide 0000:06:01.1 it
> appears as 0000:00:00.1 and there is no function 0 for the slot. This is an
> issue because on linux/ia64, functions > 0 are not probed if there is no
> function 0.
>
> How is it handled on x86 ?
>
> Should I add an option to virtualize slot functions ?
Yes, I think so. The ia64 PCI discovery appears to more closely
follow the PCI spec. Both multi-function and single-function PCI
devices must have configuration space at function 0. I would guess x86
may probe all functions to deal with old, buggy hardware.
Alex
--
Alex Williamson HP Open Source & Linux Org.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [Xen-ia64-devel] PCI backend and slot functions
2006-08-02 14:15 ` [Xen-ia64-devel] " Alex Williamson
@ 2006-08-02 14:30 ` Tristan Gingold
2006-08-02 14:43 ` Alex Williamson
0 siblings, 1 reply; 6+ messages in thread
From: Tristan Gingold @ 2006-08-02 14:30 UTC (permalink / raw)
To: Alex Williamson; +Cc: xen-devel, xen-ia64-devel
Le Mercredi 02 Août 2006 16:15, Alex Williamson a écrit :
> On Wed, 2006-08-02 at 15:12 +0200, Tristan Gingold wrote:
> > Hi,
> >
> > Currently PCI slot functions are not virtualized. When I hide
> > 0000:06:01.1 it appears as 0000:00:00.1 and there is no function 0 for
> > the slot. This is an issue because on linux/ia64, functions > 0 are not
> > probed if there is no function 0.
> >
> > How is it handled on x86 ?
> >
> > Should I add an option to virtualize slot functions ?
>
> Yes, I think so. The ia64 PCI discovery appears to more closely
> follow the PCI spec. Both multi-function and single-function PCI
> devices must have configuration space at function 0. I would guess x86
> may probe all functions to deal with old, buggy hardware.
Ok.
Could we virtualize functions as slots (ie two functions appear as two slots)?
Doing something more clever seems not that easy!
Tristan.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [Xen-ia64-devel] PCI backend and slot functions
2006-08-02 14:30 ` Tristan Gingold
@ 2006-08-02 14:43 ` Alex Williamson
0 siblings, 0 replies; 6+ messages in thread
From: Alex Williamson @ 2006-08-02 14:43 UTC (permalink / raw)
To: Tristan Gingold; +Cc: xen-devel, xen-ia64-devel
On Wed, 2006-08-02 at 16:30 +0200, Tristan Gingold wrote:
> Le Mercredi 02 Août 2006 16:15, Alex Williamson a écrit :
> > Yes, I think so. The ia64 PCI discovery appears to more closely
> > follow the PCI spec. Both multi-function and single-function PCI
> > devices must have configuration space at function 0. I would guess x86
> > may probe all functions to deal with old, buggy hardware.
> Ok.
>
> Could we virtualize functions as slots (ie two functions appear as two slots)?
> Doing something more clever seems not that easy!
Seems like a good start to me. I can't guarantee some drivers won't
get confused by this, but its probably a good mechanism to verify that
each function could be exported to a domain and still remain functional.
Thanks,
Alex
--
Alex Williamson HP Open Source & Linux Org.
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2006-08-02 14:43 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-08-02 13:12 PCI backend and slot functions Tristan Gingold
2006-08-02 13:17 ` Chris
2006-08-02 13:42 ` Tristan Gingold
2006-08-02 14:15 ` [Xen-ia64-devel] " Alex Williamson
2006-08-02 14:30 ` Tristan Gingold
2006-08-02 14:43 ` Alex Williamson
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.