]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915: Disable pread/pwrite ioctl's for future platforms (v3)
authorAshutosh Dixit <ashutosh.dixit@intel.com>
Wed, 17 Mar 2021 23:40:12 +0000 (18:40 -0500)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Thu, 18 Mar 2021 13:26:25 +0000 (14:26 +0100)
commitbe59e6de1d791485e0578fcde84e1cef7582a8d2
tree681d831f7007b7b859bcfdacc88e2fe192a442cf
parente0ef27bda5b3a757d1fbfee794caa2baa077c24f
drm/i915: Disable pread/pwrite ioctl's for future platforms (v3)

The rationale for this change is roughly as follows:

 1. The functionality can be done entirely in userspace with a
    combination of mmap + memcpy

 2. The only reason anyone in userspace is still using it is because
    someone implemented bo_subdata that way in libdrm ages ago and
    they're all too lazy to write the 5 lines of code to do a map.

 3. This falls cleanly into the category of things which will only get
    more painful with local memory support.

These ioctls aren't used much anymore by "real" userspace drivers.
Vulkan has never used them and neither has the iris GL driver.  The old
i965 GL driver does use PWRITE for glBufferSubData but it only supports
up through Gen11; Gen12 was never enabled in i965.  The compute driver
has never used PREAD/PWRITE.  The only remaining user is the media
driver which uses it exactly twice and they're easily removed [1] so
expecting them to drop it going forward is reasonable.

IGT changes which handle this kernel change have also been submitted [2].

[1] https://github.com/intel/media-driver/pull/1160
[2] https://patchwork.freedesktop.org/series/81384/

v2 (Jason Ekstrand):
 - Improved commit message with the status of all usermode drivers
 - A more future-proof platform check

v3 (Jason Ekstrand):
 - Drop the HAS_LMEM checks as they're already covered by the version
   checks

Signed-off-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/msgid/20210317234014.2271006-4-jason@jlekstrand.net
drivers/gpu/drm/i915/i915_gem.c