linux_dsm_epyc7002/drivers/gpu/drm/msm
Daniel Vetter 92ec076771 drm/msm: Don't init ww_mutec acquire ctx before needed
For locking semantics it really doesn't matter when we grab the
ticket. But for lockdep validation it does: the acquire ctx is a fake
lockdep. Since other drivers might want to do a full multi-lock dance
in their fault-handler, not just lock a single dma_resv. Therefore we
must init the acquire_ctx only after we've done all the copy_*_user or
anything else that might trigger a pagefault. For msm this means we
need to move it past submit_lookup_objects.

Aside: Why is msm still using struct_mutex, it seems to be using
dma_resv_lock for general buffer state protection?

v2:
- Add comment to explain why the ww ticket setup is separate (Rob)
- Fix up error handling, we need to make sure we don't call
  ww_acquire_fini without _init.

Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Reviewed-and-tested-by: Rob Clark <robdclark@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Cc: Rob Clark <robdclark@gmail.com>
Cc: Sean Paul <sean@poorly.run>
Cc: linux-arm-msm@vger.kernel.org
Cc: freedreno@lists.freedesktop.org
Link: https://patchwork.freedesktop.org/patch/msgid/20191120105607.3023-1-daniel.vetter@ffwll.ch
2019-11-21 11:03:31 +01:00
..
adreno drm/msm: Use generic bulk clock function 2019-09-03 16:16:58 -07:00
disp Merge drm/drm-next into drm-misc-next 2019-10-03 16:38:50 +02:00
dsi Linux 5.4-rc4 2019-10-23 12:10:05 +02:00
edp drm/msm: edp: Avoid drm_dp_link helpers 2019-10-23 18:20:31 +02:00
hdmi drm/msm/hdmi: Provide ddc symlink in hdmi connector sysfs directory 2019-11-07 15:08:23 +01:00
Kconfig drm/msm: Remove Kconfig default 2019-09-03 16:16:59 -07:00
Makefile drm/msm: add atomic traces 2019-09-03 16:17:02 -07:00
msm_atomic_trace.h drm/msm: add atomic traces 2019-09-03 16:17:02 -07:00
msm_atomic_tracepoints.c drm/msm: add atomic traces 2019-09-03 16:17:02 -07:00
msm_atomic.c drm/msm: add atomic traces 2019-09-03 16:17:02 -07:00
msm_debugfs.c drm/msm: drop use of drmP.h 2019-09-03 16:16:57 -07:00
msm_debugfs.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 234 2019-06-19 17:09:07 +02:00
msm_drv.c drm/msm: async commit support 2019-09-03 16:17:01 -07:00
msm_drv.h drm/msm: async commit support 2019-09-03 16:17:01 -07:00
msm_fb.c drm/msm: drop use of drmP.h 2019-09-03 16:16:57 -07:00
msm_fbdev.c drm/msm: Transition console to msm framebuffer 2019-09-03 16:16:58 -07:00
msm_fence.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 234 2019-06-19 17:09:07 +02:00
msm_fence.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 234 2019-06-19 17:09:07 +02:00
msm_gem_prime.c drm/msm: drop use of drmP.h 2019-09-03 16:16:57 -07:00
msm_gem_shrinker.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 234 2019-06-19 17:09:07 +02:00
msm_gem_submit.c drm/msm: Don't init ww_mutec acquire ctx before needed 2019-11-21 11:03:31 +01:00
msm_gem_vma.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 234 2019-06-19 17:09:07 +02:00
msm_gem.c drm/msm: Use the correct dma_sync calls harder 2019-09-04 10:05:05 -07:00
msm_gem.h dma-buf: rename reservation_object to dma_resv 2019-08-13 09:09:30 +02:00
msm_gpu_trace.h drm/msm: add atomic traces 2019-09-03 16:17:02 -07:00
msm_gpu_tracepoints.c drm/msm/gpu: Add trace events for tracking GPU submissions 2018-12-11 13:05:28 -05:00
msm_gpu.c drm/msm: Use generic bulk clock function 2019-09-03 16:16:58 -07:00
msm_gpu.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 234 2019-06-19 17:09:07 +02:00
msm_gpummu.c drm/msm: drop use of drmP.h 2019-09-03 16:16:57 -07:00
msm_iommu.c drm main pull request for v5.3-rc1 (sans mm changes) 2019-07-15 19:04:27 -07:00
msm_kms.h drm/msm/dpu: async commit support 2019-09-03 16:17:01 -07:00
msm_mmu.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 234 2019-06-19 17:09:07 +02:00
msm_perf.c drm/msm: drop use of drmP.h 2019-09-03 16:16:57 -07:00
msm_rd.c drm/msm: drop use of drmP.h 2019-09-03 16:16:57 -07:00
msm_ringbuffer.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 234 2019-06-19 17:09:07 +02:00
msm_ringbuffer.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 234 2019-06-19 17:09:07 +02:00
msm_submitqueue.c drm/msm: drop use of drmP.h 2019-09-03 16:16:57 -07:00
NOTES