<html>
    <head>
      <base href="https://bugs.freedesktop.org/">
    </head>
    <body><span class="vcard"><a class="email" href="mailto:ville.syrjala@linux.intel.com" title="Ville Syrjala <ville.syrjala@linux.intel.com>"> <span class="fn">Ville Syrjala</span></a>
</span> changed
          <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [PNV][regression] N450 and D510 machines get stuck in igt@gem_ringfill@basic-default-hang"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=99093">bug 99093</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;">Summary</td>
           <td>[PNV] N450 and D510 machines get stuck in igt@gem_ringfill@basic-default-hang
           </td>
           <td>[PNV][regression] N450 and D510 machines get stuck in igt@gem_ringfill@basic-default-hang
           </td>
         </tr></table>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [PNV][regression] N450 and D510 machines get stuck in igt@gem_ringfill@basic-default-hang"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=99093#c1">Comment # 1</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [PNV][regression] N450 and D510 machines get stuck in igt@gem_ringfill@basic-default-hang"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=99093">bug 99093</a>
              from <span class="vcard"><a class="email" href="mailto:ville.syrjala@linux.intel.com" title="Ville Syrjala <ville.syrjala@linux.intel.com>"> <span class="fn">Ville Syrjala</span></a>
</span></b>
        <pre>And the actual cause for this regression are the direct i915_reset() calls
added by:
4680816be336 ("drm/i915: Wait first for submission, before waiting for request
completion")
221fe7994554 ("drm/i915: Perform a direct reset of the GPU from the waiter")

As the GPU reset kills the display engine on these old platforms, you can't
just go yanking on the reset line at any time. The procedure used by
i915_reset_and_wakeup() is to disable all display functions first, then perform
the reset, and finally re-enable the display functions. That is safe, whereas
anything else isn't really.

The spec (the old configdb which no longer exists sadly) suggested that one
should at least disable all planes before yanking on the reset, but as is
demonstrated by this failure mode even that isn't sufficient. If you yank the
reset at the wrong time you could even hard hang the machine (eg. by poking at
the LUT with the DPLL off).</pre>
        </div>
      </p>


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

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