Re: [RFC 06/38] drm/i915: fix gtt_total_entries()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Oct 07, 2014 at 06:11:02PM +0100, Michel Thierry wrote:
> From: Ben Widawsky <benjamin.widawsky@xxxxxxxxx>
>
> It's useful to have it not as a macro for some upcoming work. Generally
> since we try to avoid macros anyway, I think it doesn't hurt to put this
> as its own patch.
>
> Signed-off-by: Ben Widawsky <ben@xxxxxxxxxxxx>
> Signed-off-by: Michel Thierry <michel.thierry@xxxxxxxxx>
> ---
>  drivers/gpu/drm/i915/i915_gem_gtt.c    | 4 ++--
>  drivers/gpu/drm/i915/i915_gem_gtt.h    | 8 ++++++--
>  drivers/gpu/drm/i915/i915_gem_stolen.c | 2 +-
>  3 files changed, 9 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c b/drivers/gpu/drm/i915/i915_gem_gtt.c
> index ac0197f..f677deb 100644
> --- a/drivers/gpu/drm/i915/i915_gem_gtt.c
> +++ b/drivers/gpu/drm/i915/i915_gem_gtt.c
> @@ -1489,7 +1489,7 @@ static void gen8_ggtt_clear_range(struct i915_address_space *vm,
>   unsigned num_entries = length >> PAGE_SHIFT;
>   gen8_gtt_pte_t scratch_pte, __iomem *gtt_base =
>   (gen8_gtt_pte_t __iomem *) dev_priv->gtt.gsm + first_entry;
> - const int max_entries = gtt_total_entries(dev_priv->gtt) - first_entry;
> + const int max_entries = gtt_total_entries(&dev_priv->gtt) - first_entry;
>   int i;
>
>   if (WARN(num_entries > max_entries,
> @@ -1515,7 +1515,7 @@ static void gen6_ggtt_clear_range(struct i915_address_space *vm,
>   unsigned num_entries = length >> PAGE_SHIFT;
>   gen6_gtt_pte_t scratch_pte, __iomem *gtt_base =
>   (gen6_gtt_pte_t __iomem *) dev_priv->gtt.gsm + first_entry;
> - const int max_entries = gtt_total_entries(dev_priv->gtt) - first_entry;
> + const int max_entries = gtt_total_entries(&dev_priv->gtt) - first_entry;
>   int i;
>
>   if (WARN(num_entries > max_entries,
> diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.h b/drivers/gpu/drm/i915/i915_gem_gtt.h
> index 5fd7fa9..98427ce 100644
> --- a/drivers/gpu/drm/i915/i915_gem_gtt.h
> +++ b/drivers/gpu/drm/i915/i915_gem_gtt.h
> @@ -40,8 +40,6 @@ typedef uint32_t gen6_gtt_pte_t;
>  typedef uint64_t gen8_gtt_pte_t;
>  typedef gen8_gtt_pte_t gen8_ppgtt_pde_t;
>
> -#define gtt_total_entries(gtt) ((gtt).base.total >> PAGE_SHIFT)
> -
>  #define I915_PPGTT_PT_ENTRIES (PAGE_SIZE / sizeof(gen6_gtt_pte_t))
>  /* gen6-hsw has bit 11-4 for physical addr bit 39-32 */
>  #define GEN6_GTT_ADDR_ENCODE(addr) ((addr) | (((addr) >> 28) & 0xff0))
> @@ -284,6 +282,12 @@ int i915_ppgtt_init_hw(struct drm_device *dev);
>  void i915_ppgtt_release(struct kref *kref);
>  struct i915_hw_ppgtt *i915_ppgtt_create(struct drm_device *dev,
>   struct drm_i915_file_private *fpriv);
> +
> +static inline size_t gtt_total_entries(struct i915_gtt *gtt)

Namespacing of non-file-private functions missing. Might still have some
offenders right around, so pleas fix those up too.
-Daniel

> +{
> + return gtt->base.total >> PAGE_SHIFT;
> +}
> +
>  static inline void i915_ppgtt_get(struct i915_hw_ppgtt *ppgtt)
>  {
>   if (ppgtt)
> diff --git a/drivers/gpu/drm/i915/i915_gem_stolen.c b/drivers/gpu/drm/i915/i915_gem_stolen.c
> index 85fda6b..4e1b22e 100644
> --- a/drivers/gpu/drm/i915/i915_gem_stolen.c
> +++ b/drivers/gpu/drm/i915/i915_gem_stolen.c
> @@ -90,7 +90,7 @@ static unsigned long i915_stolen_to_physical(struct drm_device *dev)
>   (gtt_start & PGTBL_ADDRESS_HI_MASK) << 28;
>   else
>   gtt_start &= PGTBL_ADDRESS_LO_MASK;
> - gtt_end = gtt_start + gtt_total_entries(dev_priv->gtt) * 4;
> + gtt_end = gtt_start + gtt_total_entries(&dev_priv->gtt) * 4;
>
>   if (gtt_start >= stolen[0].start && gtt_start < stolen[0].end)
>   stolen[0].end = gtt_start;
> --
> 2.0.3
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/intel-gfx




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux