<html>
    <head>
      <base href="https://bugs.freedesktop.org/">
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [SKL GT4e] large perf drop (up to 27%) in most 3D benchmarks"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=111731#c2">Comment # 2</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [SKL GT4e] large perf drop (up to 27%) in most 3D benchmarks"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=111731">bug 111731</a>
              from <span class="vcard"><a class="email" href="mailto:eero.t.tamminen@intel.com" title="Eero Tamminen <eero.t.tamminen@intel.com>"> <span class="fn">Eero Tamminen</span></a>
</span></b>
        <pre>(In reply to Chris Wilson from <a href="show_bug.cgi?id=111731#c1">comment #1</a>)
<span class="quote">> drm/i915: Make i915_vma.flags atomic_t for mutex reduction
> drm/i915: Make shrink/unshrink be atomic

> are meh.

> drm/i915: Whitelist COMMON_SLICE_CHICKEN2

> is a possiblity, but my money is on

> drm/i915: Force compilation with intel-iommu for CI validation

> A run with intel_iommu=off should test that theory, or intel_iommu=igfx_off
> and reverting HAX iommu/intel: Ignore igfx_off</span >

We run all tests currently with "intel_iommu=igfx_off" kernel command line
option, and while the author-date in above intel-iommu/igfx_off commits is
within range, their drm-tip repo commit dates are actually from Monday this
week, not from week ago?

(Why IOMMU perf impact would be SKL GT4e specific?)

Also, whereas latest drm-tip kernel shows:
$ sudo grep mmu /sys/kernel/debug/dri/0/i915_capabilities
iommu: enabled

There's no such output for the 2019-09-11 "b27acd37b7de" kernel where this
regression was noticed.


There is a difference on kernel IOMMU outputs between these commits though...

Before:
[    0.625811] DMAR: No ATSR found
[    0.625842] DMAR: dmar1: Using Queued invalidation
[    0.625948] pci 0000:00:00.0: Adding to iommu group 0
[    0.625993] pci 0000:00:08.0: Adding to iommu group 1
[    0.626054] pci 0000:00:14.0: Adding to iommu group 2
[    0.626064] pci 0000:00:14.2: Adding to iommu group 2
[    0.626110] pci 0000:00:16.0: Adding to iommu group 3
[    0.626159] pci 0000:00:1c.0: Adding to iommu group 4
[    0.626203] pci 0000:00:1c.1: Adding to iommu group 5
[    0.626249] pci 0000:00:1c.4: Adding to iommu group 6
[    0.626296] pci 0000:00:1d.0: Adding to iommu group 7
[    0.626348] pci 0000:00:1f.0: Adding to iommu group 8
[    0.626359] pci 0000:00:1f.2: Adding to iommu group 8
[    0.626368] pci 0000:00:1f.3: Adding to iommu group 8
[    0.626378] pci 0000:00:1f.4: Adding to iommu group 8
[    0.626422] pci 0000:00:1f.6: Adding to iommu group 9
[    0.626467] pci 0000:02:00.0: Adding to iommu group 10
[    0.626518] pci 0000:3c:00.0: Adding to iommu group 11
[    0.626523] DMAR: Intel(R) Virtualization Technology for Directed I/O

After:
[    0.625808] DMAR: No ATSR found
[    0.625837] DMAR: dmar0: Using Queued invalidation
[    0.625841] DMAR: dmar1: Using Queued invalidation
[    0.626033] pci 0000:00:00.0: Adding to iommu group 0
[    0.632522] pci 0000:00:02.0: Adding to iommu group 1
[    0.632568] pci 0000:00:08.0: Adding to iommu group 2
[    0.632634] pci 0000:00:14.0: Adding to iommu group 3
[    0.632644] pci 0000:00:14.2: Adding to iommu group 3
[    0.632684] pci 0000:00:16.0: Adding to iommu group 4
[    0.632746] pci 0000:00:1c.0: Adding to iommu group 5
[    0.632797] pci 0000:00:1c.1: Adding to iommu group 6
[    0.632854] pci 0000:00:1c.4: Adding to iommu group 7
[    0.632911] pci 0000:00:1d.0: Adding to iommu group 8
[    0.632966] pci 0000:00:1f.0: Adding to iommu group 9
[    0.632977] pci 0000:00:1f.2: Adding to iommu group 9
[    0.632988] pci 0000:00:1f.3: Adding to iommu group 9
[    0.632998] pci 0000:00:1f.4: Adding to iommu group 9
[    0.633039] pci 0000:00:1f.6: Adding to iommu group 10
[    0.633096] pci 0000:02:00.0: Adding to iommu group 11
[    0.633146] pci 0000:3c:00.0: Adding to iommu group 12
[    0.633233] DMAR: Intel(R) Virtualization Technology for Directed I/O

Other IOMMU / DMAR related dmesg output is identical between the commits:
[    0.002741] ACPI: DMAR 0x000000007A545CD8 0000A8 (v01 INTEL  NUC6i7KY
00000001 INTL 00000001)
...
[    0.125612] Kernel command line: BOOT_IMAGE=/boot/drm_intel
root=/dev/nvme0n1p2 rootwait fsck.repair=yes intel_iommu=igfx_off ro
...
[    0.174960] DMAR: Host address width 39
[    0.174962] DMAR: DRHD base: 0x000000fed90000 flags: 0x0
[    0.174967] DMAR: dmar0: reg_base_addr fed90000 ver 1:0 cap 1c0000c40660462
ecap 7e3ff0505e
[    0.174970] DMAR: DRHD base: 0x000000fed91000 flags: 0x1
[    0.174975] DMAR: dmar1: reg_base_addr fed91000 ver 1:0 cap d2008c40660462
ecap f050da
[    0.174978] DMAR: RMRR base: 0x0000007a275000 end: 0x0000007a294fff
[    0.174980] DMAR: RMRR base: 0x0000007b800000 end: 0x0000007fffffff
[    0.174983] DMAR-IR: IOAPIC id 2 under DRHD base  0xfed91000 IOMMU 1
[    0.174985] DMAR-IR: HPET id 0 under DRHD base 0xfed91000
[    0.174987] DMAR-IR: Queued invalidation will be enabled to support x2apic
and Intr-remapping.
[    0.176506] DMAR-IR: Enabled IRQ remapping in x2apic mode


PS. This regression is large enough that one run of CSDof is enough to see
whether kernel version is impacted:
 ./synmark2 OglCSDof</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are the assignee for the bug.</li>
          <li>You are the QA Contact for the bug.</li>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>