<html>
    <head>
      <base href="https://bugs.freedesktop.org/">
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [CI] igt@gem_userptr_blits@map-fixed-invalidate-gup - dmesg-warn: WARNING: possible circular locking dependency detected"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=104209#c3">Comment # 3</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [CI] igt@gem_userptr_blits@map-fixed-invalidate-gup - dmesg-warn: WARNING: possible circular locking dependency detected"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=104209">bug 104209</a>
              from <span class="vcard"><a class="email" href="mailto:daniel@ffwll.ch" title="Daniel Vetter <daniel@ffwll.ch>"> <span class="fn">Daniel Vetter</span></a>
</span></b>
        <pre>Repeating my analysis from the mail thread: This looks real:

<a href="https://www.spinics.net/lists/intel-gfx/msg150141.html">https://www.spinics.net/lists/intel-gfx/msg150141.html</a>

In both cases of the circle we seem to hit exactly the same gtt/drm_device
mapping locks. One way to break this is to make sure we do not call
flush_workqueue on a range which isn't userptr-mapped (which automatically
avoids gtt mmaps, since those are not allowed for userptr, or at least should).
That option still has the classification problem, and I'm honestly not sure
it's actually deadlock-free.

Or we have to somehow get rid of the flush_work from the mmu_notifier callback
entirely. Safest option, but I dunno how right now.</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>