[Bug 70334] [bisected]igt/module_reload causes system hang on queued branch
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Wed Oct 16 13:55:04 CEST 2013
https://bugs.freedesktop.org/show_bug.cgi?id=70334
Chris Wilson <chris at chris-wilson.co.uk> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution|--- |FIXED
--- Comment #14 from Chris Wilson <chris at chris-wilson.co.uk> ---
commit 8d6a7791a8b72dea5773271f23a1460e1eee27dd
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date: Wed Oct 16 11:50:01 2013 +0100
drm/i915: Disable all GEM timers and work on unload
We have two once very similar functions, i915_gpu_idle() and
i915_gem_idle(). The former is used as the lower level operation to
flush work on the GPU, whereas the latter is the high level interface to
flush the GEM bookkeeping in addition to flushing the GPU. As such
i915_gem_idle() also clears out the request and activity lists and
cancels the delayed work. This is what we need for unloading the driver,
unfortunately we called i915_gpu_idle() instead.
In the process, make sure that when cancelling the delayed work and
timer, which is synchronous, that we do not hold any locks to prevent a
deadlock if the work item is already waiting upon the mutex. This
requires us to push the mutex down from the caller to i915_gem_idle().
v2: s/i915_gem_idle/i915_gem_suspend/
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=70334
Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
Tested-by: xunx.fang at intel.com
Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
--
You are receiving this mail because:
You are the QA Contact for the bug.
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/intel-gfx-bugs/attachments/20131016/5dcd0e2f/attachment.html>
More information about the intel-gfx-bugs
mailing list