Reviewed-by: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx> On Mon, Feb 23, 2015 at 3:03 AM, Daniel Vetter <daniel.vetter@xxxxxxxx> wrote: > Again, good riddance to UMS! > > Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxxx> > --- > drivers/gpu/drm/i915/i915_drv.c | 49 +++++++++++++++++++---------------------- > 1 file changed, 23 insertions(+), 26 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c > index c1a5377caff0..cc6c51107047 100644 > --- a/drivers/gpu/drm/i915/i915_drv.c > +++ b/drivers/gpu/drm/i915/i915_drv.c > @@ -863,38 +863,35 @@ int i915_reset(struct drm_device *dev) > * was running at the time of the reset (i.e. we weren't VT > * switched away). > */ > - if (drm_core_check_feature(dev, DRIVER_MODESET)) { > - /* Used to prevent gem_check_wedged returning -EAGAIN during gpu reset */ > - dev_priv->gpu_error.reload_in_reset = true; > > - ret = i915_gem_init_hw(dev); > + /* Used to prevent gem_check_wedged returning -EAGAIN during gpu reset */ > + dev_priv->gpu_error.reload_in_reset = true; > > - dev_priv->gpu_error.reload_in_reset = false; > + ret = i915_gem_init_hw(dev); > > - mutex_unlock(&dev->struct_mutex); > - if (ret) { > - DRM_ERROR("Failed hw init on reset %d\n", ret); > - return ret; > - } > - > - /* > - * FIXME: This races pretty badly against concurrent holders of > - * ring interrupts. This is possible since we've started to drop > - * dev->struct_mutex in select places when waiting for the gpu. > - */ > + dev_priv->gpu_error.reload_in_reset = false; > > - /* > - * rps/rc6 re-init is necessary to restore state lost after the > - * reset and the re-install of gt irqs. Skip for ironlake per > - * previous concerns that it doesn't respond well to some forms > - * of re-init after reset. > - */ > - if (INTEL_INFO(dev)->gen > 5) > - intel_enable_gt_powersave(dev); > - } else { > - mutex_unlock(&dev->struct_mutex); > + mutex_unlock(&dev->struct_mutex); > + if (ret) { > + DRM_ERROR("Failed hw init on reset %d\n", ret); > + return ret; > } > > + /* > + * FIXME: This races pretty badly against concurrent holders of > + * ring interrupts. This is possible since we've started to drop > + * dev->struct_mutex in select places when waiting for the gpu. > + */ > + > + /* > + * rps/rc6 re-init is necessary to restore state lost after the > + * reset and the re-install of gt irqs. Skip for ironlake per > + * previous concerns that it doesn't respond well to some forms > + * of re-init after reset. > + */ > + if (INTEL_INFO(dev)->gen > 5) > + intel_enable_gt_powersave(dev); > + > return 0; > } > > -- > 2.1.4 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx > http://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Rodrigo Vivi Blog: http://blog.vivi.eng.br _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx