<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Dear Mr. Williamson,<br>
<br>
Proxmox ve 4.1 has your ACS-override-patch included in the kernel.<br>
When "pcie_acs_override=downstream" added to kernel parameter, dmesg
says "PCIe ACS overrides enabled; ..."<br>
However, iommu group 4 is still big.<br>
<br>
I have patched the pve-kernel with your Skylake-PCH-patch.<br>
It works now. IOMMU groups are separated. Each pcie device is in its
own group.<br>
<br>
Thank you very much.<br>
<br>
<div class="moz-cite-prefix">On 4/5/2016 9:12 PM, Alex Williamson
wrote:<br>
</div>
<blockquote
cite="mid:CAEMbtc+L8c2Ss0gUJxYFqGsi5cpaTr0fKZZZYLJJPucyezGU4A@mail.gmail.com"
type="cite">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">On Tue, Apr 5, 2016 at 3:13 AM, Tran
The Anh <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:anh.tranthe@thegioididong.com"
target="_blank">anh.tranthe@thegioididong.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000"> Hi,<br>
<br>
I would like to passthrough some intel i210 ports to
KVM's VM, but has encountered the iommu group issue:<br>
<br>
<blockquote><small>/sys/kernel/iommu_groups/0/devices/0000:00:00.0<br>
/sys/kernel/iommu_groups/1/devices/0000:00:14.0
<= usb<br>
/sys/kernel/iommu_groups/1/devices/0000:00:14.2<br>
/sys/kernel/iommu_groups/2/devices/0000:00:16.0<br>
/sys/kernel/iommu_groups/2/devices/0000:00:16.1<br>
/sys/kernel/iommu_groups/3/devices/0000:00:17.0
<= sata<br>
<font color="#3333ff">/sys/kernel/iommu_groups/4/devices/0000:00:1c.0
<= pch port</font><br>
<font color="#3333ff">/sys/kernel/iommu_groups/4/devices/0000:00:1c.1
<= pch port</font><br>
<font color="#3333ff">/sys/kernel/iommu_groups/4/devices/0000:00:1c.2
<= pch port</font><br>
<font color="#3333ff">/sys/kernel/iommu_groups/4/devices/0000:00:1c.3
<= pch port</font><br>
<font color="#3333ff">/sys/kernel/iommu_groups/4/devices/0000:00:1c.6
<= pch port</font><br>
<font color="#3333ff">/sys/kernel/iommu_groups/4/devices/0000:01:00.0
<= i210</font><br>
<font color="#3333ff">/sys/kernel/iommu_groups/4/devices/0000:02:00.0
<= i210</font><br>
<font color="#3333ff">/sys/kernel/iommu_groups/4/devices/0000:03:00.0
<= i210</font><br>
<font color="#3333ff">/sys/kernel/iommu_groups/4/devices/0000:04:00.0
<= i210</font><br>
<font color="#3333ff">/sys/kernel/iommu_groups/4/devices/0000:05:00.0</font><br>
<font color="#3333ff">/sys/kernel/iommu_groups/4/devices/0000:06:00.0
<= vga aspeed 2400</font><br>
/sys/kernel/iommu_groups/5/devices/0000:00:1f.0<br>
/sys/kernel/iommu_groups/5/devices/0000:00:1f.2<br>
/sys/kernel/iommu_groups/5/devices/0000:00:1f.4<br>
</small></blockquote>
<br>
My system is:<br>
<blockquote><small>Intel Xeon e3-1220 v5</small><br>
<small>Supermicro x11ssh-ln4f</small><br>
</blockquote>
<br>
According to board's diagram:<br>
<a moz-do-not-send="true"
href="http://www.supermicro.com/manuals/motherboard/C236/MNL-1778.pdf"
target="_blank">http://www.supermicro.com/manuals/motherboard/C236/MNL-1778.pdf</a><br>
Those i210s are connected to PCH.<br>
<br>
It seems that PCH ports have ACS capabilities:<br>
<blockquote><small>lspci -vvvnk | egrep -i 'Access|Rev'</small><br>
<small>00:17.0 0106: 8086:a102 (rev 31) (prog-if 01
[AHCI 1.0])</small><br>
<small>00:1c.0 0604: 8086:a110 (rev f1) (prog-if 00
[Normal decode])</small><br>
<small> Capabilities: [140 v1] Access Control
Services</small><br>
<small>00:1c.1 0604: 8086:a111 (rev f1) (prog-if 00
[Normal decode])</small><br>
<small> Capabilities: [140 v1] Access Control
Services</small><br>
<small>00:1c.2 0604: 8086:a112 (rev f1) (prog-if 00
[Normal decode])</small><br>
<small> Capabilities: [140 v1] Access Control
Services</small><br>
<small>00:1c.3 0604: 8086:a113 (rev f1) (prog-if 00
[Normal decode])</small><br>
<small> Capabilities: [140 v1] Access Control
Services</small><br>
<small>00:1c.6 0604: 8086:a116 (rev f1) (prog-if 00
[Normal decode])</small><br>
<small> Capabilities: [140 v1] Access Control
Services</small><br>
<br>
</blockquote>
I have tried [proxmox ve 4.0, proxmox 4.1, centos 7,
ubuntu 1404, ubuntu 1510] + add
"pci_acs_override=downstream" to kernel parameters.<br>
But the iommu group 4 is always the same.<br>
</div>
</blockquote>
<div><br>
</div>
<div>The ACS override patch is not upstream, you'd actually
need to run a kernel with support for it for the kernel
command line option to work. You have a Sunrise Point PCH
where Intel has a broken implementation of ACS. I've
posted quirks[1] for this, but they probably won't be
available until a v4.7 kernel. Your choices are to either
patch your kernel with the ACS override patch or patch
your kernel with the quirks (preferred) until support is
merged into the kernel. Thanks,</div>
<div><br>
</div>
<div>Alex</div>
<div><br>
</div>
<div>[1] <a moz-do-not-send="true"
href="https://lkml.org/lkml/2016/3/31/1112">https://lkml.org/lkml/2016/3/31/1112</a></div>
</div>
</div>
</div>
</blockquote>
<br>
<br />
<table style="border-top: 1px solid #aaabb6;">
<tr>
<td style="width: 55px; padding-top: 13px;"><a href="https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient&utm_term=icon" target="_blank"><img src="https://ipmcdn.avast.com/images/2016/icons/icon-envelope-open-tick-round-orange-v1.png" /></a></td>
<td style="width: 470px; padding-top: 15px; color: #41424e; font-size: 13px; font-family: Arial, Helvetica, sans-serif; line-height: 18px;">Virus-free. <a href="https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient&utm_term=link" target="_blank" style="color: #4453ea;">www.avast.com</a>
</td>
</tr>
</table></body>
</html>