Re: [PATCH 4/6] drm/i915: Wait for all engines to be idle as part of i915_gem_wait_for_idle()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Mar 31, 2017 at 11:31:50AM +0300, Joonas Lahtinen wrote:
> On to, 2017-03-30 at 15:50 +0100, Chris Wilson wrote:
> > Make i915_gem_wait_for_idle() be a little heavier in order to try and
> > guarantee that the GPU is indeed idle (by checking each engine
> > individually is idle, i.e. all writes are complete and the rings
> > stopped) after waiting for in-flight requests to be completed.
> > 
> > v2: And return the final error.
> > v3: Break the wait_for() out from under the WARN -- the macro expansion
> > is hideous and unreadable in the warning message
> > v4: If wait_for_engine() fails the result is catastrophic, mark the
> > device as wedged and wait for the repair team.
> > 
> > References: https://bugs.freedesktop.org/show_bug.cgi?id=98836
> > Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
> 
> That's more accurate yep, but is our other bookkeeping broken then?

Not as far as I can tell. It's just that the engines can be alive a
little bit longer than the breadcrumb write, and in some circumstances
that is an important distinction.

Just just wtf is going on with Baytrail elludes me. It's like the GPU is
doing a timewarp.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/intel-gfx




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux