Re: [PATCH] drm/i915: get runtime PM reference around GEM set_caching IOCTL

Daniel Vetter
2015-11-17T22:16:10Z

On Thu, Nov 5, 2015 at 12:56 PM, Chris Wilson <chris@chris-wilson.co.uk> wrote:
> The tricky part is reviewing the i915_gem_release_mmap() callers to
> ensure that they have the right barrier. If you make
> i915_gem_release_mmap() assert it holds an rpm ref, and then make the
> i915_gem_release_all_mmaps() unlink the node directly that should do the
> trick.

I think the easier solution would be to add a mutex for the
fault_list. We call release_mmap from a lot of places, and for many it
doesn't make sense or would be nontrivial to guarantee that we hold an
rpm reference. The lock won't be a problem as long as it's always
nested within the rpm_get/put and never the other way round (which was
all the trouble with dev->struct_mutex).

Since this is creating noise in the CI system with

pci_pm_runtime_suspend(): intel_runtime_suspend+0x0/0x240 [i915] returns -11

can you please bake this into a proper patch?

Thanks, Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch