drm/exynos: fix pending update handling
authorAndrzej Hajda <a.hajda@samsung.com>
Mon, 26 Sep 2016 07:50:21 +0000 (16:50 +0900)
committerInki Dae <daeinki@gmail.com>
Fri, 30 Sep 2016 15:39:35 +0000 (00:39 +0900)
commit14e022f3041d5b0406c7d7175e350e0bf420e625
tree31ae4026254263a97c3dafb3f5acce921a11368f
parent8574e927b4818320257d8b965fb7e0b832532aff
drm/exynos: fix pending update handling

Exynos DRM devices update their registers at vblank time. Exynos-DRM uses
custom mechanism to wait for vblank. This mechanism is error prone -
variables are not updated atomically. As a result in certain circumstances
user space can try to free buffers which are still in use by hardware,
in such cases IOMMU can throw OOPS.
The patch instead of fixing the mechanism replaces it with drm core helper.

Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Reviewed-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
drivers/gpu/drm/exynos/exynos_drm_crtc.c
drivers/gpu/drm/exynos/exynos_drm_drv.c
drivers/gpu/drm/exynos/exynos_drm_drv.h