linux-stable/drivers/gpu/drm
Thomas Hellstrom 355a701838 drm/gem: Warn on illegal use of the dumb buffer interface v2
It happens on occasion that developers of generic user-space applications
abuse the dumb buffer API to get hold of drm buffers that they can both
mmap() and use for GPU acceleration, using the assumptions that dumb buffers
and buffers available for GPU are
a) The same type and can be aribtrarily type-casted.
b) fully coherent.

This patch makes the most widely used drivers warn nicely when that happens,
the next step will be to fail.

v2: Move drmP.h changes to drm_gem.h. Fix Radeon dumb mmap breakage.

Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
2014-11-21 12:12:41 +10:00
..
amd amdkfd: Implement the Get Version IOCTL 2014-11-02 12:18:29 +02:00
armada Linux 3.18-rc4 2014-11-12 17:53:30 +10:00
ast drm: Move drm_crtc_init from drm_crtc.h to drm_plane_helper.h 2014-11-05 00:14:55 +01:00
bochs bochs: add page_flip 2014-11-20 11:27:31 +10:00
bridge
cirrus drm/cirrus: allow 32bpp framebuffers for cirrus drm 2014-11-20 11:42:46 +10:00
exynos drm/panel: Changes for v3.19-rc1 2014-11-15 09:36:13 +10:00
gma500 drm: Miscellaneous fixes for v3.19-rc1 2014-11-15 09:37:20 +10:00
i2c
i810 drm: move drm_mmap to <drm/drm_legacy.h> 2014-09-24 11:43:07 +10:00
i915 drm/gem: Warn on illegal use of the dumb buffer interface v2 2014-11-21 12:12:41 +10:00
mga drm: move drm_mmap to <drm/drm_legacy.h> 2014-09-24 11:43:07 +10:00
mgag200 drm: Move drm_crtc_init from drm_crtc.h to drm_plane_helper.h 2014-11-05 00:14:55 +01:00
msm drm/msm: a4xx support for msm-drm 2014-11-16 14:27:40 -05:00
nouveau drm/gem: Warn on illegal use of the dumb buffer interface v2 2014-11-21 12:12:41 +10:00
omapdrm drm: omapdrm: remove unused variable 2014-11-20 11:29:39 +10:00
panel drm/panel: Add Sharp LQ101R1SX01 support 2014-11-13 13:56:19 +01:00
qxl drm/qxl: drop unused mode private pointer 2014-11-15 10:15:30 +10:00
r128 drm: remove unnecessary sizeof(u8) 2014-11-20 11:30:37 +10:00
radeon drm/gem: Warn on illegal use of the dumb buffer interface v2 2014-11-21 12:12:41 +10:00
rcar-du drm: Sanitize DRM_IOCTL_MODE_CREATE_DUMB input 2014-11-15 09:50:21 +10:00
savage drm: move drm_mmap to <drm/drm_legacy.h> 2014-09-24 11:43:07 +10:00
shmobile drm: Move drm_crtc_init from drm_crtc.h to drm_plane_helper.h 2014-11-05 00:14:55 +01:00
sis drm: move drm_mmap to <drm/drm_legacy.h> 2014-09-24 11:43:07 +10:00
sti drm: Move drm_crtc_init from drm_crtc.h to drm_plane_helper.h 2014-11-05 00:14:55 +01:00
tdfx drm: move drm_mmap to <drm/drm_legacy.h> 2014-09-24 11:43:07 +10:00
tegra drm/tegra: Changes for v3.19-rc1 2014-11-15 09:38:55 +10:00
tilcdc drm: flip-work: change drm_flip_work_init prototype 2014-11-15 09:29:14 +10:00
ttm drm/ttm: Avoid memory allocation from shrinker functions. 2014-11-20 11:31:56 +10:00
udl drm/udl: add support to export a handle to a FD on UDL. 2014-11-20 11:41:37 +10:00
via drm: move drm_mmap to <drm/drm_legacy.h> 2014-09-24 11:43:07 +10:00
vmwgfx drm: Per-plane locking 2014-11-12 17:56:12 +10:00
ati_pcigart.c drm: split ati_pcigart.h out of drmP.h 2014-09-12 14:11:14 +10:00
drm_agpsupport.c drm: move AGP definitions harder 2014-09-10 17:40:11 +10:00
drm_atomic.c drm/atomic: Don't overrun the connector array when hotplugging 2014-11-20 11:35:20 +10:00
drm_atomic_helper.c drm/atomic_helper: Make it clear that commit_planes gets the old state 2014-11-20 11:35:22 +10:00
drm_auth.c drm: Move piles of functions from drmP.h to drm_internal.h 2014-09-12 11:16:29 +02:00
drm_bufs.c drm: Move __drm_pci_free to drm_legacy.h 2014-09-12 11:08:56 +02:00
drm_cache.c
drm_context.c
drm_crtc.c drm: s/enum_blob_list/enum_list/ in drm_property 2014-11-20 11:35:21 +10:00
drm_crtc_helper.c drm/atomic: Refcounting for plane_state->fb 2014-11-06 21:08:37 +01:00
drm_crtc_internal.h
drm_debugfs.c drm: Move piles of functions from drmP.h to drm_internal.h 2014-09-12 11:16:29 +02:00
drm_dma.c drm: Move legacy buffer structures to <drm/drm_legacy.h> 2014-09-12 15:28:12 +02:00
drm_dp_helper.c drm/dp: Add counters in the drm_dp_aux struct for I2C NACKs and DEFERs 2014-11-05 14:03:22 +01:00
drm_dp_mst_topology.c drm/dp/mst: Handle invalid link bandwidth from DPCD gracefully 2014-11-15 09:31:34 +10:00
drm_drv.c drm: drm_err: Remove unnecessary __func__ argument 2014-10-12 20:57:16 +02:00
drm_edid.c drm/edid: Add missing interlaced flag to 576i@100 modes. 2014-10-01 11:36:20 +02:00
drm_edid_load.c
drm_encoder_slave.c
drm_fb_cma_helper.c
drm_fb_helper.c drm: Remove compiler BUG_ON() test 2014-11-04 09:47:45 +01:00
drm_flip_work.c drm: flip-work: change drm_flip_work_init prototype 2014-11-15 09:29:14 +10:00
drm_fops.c drm: Implement O_NONBLOCK support on /dev/dri/cardN 2014-10-08 15:07:07 +02:00
drm_gem.c drm: Sanitize DRM_IOCTL_MODE_CREATE_DUMB input 2014-11-15 09:50:21 +10:00
drm_gem_cma_helper.c drm/cma: Remove call to drm_gem_free_mmap_offset() 2014-11-13 13:27:33 +01:00
drm_global.c
drm_hashtab.c
drm_info.c drm: Extract <drm/drm_gem.h> 2014-09-24 11:43:41 +10:00
drm_internal.h drm: Move internal debugfs functions to drm_internal.h 2014-09-24 11:43:35 +10:00
drm_ioc32.c
drm_ioctl.c drm: Purge ioctl forward declarations from drmP.h 2014-09-12 15:27:47 +02:00
drm_irq.c drm/irq: BUG_ON() -> WARN_ON() 2014-11-20 11:33:51 +10:00
drm_legacy.h drm: Create drm legacy driver header 2014-09-12 11:08:55 +02:00
drm_lock.c drm: unexport drm_global_mutex 2014-09-12 11:19:47 +02:00
drm_memory.c drm: Move drm_memory.c map support declarations to <drm/drm_legacy.h> 2014-09-12 15:28:12 +02:00
drm_mipi_dsi.c drm/dsi: Do not require .owner field to be set 2014-11-13 13:56:17 +01:00
drm_mm.c
drm_modes.c gpu:drm: Fix typo in Documentation/DocBook/drm.xml 2014-10-21 10:55:33 +02:00
drm_modeset_lock.c drm: Per-plane locking 2014-11-12 17:56:12 +10:00
drm_of.c
drm_panel.c
drm_pci.c drm: Move legacy buffer structures to <drm/drm_legacy.h> 2014-09-12 15:28:12 +02:00
drm_plane_helper.c Merge remote-tracking branch 'airlied/drm-next' into HEAD 2014-11-10 10:55:35 +01:00
drm_platform.c drm: Goody bye, drm_bus! 2014-09-10 17:43:10 +10:00
drm_prime.c drm: Miscellaneous fixes for v3.19-rc1 2014-11-15 09:37:20 +10:00
drm_probe_helper.c drm: Fix DRM_FORCE_ON_DIGITAL use 2014-11-04 09:45:04 +01:00
drm_rect.c
drm_scatter.c drm: Move sg functions into drm_legacy.h 2014-09-12 11:08:54 +02:00
drm_sysfs.c drm: Move piles of functions from drmP.h to drm_internal.h 2014-09-12 11:16:29 +02:00
drm_trace.h
drm_trace_points.c
drm_vm.c drm: Move drm_vm_open_locked into drm_internal.h 2014-09-24 11:43:20 +10:00
drm_vma_manager.c
Kconfig drm: merge drm_usb into udl 2014-09-10 17:43:27 +10:00
Makefile drm: Add atomic/plane helpers 2014-11-05 18:07:01 +01:00