drm/i915: Rework GPU reset sequence to match driver load & thaw
This patch is to address Daniels concerns over different code during reset: http://lists.freedesktop.org/archives/intel-gfx/2014-June/047758.html "The reason for aiming as hard as possible to use the exact same code for driver load, gpu reset and runtime pm/system resume is that we've simply seen too many bugs due to slight variations and unintended omissions." Tested using igt drv_hangman. V2: Cleaner way of preventing check_wedge returning -EAGAIN V3: Clean the last_context during reset, to ensure do_switch() does the MI_SET_CONTEXT. As per review. Signed-off-by: McAulay, Alistair <alistair.mcaulay@intel.com> Reviewed-by: Mika Kuoppala <mika.kuoppala@intel.com> [danvet: Rebase over ctx->ppgtt rework and extend the comment in check_wedge a bit.] Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
このコミットが含まれているのは:
@@ -1085,7 +1085,13 @@ i915_gem_check_wedge(struct i915_gpu_error *error,
|
||||
if (i915_terminally_wedged(error))
|
||||
return -EIO;
|
||||
|
||||
return -EAGAIN;
|
||||
/*
|
||||
* Check if GPU Reset is in progress - we need intel_ring_begin
|
||||
* to work properly to reinit the hw state while the gpu is
|
||||
* still marked as reset-in-progress. Handle this with a flag.
|
||||
*/
|
||||
if (!error->reload_in_reset)
|
||||
return -EAGAIN;
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
新しいイシューから参照
ユーザーをブロックする