On Tue, Sep 08, 2009 at 04:10:57PM +0800, Han, Weidong wrote:
> Hi Simon,
>
> You did lots of work on multiple functions passthrough. We can specify
> virtual slot for assigned device like pci=[ '01:00.0@5' ]. Does it
> support to specify virtual function in guest for assigned device? For
> example, I want to specify virtual bdf 00:05.1 for device 01:00.1.
Hi Weidong,
Yes, as of changeset "xend: pass-through: Extend multi-function mapping"
(20012:3242351f9c67) is is possible to specify the virtual function.
However, this is only possible for multi-function pass-through.
When only a single function is passed through the virtual function
will always be zero, because PCI devices must always have function 0
present.
So the closest that you could do when passing through 01:00.1 is to get
virtual function 00:05.0 by specifying '01:00.1@5'.
If you passed through another function of 01:00 at the same time as 01:00.1,
say 01:00.0, then you could explicitly choose to have 01:00.1
assigned to 00:05.1 and 01:00.0 assigned to 00:05.0 using '00:05.0=0,1=1@5'.
Actually that would be the default as it is just an identity mapping,
so the same result would be achieved by '00:05.0,1@5'. A more interesting
case would be to reverse the mapping so 00:05.0 -> 01:00.1 and
00:05.1 -> 00:05.0, which could be achieved using '00:05.0=1,1=0@5'.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|