[Intel-gfx] [PATCH] drm/i915: disable set/get_tiling ioctl on gen12+

Jason Ekstrand jason at jlekstrand.net
Wed Oct 30 19:30:24 UTC 2019


While I'm generally a fan of this change, we've been talking on IRC a bit
today and, apparently, the X server hasn't actually had a release where
modifiers have been enabled by default so this is causing problems.  Adam &
Daniel, is there something that's preventing us from enabling it by
default?  This is kind-of important these days.

--Jason


On Tue, Aug 20, 2019 at 12:06 PM Daniel Vetter <daniel.vetter at ffwll.ch>
wrote:

> The cpu (de)tiler hw is gone, this stopped being useful. Plus it never
> supported any of the fancy new tiling formats, which means userspace
> also stopped using the magic side-channel this provides.
>
> This would totally break a lot of the igts, but they're already broken
> for the same reasons as userspace on gen12 would be.
>
> Cc: Kenneth Graunke <kenneth at whitecape.org>
> Cc: Jason Ekstrand <jason at jlekstrand.net>
> Cc: Chris Wilson <chris at chris-wilson.co.uk>
> Cc: Lucas De Marchi <lucas.demarchi at intel.com>
> Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>
> ---
>  drivers/gpu/drm/i915/gem/i915_gem_tiling.c | 8 ++++++++
>  1 file changed, 8 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/gem/i915_gem_tiling.c
> b/drivers/gpu/drm/i915/gem/i915_gem_tiling.c
> index ca0c2f451742..2ee96f27a294 100644
> --- a/drivers/gpu/drm/i915/gem/i915_gem_tiling.c
> +++ b/drivers/gpu/drm/i915/gem/i915_gem_tiling.c
> @@ -313,10 +313,15 @@ int
>  i915_gem_set_tiling_ioctl(struct drm_device *dev, void *data,
>                           struct drm_file *file)
>  {
> +       struct drm_i915_private *dev_priv = to_i915(dev);
>         struct drm_i915_gem_set_tiling *args = data;
>         struct drm_i915_gem_object *obj;
>         int err;
>
> +       /* there is no cpu (de)tiling in the hw anymore on gen12+ */
> +       if (INTEL_GEN(dev_priv) >= 12)
> +               return -EOPNOTSUPP;
> +
>         obj = i915_gem_object_lookup(file, args->handle);
>         if (!obj)
>                 return -ENOENT;
> @@ -402,6 +407,9 @@ i915_gem_get_tiling_ioctl(struct drm_device *dev, void
> *data,
>         struct drm_i915_gem_object *obj;
>         int err = -ENOENT;
>
> +       if (INTEL_GEN(dev_priv) >= 12)
> +               return -EOPNOTSUPP;
> +
>         rcu_read_lock();
>         obj = i915_gem_object_lookup_rcu(file, args->handle);
>         if (obj) {
> --
> 2.23.0.rc1
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/intel-gfx/attachments/20191030/dd68b47b/attachment.html>


More information about the Intel-gfx mailing list