Quoting Daniel Vetter (2017-10-11 15:25:21) > On Wed, Oct 11, 2017 at 03:18:57PM +0100, Chris Wilson wrote: > > diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c > > index 9af5c369d19e..3bef650c3d62 100644 > > --- a/drivers/gpu/drm/i915/i915_drv.c > > +++ b/drivers/gpu/drm/i915/i915_drv.c > > @@ -616,9 +616,10 @@ static void i915_gem_fini(struct drm_i915_private *dev_priv) > > intel_uc_fini_hw(dev_priv); > > i915_gem_cleanup_engines(dev_priv); > > i915_gem_contexts_fini(dev_priv); > > - i915_gem_cleanup_userptr(dev_priv); > > I think it'd be good if we could push locks like this down further, > instead of sprawling them like this. Slow steps away from a bkl. This locking only existed for lockdep and everything just gets clumped together because that's easy. userptr itself still has that awful interaction with having to unbind from an active gpu. Even if we manage to wave a magic wand to get rid of the struct_mutex, we would still have a lock in common with i915_gem_fault, all the GTT, and an untold sleep. -Chris _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx