On Wed, 2021-12-01 at 16:30 -0800, Lucas De Marchi wrote: > PAT can be disabled on boot with "nopat" in the command line. Replace > one x86-ism with another, which is slightly more correct to prepare for > supporting other architectures. Reviewed-by: José Roberto de Souza <jose.souza@xxxxxxxxx> > > Cc: Matt Roper <matthew.d.roper@xxxxxxxxx> > Signed-off-by: Lucas De Marchi <lucas.demarchi@xxxxxxxxx> > --- > drivers/gpu/drm/i915/gem/i915_gem_mman.c | 8 ++++---- > drivers/gpu/drm/i915/gem/i915_gem_pages.c | 3 +-- > 2 files changed, 5 insertions(+), 6 deletions(-) > > diff --git a/drivers/gpu/drm/i915/gem/i915_gem_mman.c b/drivers/gpu/drm/i915/gem/i915_gem_mman.c > index 65fc6ff5f59d..c0c509e5c0ae 100644 > --- a/drivers/gpu/drm/i915/gem/i915_gem_mman.c > +++ b/drivers/gpu/drm/i915/gem/i915_gem_mman.c > @@ -72,7 +72,7 @@ i915_gem_mmap_ioctl(struct drm_device *dev, void *data, > if (args->flags & ~(I915_MMAP_WC)) > return -EINVAL; > > - if (args->flags & I915_MMAP_WC && !boot_cpu_has(X86_FEATURE_PAT)) > + if (args->flags & I915_MMAP_WC && !pat_enabled()) > return -ENODEV; > > obj = i915_gem_object_lookup(file, args->handle); > @@ -736,7 +736,7 @@ i915_gem_dumb_mmap_offset(struct drm_file *file, > > if (HAS_LMEM(to_i915(dev))) > mmap_type = I915_MMAP_TYPE_FIXED; > - else if (boot_cpu_has(X86_FEATURE_PAT)) > + else if (pat_enabled()) > mmap_type = I915_MMAP_TYPE_WC; > else if (!i915_ggtt_has_aperture(&to_i915(dev)->ggtt)) > return -ENODEV; > @@ -792,7 +792,7 @@ i915_gem_mmap_offset_ioctl(struct drm_device *dev, void *data, > break; > > case I915_MMAP_OFFSET_WC: > - if (!boot_cpu_has(X86_FEATURE_PAT)) > + if (!pat_enabled()) > return -ENODEV; > type = I915_MMAP_TYPE_WC; > break; > @@ -802,7 +802,7 @@ i915_gem_mmap_offset_ioctl(struct drm_device *dev, void *data, > break; > > case I915_MMAP_OFFSET_UC: > - if (!boot_cpu_has(X86_FEATURE_PAT)) > + if (!pat_enabled()) > return -ENODEV; > type = I915_MMAP_TYPE_UC; > break; > diff --git a/drivers/gpu/drm/i915/gem/i915_gem_pages.c b/drivers/gpu/drm/i915/gem/i915_gem_pages.c > index 49c6e55c68ce..89b70f5cde7a 100644 > --- a/drivers/gpu/drm/i915/gem/i915_gem_pages.c > +++ b/drivers/gpu/drm/i915/gem/i915_gem_pages.c > @@ -424,8 +424,7 @@ void *i915_gem_object_pin_map(struct drm_i915_gem_object *obj, > goto err_unpin; > } > > - if (GEM_WARN_ON(type == I915_MAP_WC && > - !static_cpu_has(X86_FEATURE_PAT))) > + if (GEM_WARN_ON(type == I915_MAP_WC && !pat_enabled())) > ptr = ERR_PTR(-ENODEV); > else if (i915_gem_object_has_struct_page(obj)) > ptr = i915_gem_object_map_page(obj, type);