linux_dsm_epyc7002/drivers/gpu/drm/i915/gem
Chris Wilson da42104f58 drm/i915: Hold reference to intel_frontbuffer as we track activity
Since obj->frontbuffer is no longer protected by the struct_mutex, as we
are processing the execbuf, it may be removed. Mark the
intel_frontbuffer as rcu protected, and so acquire a reference to
the struct as we track activity upon it.

Closes: https://gitlab.freedesktop.org/drm/intel/issues/827
Fixes: 8e7cb1799b ("drm/i915: Extract intel_frontbuffer active tracking")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Matthew Auld <matthew.auld@intel.com>
Cc: <stable@vger.kernel.org> # v5.4+
Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20191218104043.3539458-1-chris@chris-wilson.co.uk
2019-12-18 12:09:57 +00:00
..
selftests drm/i915/gem: Apply lmem size restriction to get_pages 2019-12-16 23:13:12 +00:00
i915_gem_busy.c dma-buf: Restore seqlock around dma_resv updates 2019-08-16 12:40:58 +01:00
i915_gem_clflush.c drm/i915: Hold reference to intel_frontbuffer as we track activity 2019-12-18 12:09:57 +00:00
i915_gem_clflush.h drm/i915: Move more GEM objects under gem/ 2019-05-28 12:45:29 +01:00
i915_gem_client_blt.c drm/i915: Drop struct_mutex from around i915_retire_requests() 2019-10-04 15:39:17 +01:00
i915_gem_client_blt.h drm/i915: add in-kernel blitter client 2019-05-30 12:01:44 +01:00
i915_gem_context_types.h drm/i915/gem: Excise the per-batch whitelist from the context 2019-11-28 11:39:50 +00:00
i915_gem_context.c drm/i915: Fix pid leak with banned clients 2019-12-17 22:17:28 +00:00
i915_gem_context.h drm/i915/gem: Make context persistence optional 2019-10-29 21:02:52 +00:00
i915_gem_dmabuf.c drm/i915/gem: Distinguish each object type 2019-10-22 16:23:32 +01:00
i915_gem_domain.c drm/i915: Hold reference to intel_frontbuffer as we track activity 2019-12-18 12:09:57 +00:00
i915_gem_execbuffer.c drm/i915/gem: Keep request alive while attaching fences 2019-12-17 15:10:00 +00:00
i915_gem_fence.c Merge drm/drm-next into drm-intel-next-queued 2019-08-22 00:10:36 -07:00
i915_gem_internal.c drm/i915/gem: Distinguish each object type 2019-10-22 16:23:32 +01:00
i915_gem_ioctls.h drm/i915: Introduce DRM_I915_GEM_MMAP_OFFSET 2019-12-04 15:11:44 +00:00
i915_gem_lmem.c drm/i915/gem: Apply lmem size restriction to get_pages 2019-12-16 23:13:12 +00:00
i915_gem_lmem.h drm/i915/lmem: support kernel mapping 2019-10-25 22:55:43 +01:00
i915_gem_mman.c drm/i915/gem: Comment on inability to check args.pad for MMAP_OFFSET 2019-12-09 09:57:57 +00:00
i915_gem_mman.h drm/i915: Introduce DRM_I915_GEM_MMAP_OFFSET 2019-12-04 15:11:44 +00:00
i915_gem_object_blt.c drm/i915/blt: fixup block_size rounding 2019-10-29 06:57:20 +00:00
i915_gem_object_blt.h drm/i915/blt: support copying objects 2019-08-10 19:35:36 +01:00
i915_gem_object_types.h drm/i915: Hold reference to intel_frontbuffer as we track activity 2019-12-18 12:09:57 +00:00
i915_gem_object.c drm/i915: Hold reference to intel_frontbuffer as we track activity 2019-12-18 12:09:57 +00:00
i915_gem_object.h drm/i915: Hold reference to intel_frontbuffer as we track activity 2019-12-18 12:09:57 +00:00
i915_gem_pages.c drm/i915: Introduce DRM_I915_GEM_MMAP_OFFSET 2019-12-04 15:11:44 +00:00
i915_gem_phys.c drm/i915: Switch obj->mm.lock lockdep annotations on its head 2019-11-07 09:58:11 +01:00
i915_gem_pm.c drm/i915: Introduce new macros for tracing 2019-12-13 20:16:23 +00:00
i915_gem_pm.h drm/i915: Teach record_defaults to operate on the intel_gt 2019-10-22 20:43:07 +01:00
i915_gem_region.c drm/i915: Remove unneeded semicolon 2019-12-16 23:13:12 +00:00
i915_gem_region.h drm/i915/region: support contiguous allocations 2019-10-08 20:50:01 +01:00
i915_gem_shmem.c drm/i915/gem: Distinguish each object type 2019-10-22 16:23:32 +01:00
i915_gem_shrinker.c Merge drm/drm-next into drm-intel-next-queued 2019-12-11 11:13:50 +02:00
i915_gem_shrinker.h drm/i915: extract i915_gem_shrinker.h from i915_drv.h 2019-08-09 12:03:32 +03:00
i915_gem_stolen.c drm/i915/gem: Pass mem region to preallocated stolen 2019-11-11 19:22:18 +00:00
i915_gem_stolen.h drm/i915: treat stolen as a region 2019-10-18 12:41:05 +01:00
i915_gem_throttle.c drm/i915: Keep drm_i915_file_private around under RCU 2019-08-23 22:13:17 +01:00
i915_gem_tiling.c drm/i915: Introduce DRM_I915_GEM_MMAP_OFFSET 2019-12-04 15:11:44 +00:00
i915_gem_userptr.c drm/i915/gem: Wait on unbind barriers when invalidating userptr 2019-12-11 11:28:01 +00:00
i915_gem_wait.c dma-buf: rename reservation_object to dma_resv 2019-08-13 09:09:30 +02:00
i915_gemfs.c drm/i915: Stop reconfiguring our shmemfs mountpoint 2019-08-09 20:18:30 +01:00
i915_gemfs.h drm/i915: Move more GEM objects under gem/ 2019-05-28 12:45:29 +01:00
Makefile drm/i915: use upstream version of header tests 2019-07-30 12:11:57 +03:00