[prev in list] [next in list] [prev in thread] [next in thread] 

List:       xen-users
Subject:    [Xen-users] PCI Passthrough in XenGT
From:       "Manuel R. Campos" <manurcr () gmail ! com>
Date:       2016-11-10 14:57:26
Message-ID: CAPccoBQ_7N2Ef60L3xV9nwCJeXMN-7-AMCgF_899LjOuZt1akg () mail ! gmail ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


Hello everyone,

I have to use XenGT because I have an integrated graphic card in my
computer, so the common Xen is not working for me. I compiled all in Ubuntu
14.04 (also in Debian 8 to make more tests) from source (
https://github.com/01org/igvtg-kernel/tree/2016q2-4.3.0) and the VGA
PAssthrough for a Windows 7 worked really good for the first moment. This
is my Graphic card:

00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor
Integrated Graphics Controller (rev 06)

And all the configuration:
Intel i7-4700EQ (1vcpu for Dom0, 4vcpus for VM)
16GB RAM (1GB Dom0, 4GB for the VM)
XenGT 4.3.0 from source

VM's config file:
builder = "hvm"

# Guest name
name = "recorder"

viridian = 1

# Initial memory allocation (MB)
memory = 4096

# Number of VCPUS
vcpus = 4

vif = ['type=ioemu,mac=00:16:3E:14:B1:1C,bridge=xenbr0']

disk = [
# 'phy:/dev/vgo/windows,xvda1,rw',
'file:/media/bplus/guests/xenwinrec7.img,ioemu:hda,w',
]

device_model_version = "qemu-xen"
device_model_override='/usr/lib/xen/bin/qemu-system-i386'
#gfx_passthru=1
pci = ['0a:00.0', '0b:00.0', '00:19.0', '03:00.1']

monitor=1
pci_power_mgmt=1
xen_platform_pci=1
pci_msitranslate=1
viridian=1
hpet=1
acpi=1
apic=1
pae=1
nx=1
localtime=1
usbdevice="tablet"

# Guest VGA console configuration, either SDL or VNC
#sdl = 1
vnc = 1
vncdisplay=2
vncunused=0
vnclisten="0.0.0.0"

##### Behavior
on_poweroff = 'destroy'
on_reboot = 'restart'
on_crash = 'restart'


I want to give the Ethernet ports to that VM and it happens something that
I don't understand. I pass an I218, an I210 and a X540-AT2, all are good
installed, the drivers is from Intel, the Device manager says no problem at
all, even I can use the LED test in order to recognize exactly which port
is that one. So the driver is working good, from the Windows side. But when
I plug the cable, only the I218 works like it has to do it (ping, internet
connection). The others don't do nothing when I plug an Ethernet cable.
This device works properly:

00:19.0 Ethernet controller: Intel Corporation Ethernet Connection (2)
I218-LM (rev 05)

But these are not:

04:00.0 Ethernet controller: Intel Corporation I210 Gigabit Network
Connection (rev 03)
03:00.1 Ethernet controller: Intel Corporation Ethernet Controller
10-Gigabit X540-AT2 (rev 01)

The kernel has the XEN_PCIDEV_BACKEND=y enabled in Ubuntu and in Debian. In
the last one, which is in another HDD with a Xen 4.7.5 compiled from source
with all the Xen's options loaded in kernel, doesn't make the VGA
Passthrough, but works perfect with all the Ethernet ports using the same
VM like Ubuntu. I mean, I don't have more VM, only one and in Debian works
the Ethernet ports, but in Ubuntu it doesn't.

The only difference I see in the VM is when I create it with "-d" option I
see is:

"pcidevs": [
        {
            "bus": 10,
            "vfunc_mask": 1,
            "msitranslate": true,
            "power_mgmt": true
        },
        {
            "bus": 11,
            "vfunc_mask": 1,
            "msitranslate": true,
            "power_mgmt": true
        },
        {
            "dev": 25,
            "vfunc_mask": 1,
            "msitranslate": true,
            "power_mgmt": true
        },
        {
            "func": 1,
            "bus": 3,
            "vfunc_mask": 1,
            "msitranslate": true,
            "power_mgmt": true
        }

which are 2 I210, the I218 and the X540-AT2, in order.

Thanks in advance.

Kind regards.

Manu

[Attachment #5 (text/html)]

<div dir="ltr">Hello everyone,<div><br></div><div>I have to use XenGT because I have \
an integrated graphic card in my computer, so the common Xen is not working for me. I \
compiled all in Ubuntu 14.04 (also in Debian 8 to make more tests) from source (<a \
href="https://github.com/01org/igvtg-kernel/tree/2016q2-4.3.0">https://github.com/01org/igvtg-kernel/tree/2016q2-4.3.0</a>) \
and the VGA PAssthrough for a Windows 7 worked really good for the first moment. This \
is my Graphic card:</div><div><br></div><div>00:02.0 VGA compatible controller: Intel \
Corporation 4th Gen Core Processor Integrated Graphics Controller (rev \
06)</div><div><br></div><div>And all the configuration:</div><div>Intel i7-4700EQ \
(1vcpu for Dom0, 4vcpus for VM)</div><div>16GB RAM (1GB Dom0, 4GB for the \
VM)</div><div>XenGT 4.3.0 from source</div><div><br></div><div>VM&#39;s config \
file:</div><div><div>builder = &quot;hvm&quot;</div><div><br></div><div># Guest \
name</div><div>name = &quot;recorder&quot;</div><div><br></div><div>viridian = \
1</div><div><br></div><div># Initial memory allocation (MB)</div><div>memory = \
4096</div><div><br></div><div># Number of VCPUS</div><div>vcpus = \
4</div><div><br></div><div>vif = \
[&#39;type=ioemu,mac=00:16:3E:14:B1:1C,bridge=xenbr0&#39;]</div><div><br></div><div>disk \
= [</div><div>#<span class="gmail-Apple-tab-span" \
style="white-space:pre">	</span>&#39;phy:/dev/vgo/windows,xvda1,rw&#39;,</div><div><span \
class="gmail-Apple-tab-span" \
style="white-space:pre">	</span>&#39;file:/media/bplus/guests/xenwinrec7.img,ioemu:hda,w&#39;,</div><div><span \
class="gmail-Apple-tab-span" \
style="white-space:pre">	</span>]</div><div><br></div><div>device_model_version = \
&quot;qemu-xen&quot;</div><div>device_model_override=&#39;/usr/lib/xen/bin/qemu-system-i386&#39;</div><div>#gfx_passthru=1</div><div>pci \
= [&#39;0a:00.0&#39;, &#39;0b:00.0&#39;, &#39;00:19.0&#39;, \
&#39;03:00.1&#39;]</div><div><br></div><div>monitor=1</div><div>pci_power_mgmt=1</div> \
<div>xen_platform_pci=1</div><div>pci_msitranslate=1</div><div>viridian=1</div><div>hp \
et=1</div><div>acpi=1</div><div>apic=1</div><div>pae=1</div><div>nx=1</div><div>localtime=1</div><div>usbdevice=&quot;tablet&quot;</div><div><br></div><div># \
Guest VGA console configuration, either SDL or VNC</div><div>#sdl = 1</div><div>vnc = \
1</div><div>vncdisplay=2</div><div>vncunused=0</div><div>vnclisten=&quot;0.0.0.0&quot;</div><div><br></div><div>##### \
Behavior</div><div>on_poweroff = &#39;destroy&#39;</div><div>on_reboot = \
&#39;restart&#39;</div><div>on_crash = \
&#39;restart&#39;</div></div><div><br></div><div><br></div><div>I want to give the \
Ethernet ports to that VM and it happens something that I don&#39;t understand. I \
pass an I218, an I210 and a X540-AT2, all are good installed, the drivers is from \
Intel, the Device manager says no problem at all, even I can use the LED test in \
order to recognize exactly which port is that one. So the driver is working good, \
from the Windows side. But when I plug the cable, only the I218 works like it has to \
do it (ping, internet connection). The others don&#39;t do nothing when I plug an \
Ethernet cable. This device works properly:<br></div><div><br></div><div>00:19.0 \
Ethernet controller: Intel Corporation Ethernet Connection (2) I218-LM (rev \
05)<br></div><div><br></div><div>But these are \
not:</div><div><br></div><div><div>04:00.0 Ethernet controller: Intel Corporation \
I210 Gigabit Network Connection (rev 03)</div></div><div><div>03:00.1 Ethernet \
controller: Intel Corporation Ethernet Controller 10-Gigabit X540-AT2 (rev \
01)</div></div><div><br></div><div><div>The kernel has the XEN_PCIDEV_BACKEND=y \
enabled in Ubuntu and in Debian. In the last one, which is in another HDD with a Xen \
4.7.5 compiled from source with all the Xen&#39;s options loaded in kernel, \
doesn&#39;t make the VGA Passthrough, but works perfect with all the Ethernet ports \
using the same VM like Ubuntu. I mean, I don&#39;t have more VM, only one and in \
Debian works the Ethernet ports, but in Ubuntu it \
doesn&#39;t.</div><div><br></div><div>The only difference I see in the VM is when I \
create it with &quot;-d&quot; option I see \
is:</div><div><br></div><div><div>&quot;pcidevs&quot;: [</div><div>            \
{</div><div>                  &quot;bus&quot;: 10,</div><div>                  \
&quot;vfunc_mask&quot;: 1,</div><div>                  &quot;msitranslate&quot;: \
true,</div><div>                  &quot;power_mgmt&quot;: true</div><div>            \
},</div><div>            {</div><div>                  &quot;bus&quot;: \
11,</div><div>                  &quot;vfunc_mask&quot;: 1,</div><div>                 \
&quot;msitranslate&quot;: true,</div><div>                  &quot;power_mgmt&quot;: \
true</div><div>            },</div><div>            {</div><div>                  \
&quot;dev&quot;: 25,</div><div>                  &quot;vfunc_mask&quot;: \
1,</div><div>                  &quot;msitranslate&quot;: true,</div><div>             \
&quot;power_mgmt&quot;: true</div><div>            },</div><div>            \
{</div><div>                  &quot;func&quot;: 1,</div><div>                  \
&quot;bus&quot;: 3,</div><div>                  &quot;vfunc_mask&quot;: 1,</div><div> \
&quot;msitranslate&quot;: true,</div><div>                  &quot;power_mgmt&quot;: \
true</div><div>            }</div></div><div><br></div><div>which are 2 I210, the \
I218 and the X540-AT2, in order.</div><div><br></div><div>Thanks in \
advance.<br></div><div><br></div>Kind regards.<br><div class="gmail_signature"><div \
dir="ltr"><div dir="ltr"><div><br></div><div>Manu</div></div></div></div> \
</div></div>


[Attachment #6 (text/plain)]

_______________________________________________
Xen-users mailing list
Xen-users@lists.xen.org
https://lists.xen.org/xen-users

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic