Saurabh Mishra
2013-Oct-31 21:29 UTC
PCI Passthrough question (xm->xl migration in Xen 4.2.2)
In XM toolchain, we use to put pci = [ ''0000:07:11.6=0@1a'' ] but looks like in XL toolchain there is no way to specify function in the guest. Kindly let me know. XM - pci = [ ''0000:07:11.6=0@1a'' ] XL - pci = [ ''0000:07:11.6@1a'' ] In the guest VM we see that PCI device is getting 0 function in both the cases however, it may not work the same way in the future. *lspci -nn* 00:00.0 Host bridge [0600]: Intel Corporation 440FX - 82441FX PMC [Natoma] [8086:1237] (rev 02) 00:01.0 ISA bridge [0601]: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II] [8086:7000] 00:01.1 IDE interface [0101]: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II] [8086:7010] 00:01.3 Bridge [0680]: Intel Corporation 82371AB/EB/MB PIIX4 ACPI [8086:7113] (rev 01) 00:02.0 VGA compatible controller [0300]: Cirrus Logic GD 5446 [1013:00b8] 00:03.0 Unknown class [ff80]: XenSource, Inc. Xen Platform Device [5853:0001] (rev 01) *00:1a.0 Ethernet controller [0200]: Intel Corporation 82559 Ethernet Controller Virtual Function [8086:10ed] (rev 01)* * * Thanks, /Saurabh _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel
Ian Campbell
2013-Nov-04 15:45 UTC
Re: PCI Passthrough question (xm->xl migration in Xen 4.2.2)
create ^ title it xl does not support specifying virtual function for passthrough device thanks On Thu, 2013-10-31 at 14:29 -0700, Saurabh Mishra wrote:> In XM toolchain, we use to put pci = [ ''0000:07:11.6=0@1a'' ] but looks > like in XL toolchain there is no way to specify function in the guest.The code is a bit confusing, but that does appear to be the case. libxl seems to have some degree of support but I can''t see any code in xl (or the libxlu helper library function which parses the PCI options) that would support the =N@M syntax. Given the lack of xl support there''s a good chance that the libxl support is relatively untested.> Kindly let me know. > > > XM - pci = [ ''0000:07:11.6=0@1a'' ] > XL - pci = [ ''0000:07:11.6@1a'' ] > > > In the guest VM we see that PCI device is getting 0 function in both > the cases however, it may not work the same way in the future.Do you happen to know (or can you easily do the experiment to find out) what happens with ''0000:07:11.6@1a'' on xm? Does the guest see function 0 or function 6? If it is 0 then I think we can safely say xl will not change, but if it is 6 we''ll have to have a think... Ian.
xen@bugs.xenproject.org
2013-Nov-04 16:00 UTC
Processed: Re: PCI Passthrough question (xm->xl migration in Xen 4.2.2)
Processing commands for xen@bugs.xenproject.org:> create ^Created new bug #22 rooted at `<CAMnwyJ2W8vXJ4o7wxqcW1E1rEYK7e9zTCzESb=fQ+47dOmcmNQ@mail.gmail.com>'' Title: `Re: [Xen-devel] PCI Passthrough question (xm->xl migration in Xen 4.2.2)''> title it xl does not support specifying virtual function for passthrough deviceSet title for #22 to `xl does not support specifying virtual function for passthrough device''> thanksFinished processing. Modified/created Bugs: - 22: http://bugs.xenproject.org/xen/bug/22 (new) --- Xen Hypervisor Bug Tracker See http://wiki.xen.org/wiki/Reporting_Bugs_against_Xen for information on reporting bugs Contact xen-bugs-owner@bugs.xenproject.org with any infrastructure issues
Sander Eikelenboom
2013-Nov-04 16:19 UTC
Re: PCI Passthrough question (xm->xl migration in Xen 4.2.2)
Monday, November 4, 2013, 4:45:25 PM, you wrote:> create ^ > title it xl does not support specifying virtual function for passthrough device > thanks> On Thu, 2013-10-31 at 14:29 -0700, Saurabh Mishra wrote: >> In XM toolchain, we use to put pci = [ ''0000:07:11.6=0@1a'' ] but looks >> like in XL toolchain there is no way to specify function in the guest.> The code is a bit confusing, but that does appear to be the case. libxl > seems to have some degree of support but I can''t see any code in xl (or > the libxlu helper library function which parses the PCI options) that > would support the =N@M syntax.> Given the lack of xl support there''s a good chance that the libxl > support is relatively untested.FYI qemu-upstream xen passhthrough currently also doesn''t support specifying a request for a certain dev/function nr. And it is vaguely related to the lacking ability to passthrough multifunction devices as multifunction devices. (the xm + qemu_trad require you to specify the virtual dev/func in this case, and additional some checks in libxl can''t handle the multifunction mask and bail out early)>> Kindly let me know. >> >> >> XM - pci = [ ''0000:07:11.6=0@1a'' ] >> XL - pci = [ ''0000:07:11.6@1a'' ] >> >> >> In the guest VM we see that PCI device is getting 0 function in both >> the cases however, it may not work the same way in the future.> Do you happen to know (or can you easily do the experiment to find out) > what happens with ''0000:07:11.6@1a'' on xm? Does the guest see function 0 > or function 6? If it is 0 then I think we can safely say xl will not > change, but if it is 6 we''ll have to have a think...> Ian.