[Intel-gfx] [PATCH 12/18] drm/i915: try to reset the gpu before unload
Jesse Barnes
jbarnes at virtuousgeek.org
Fri Mar 30 18:54:31 CEST 2012
On Sun, 18 Mar 2012 13:39:52 -0700
Ben Widawsky <ben at bwidawsk.net> wrote:
> paranoia
>
> For context support the HW expects the default context to always be
> available as there is no way to shut off HW contexts once turned on
> (afaics). This is problematic when unloading the driver as we have no
> way to prevent the GPU from expecting the BO to still be present once
> unloaded.
>
> The best we can do to remedy the situation is to attempt a GPU reset
> when doing the unload.
>
> NOTE: this patch isn't *really* required to go with the rest of the
> context serious.
>
> Signed-off-by: Ben Widawsky <ben at bwidawsk.net>
> ---
> drivers/gpu/drm/i915/i915_gem.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
> index c1aab45..848cc45 100644
> --- a/drivers/gpu/drm/i915/i915_gem.c
> +++ b/drivers/gpu/drm/i915/i915_gem.c
> @@ -3910,6 +3910,9 @@ i915_gem_lastclose(struct drm_device *dev)
> ret = i915_gem_idle(dev);
> if (ret)
> DRM_ERROR("failed to idle hardware: %d\n", ret);
> + ret = i915_reset(dev, GRDOM_FULL);
> + if (ret)
> + DRM_ERROR("failed to reset gpu: %d\n", ret);
> }
>
> static void
This reminds me that we should make our reset finer grained. We
generally only need to reset the render engine when we detect an error,
but today we reset display and media unconditionally too. Not
resetting the display would make reset more invisible like it ought to
be...
I haven't tested it, but it's yet another thing for our TODO list.
--
Jesse Barnes, Intel Open Source Technology Center
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/intel-gfx/attachments/20120330/dcc60e68/attachment.sig>
More information about the Intel-gfx
mailing list