On 28/06/2021 10:21, Thomas Hellström wrote:
Reinstate the mmap ioctl for all current integrated platforms.
The intention was really to have it disabled for discrete graphics
where we enforce a single mmap mode.

This fixes media on rkl/adl.

v2:
- Added a R-B.
- Fixed up the code comment a bit.
v3:
- Added an A-B.
- Point out in the commit message that there was an issue with media on
   rkl/adl.

Fixes: 35cbd91eb541 ("drm/i915: Disable mmap ioctl for gen12+")
Signed-off-by: Thomas Hellström <thomas.hellst...@linux.intel.com>
Reviewed-by: Matthew Auld <matthew.a...@intel.com>
Acked-by: Daniel Vetter <daniel.vet...@ffwll.ch>

I already pushed v2 of this last week with the following amended:

"This was reported to break ADL-P with the media stack, which was not the intention. Although longer term we do still plan to sunset this ioctl even for integrated, in favour of using mmap_offset instead."

---
  drivers/gpu/drm/i915/gem/i915_gem_mman.c | 7 ++++---
  1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/i915/gem/i915_gem_mman.c 
b/drivers/gpu/drm/i915/gem/i915_gem_mman.c
index 6497a2dbdab9..a90f796e85c0 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_mman.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_mman.c
@@ -62,10 +62,11 @@ i915_gem_mmap_ioctl(struct drm_device *dev, void *data,
        struct drm_i915_gem_object *obj;
        unsigned long addr;
- /* mmap ioctl is disallowed for all platforms after TGL-LP. This also
-        * covers all platforms with local memory.
+       /*
+        * mmap ioctl is disallowed for all discrete platforms,
+        * and for all platforms with GRAPHICS_VER > 12.
         */
-       if (GRAPHICS_VER(i915) >= 12 && !IS_TIGERLAKE(i915))
+       if (IS_DGFX(i915) || GRAPHICS_VER(i915) > 12)
                return -EOPNOTSUPP;
if (args->flags & ~(I915_MMAP_WC))

Reply via email to