linux/drivers/gpu/drm
Nicolai Hähnle 9fc15f5fc8 drm/amdgpu: fix user fence write race condition
The buffer object backing the user fence is reserved using the non-user
fence, i.e., as soon as the non-user fence is signaled, the user fence
buffer object can be moved or even destroyed.

Therefore, emit the user fence first.

Both fences have the same cache invalidation behavior, so this should
have no user-visible effect.

Signed-off-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2018-07-05 16:39:57 -05:00
..
amd drm/amdgpu: fix user fence write race condition 2018-07-05 16:39:57 -05:00
arc
arm
armada dma-buf: remove kmap_atomic interface 2018-06-20 15:59:34 +02:00
ast
atmel-hlcdc Merge v4.18-rc3 into drm-next 2018-07-04 10:27:12 +10:00
bochs
bridge Merge v4.18-rc3 into drm-next 2018-07-04 10:27:12 +10:00
cirrus
etnaviv drm/scheduler: Rename cleanup functions v2. 2018-07-05 16:38:45 -05:00
exynos drm-misc-next for 4.19: 2018-06-22 12:58:08 +10:00
fsl-dcu
gma500 drm-misc-next for 4.19: 2018-06-28 13:29:07 +10:00
hisilicon drm: kirin: Remove useless "Scale not support" error message 2018-06-25 18:09:38 +02:00
i2c Merge drm-upstream/drm-next into drm-misc-next 2018-06-20 13:22:22 -03:00
i810
i915 Merge v4.18-rc3 into drm-next 2018-07-04 10:27:12 +10:00
imx
lib
mediatek Merge drm-upstream/drm-next into drm-misc-next 2018-06-20 13:22:22 -03:00
meson drm/meson: Fix an un-handled error path in 'meson_drv_bind_master()' 2018-06-26 10:22:29 +02:00
mga
mgag200
msm drm-misc-next for 4.19: 2018-06-22 12:58:08 +10:00
mxsfb
nouveau Merge branch 'linux-4.18' of git://github.com/skeggsb/linux into drm-fixes 2018-06-20 16:57:09 +10:00
omapdrm drm/omap: remove now unused functions 2018-06-25 13:28:06 +10:00
panel drm/panel: Add Ilitek ILI9881c panel driver 2018-06-25 20:03:40 +02:00
pl111
qxl Only a small qxl fix that was queued for v4.17. 2018-06-20 16:58:49 +10:00
r128
radeon drm/radeon: add SPDX identifier and clarify license 2018-07-05 16:39:54 -05:00
rcar-du
rockchip drm/rockchip: vop: fixup linebuffer mode calc error 2018-06-27 14:07:40 +02:00
savage
scheduler drm/scheduler: Rename cleanup functions v2. 2018-07-05 16:38:45 -05:00
selftests drm-misc-next for 4.19: 2018-06-22 12:58:08 +10:00
shmobile
sis
sti
stm
sun4i Merge v4.18-rc3 into drm-next 2018-07-04 10:27:12 +10:00
tdfx
tegra Merge drm-upstream/drm-next into drm-misc-next 2018-06-20 13:22:22 -03:00
tilcdc
tinydrm drm-misc-next for 4.19: 2018-06-28 13:29:07 +10:00
ttm Merge branch 'drm-next-4.19' of git://people.freedesktop.org/~agd5f/linux into drm-next 2018-06-22 13:19:05 +10:00
tve200
udl dma-buf: remove kmap_atomic interface 2018-06-20 15:59:34 +02:00
v3d drm/scheduler: Rename cleanup functions v2. 2018-07-05 16:38:45 -05:00
vc4 drm-misc-next for 4.19: 2018-06-28 13:29:07 +10:00
vgem
via
virtio
vmwgfx drm-misc-next for 4.19: 2018-06-22 12:58:08 +10:00
xen drm-misc-next for 4.19: 2018-06-22 12:58:08 +10:00
zte
ati_pcigart.c
drm_agpsupport.c
drm_atomic.c Merge drm-upstream/drm-next into drm-misc-next 2018-06-20 13:22:22 -03:00
drm_atomic_helper.c drm: Add writeback connector type 2018-06-20 15:27:49 +01:00
drm_auth.c
drm_blend.c
drm_bridge.c
drm_bufs.c
drm_cache.c
drm_color_mgmt.c
drm_connector.c drm: Add writeback connector type 2018-06-20 15:27:49 +01:00
drm_context.c
drm_crtc.c
drm_crtc_helper.c
drm_crtc_helper_internal.h
drm_crtc_internal.h drm: Make ioctls available for in-kernel clients 2018-06-25 16:20:14 +02:00
drm_debugfs.c
drm_debugfs_crc.c
drm_dma.c
drm_dp_aux_dev.c
drm_dp_dual_mode_helper.c
drm_dp_helper.c
drm_dp_mst_topology.c
drm_drv.c Single fix for v4.18: 2018-06-20 16:58:31 +10:00
drm_dumb_buffers.c drm-misc-next for 4.19: 2018-06-28 13:29:07 +10:00
drm_edid.c drm-misc-next for 4.19: 2018-06-22 12:58:08 +10:00
drm_edid_load.c
drm_encoder.c
drm_encoder_slave.c
drm_fb_cma_helper.c
drm_fb_helper.c
drm_file.c drm/file: Don't set master on in-kernel clients 2018-06-25 16:18:39 +02:00
drm_flip_work.c
drm_fourcc.c
drm_framebuffer.c drm: Make ioctls available for in-kernel clients 2018-06-25 16:20:14 +02:00
drm_gem.c
drm_gem_cma_helper.c
drm_gem_framebuffer_helper.c drm/gem-fb-helper: Always do implicit sync 2018-06-20 14:43:13 +02:00
drm_global.c
drm_hashtab.c
drm_info.c
drm_internal.h drm: provide management functions for drm_file 2018-06-25 16:17:03 +02:00
drm_ioc32.c
drm_ioctl.c drm: Make ioctls available for in-kernel clients 2018-06-25 16:20:14 +02:00
drm_irq.c
drm_kms_helper_common.c
drm_lease.c
drm_legacy.h
drm_lock.c
drm_memory.c
drm_mipi_dsi.c
drm_mm.c
drm_mode_config.c drm: writeback: Add client capability for exposing writeback connectors 2018-06-20 15:30:20 +01:00
drm_mode_object.c
drm_modes.c
drm_modeset_helper.c
drm_modeset_lock.c
drm_of.c drm: of: Export and rename drm_crtc_port_mask() 2018-06-27 21:44:04 +02:00
drm_panel.c
drm_panel_orientation_quirks.c
drm_pci.c
drm_plane.c
drm_plane_helper.c
drm_prime.c dma-buf: remove kmap_atomic interface 2018-06-20 15:59:34 +02:00
drm_print.c
drm_probe_helper.c
drm_property.c
drm_rect.c
drm_scatter.c
drm_scdc_helper.c
drm_simple_kms_helper.c
drm_syncobj.c
drm_sysfs.c
drm_trace.h
drm_trace_points.c
drm_vblank.c
drm_vm.c
drm_vma_manager.c
drm_writeback.c drm: writeback: Add out-fences for writeback connectors 2018-06-20 15:29:18 +01:00
Kconfig
Makefile drm: Add writeback connector type 2018-06-20 15:27:49 +01:00