<html>
    <head>
      <base href="https://bugs.freedesktop.org/">
    </head>
    <body><span class="vcard"><a class="email" href="mailto:chris@chris-wilson.co.uk" title="Chris Wilson <chris@chris-wilson.co.uk>"> <span class="fn">Chris Wilson</span></a>
</span> changed
          <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - [CI][drmtip] igt@gem_exec_parallel@bsd-fds - fail - Failed assertion: map[i] == i"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=108955">bug 108955</a>
          <br>
             <table border="1" cellspacing="0" cellpadding="8">
          <tr>
            <th>What</th>
            <th>Removed</th>
            <th>Added</th>
          </tr>

         <tr>
           <td style="text-align:right;">Resolution</td>
           <td>---
           </td>
           <td>FIXED
           </td>
         </tr>

         <tr>
           <td style="text-align:right;">Status</td>
           <td>NEW
           </td>
           <td>RESOLVED
           </td>
         </tr></table>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - [CI][drmtip] igt@gem_exec_parallel@bsd-fds - fail - Failed assertion: map[i] == i"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=108955#c2">Comment # 2</a>
              on <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - [CI][drmtip] igt@gem_exec_parallel@bsd-fds - fail - Failed assertion: map[i] == i"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=108955">bug 108955</a>
              from <span class="vcard"><a class="email" href="mailto:chris@chris-wilson.co.uk" title="Chris Wilson <chris@chris-wilson.co.uk>"> <span class="fn">Chris Wilson</span></a>
</span></b>
        <pre>With any luck

commit 8cd999181f8c744c87fb64e7b3600876ec3428b2
Author: Chris Wilson <<a href="mailto:chris@chris-wilson.co.uk">chris@chris-wilson.co.uk</a>>
Date:   Mon Jan 14 21:17:27 2019 +0000

    drm/i915: Prevent concurrent GGTT update and use on Braswell (again)

    On Braswell, under heavy stress, if we update the GGTT while
    simultaneously accessing another region inside the GTT, we are returned
    the wrong values. To prevent this we stop the machine to update the GGTT
    entries so that no memory traffic can occur at the same time.

    This was first spotted in

    commit 5bab6f60cb4d1417ad7c599166bcfec87529c1a2
    Author: Chris Wilson <<a href="mailto:chris@chris-wilson.co.uk">chris@chris-wilson.co.uk</a>>
    Date:   Fri Oct 23 18:43:32 2015 +0100

        drm/i915: Serialise updates to GGTT with access through GGTT on
Braswell

    but removed again in forlorn hope with

    commit 4509276ee824bb967885c095c610767e42345c36
    Author: Chris Wilson <<a href="mailto:chris@chris-wilson.co.uk">chris@chris-wilson.co.uk</a>>
    Date:   Mon Feb 20 12:47:18 2017 +0000

        drm/i915: Remove Braswell GGTT update w/a

    However, gem_concurrent_blit is once again only stable with the patch
    applied and CI is detecting the odd failure in forked gem_mmap_gtt tests
    (which smell like the same issue). Fwiw, a wide variety of CPU memory
    barriers (around GGTT flushing, fence updates, PTE updates) and GPU
    flushes/invalidates (between requests, after PTE updates) were tried as
    part of the investigation to find an alternate cause, nothing comes
    close to serialised GGTT updates.

    Bugzilla: <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - [CI] igt@gem_mmap_gtt@forked-* - Failed assertion: page[j] == i + j -"
   href="show_bug.cgi?id=105591">https://bugs.freedesktop.org/show_bug.cgi?id=105591</a>
    Testcase: igt/gem_concurrent_blit
    Testcase: igt/gem_mmap_gtt/*forked*
    References: 5bab6f60cb4d ("drm/i915: Serialise updates to GGTT with access
through GGTT on Braswell")
    References: 4509276ee824 ("drm/i915: Remove Braswell GGTT update w/a")
    Signed-off-by: Chris Wilson <<a href="mailto:chris@chris-wilson.co.uk">chris@chris-wilson.co.uk</a>>
    Reviewed-by: Tvrtko Ursulin <<a href="mailto:tvrtko.ursulin@intel.com">tvrtko.ursulin@intel.com</a>>
    Link:
<a href="https://patchwork.freedesktop.org/patch/msgid/20190114211729.30352-1-chris@chris-wilson.co.uk">https://patchwork.freedesktop.org/patch/msgid/20190114211729.30352-1-chris@chris-wilson.co.uk</a>

+

commit e8894267cc3325901073e8adf0a63e2dc53b6242
Author: Chris Wilson <<a href="mailto:chris@chris-wilson.co.uk">chris@chris-wilson.co.uk</a>>
Date:   Fri Dec 7 09:02:13 2018 +0000

    drm/i915: Pipeline PDP updates for Braswell

    Currently we face a severe problem on Braswell that manifests as invalid
    ppGTT accesses. The code tries to maintain the PDP (page directory
    pointers) inside the context in two ways, direct write into the context
    and a pipelined LRI update. The direct write into the context is
    fundamentally racy as it is unserialised with any access (read or write)
    the GPU is doing. By asserting that Braswell is not used with vGPU
    (currently an unsupported platform) we can eliminate the dangerous
    direct write into the context image and solely use the pipelined update.

    However, the LRI of the PDP fouls up the GPU, causing it to freeze and
    take out the machine with "forcewake ack timeouts". This seems possible
    to workaround by preventing the GPU from sleeping (via means of
    disabling the power-state management interface, i.e. forcing each ring
    to remain awake) around the update. Equally, it seems an EMIT_INVALIDATE
    before the LRI is sufficient to prevent the forcewake errors.

    Bugzilla: <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - [CI][BAT bsw] igt@gem_* - fail - Failed assertion: !"GPU hung""
   href="show_bug.cgi?id=108656">https://bugs.freedesktop.org/show_bug.cgi?id=108656</a>
    References: <a class="bz_bug_link 
          bz_status_NEEDINFO "
   title="NEEDINFO - [CI][BAT] igt@gem_* - incomplete - *ERROR* render/media: timed out waiting for forcewake ack request."
   href="show_bug.cgi?id=108714">https://bugs.freedesktop.org/show_bug.cgi?id=108714</a>
    Signed-off-by: Chris Wilson <<a href="mailto:chris@chris-wilson.co.uk">chris@chris-wilson.co.uk</a>>
    Cc: Tvrtko Ursulin <<a href="mailto:tvrtko.ursulin@intel.com">tvrtko.ursulin@intel.com</a>>
    Reviewed-by: Tvrtko Ursulin <<a href="mailto:tvrtko.ursulin@intel.com">tvrtko.ursulin@intel.com</a>>
    Link:
<a href="https://patchwork.freedesktop.org/patch/msgid/20181207090213.14352-3-chris@chris-wilson.co.uk">https://patchwork.freedesktop.org/patch/msgid/20181207090213.14352-3-chris@chris-wilson.co.uk</a></pre>
        </div>
      </p>


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

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