linux_dsm_epyc7002/drivers/gpu/drm/i915/selftests
Chris Wilson 50689771c8 drm/i915: Only close vma we open
The history of i915_vma_close() is confusing, as is its use. As the
lifetime of the i915_vma is currently bounded by the object it is
attached to, we needed a means of identify when a vma was no longer in
use by userspace (via the user's fd). This is further complicated by
that only ppgtt vma should be closed at the user's behest, as the ggtt
were always shared.

Now that we attach the vma to a lut on the user's context, the open
count does indicate how many unique and open context/vm are referencing
this vma from the user. As such, we can and should just use the
open_count to track when the vma is still in use by userspace.

It's a poor man's replacement for reference counting.

Closes: https://gitlab.freedesktop.org/drm/intel/issues/1193
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Andi Shyti <andi.shyti@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200422190558.30509-1-chris@chris-wilson.co.uk
2020-04-24 11:24:45 +01:00
..
i915_active.c drm/i915: Allow for different modes of interruptible i915_active_wait 2020-03-30 18:20:33 +01:00
i915_buddy.c drm/i915/selftests: try to rein in alloc_smoke 2020-03-06 14:33:15 +00:00
i915_gem_evict.c drm/i915/gem: Drop cached obj->bind_count 2020-04-02 01:17:39 +01:00
i915_gem_gtt.c drm/i915: Only close vma we open 2020-04-24 11:24:45 +01:00
i915_gem.c drm/i915/gt: Pull restoration of GGTT fences underneath the GT 2020-03-16 20:28:28 +00:00
i915_live_selftests.h drm/i915: Add mechanism to submit a context WA on ring submission 2020-03-06 08:59:06 +00:00
i915_mock_selftests.h drm/i915/selftests: Make headers self-contained 2020-01-03 13:33:36 +00:00
i915_perf_selftests.h drm/i915/selftests: Add request throughput measurement to perf 2020-04-23 16:40:30 +01:00
i915_perf.c drm/i915/perf: remove generated code 2020-03-17 15:27:50 +02:00
i915_random.c
i915_random.h drm/i915: Add missing include file <linux/math64.h> 2020-01-07 14:04:31 +00:00
i915_request.c drm/i915/selftests: Add request throughput measurement to perf 2020-04-23 16:40:30 +01:00
i915_selftest.c drm/i915/selftests: Perform some basic cycle counting of MI ops 2019-11-11 18:30:13 +00:00
i915_sw_fence.c
i915_syncmap.c
i915_vma.c
igt_atomic.c drm/i915/selftests: Move igt_atomic_section[] out of the header 2020-01-03 13:31:39 +00:00
igt_atomic.h drm/i915/selftests: Move igt_atomic_section[] out of the header 2020-01-03 13:31:39 +00:00
igt_flush_test.c
igt_flush_test.h
igt_live_test.c
igt_live_test.h drm/i915/selftests: Make headers self-contained 2020-01-03 13:33:36 +00:00
igt_mmap.c drm/i915/selftests: Wrap vm_mmap() around GEM objects 2019-11-07 21:22:58 +00:00
igt_mmap.h drm/i915/selftests: Wrap vm_mmap() around GEM objects 2019-11-07 21:22:58 +00:00
igt_reset.c
igt_reset.h
igt_spinner.c drm/i915: Apply i915_request_skip() on submission 2020-03-04 14:29:50 +00:00
igt_spinner.h
intel_memory_region.c drm/i915/selftests/perf: watch out for stolen objects 2020-03-23 11:52:34 +00:00
intel_uncore.c
lib_sw_fence.c
lib_sw_fence.h
librapl.c drm/i915/selftests: Move gpu energy measurement into its own little lib 2020-04-17 18:48:51 +01:00
librapl.h drm/i915/selftests: Move gpu energy measurement into its own little lib 2020-04-17 18:48:51 +01:00
mock_drm.h drm/i915/selftests: make mock_drm.h self-contained 2019-12-23 12:38:43 +02:00
mock_gem_device.c drm/i915: Drop final few uses of drm_i915_private.engine 2020-03-26 10:50:17 +00:00
mock_gem_device.h
mock_gtt.c drm/i915/gtt: split up i915_gem_gtt 2020-01-07 19:27:36 +00:00
mock_gtt.h drm/i915: make more headers self-contained 2019-11-08 10:16:13 +00:00
mock_region.c
mock_region.h drm/i915: make more headers self-contained 2019-11-08 10:16:13 +00:00
mock_request.c
mock_request.h
mock_uncore.c
mock_uncore.h drm/i915: make more headers self-contained 2019-11-08 10:16:13 +00:00
scatterlist.c