All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chris Wilson <chris@chris-wilson.co.uk>
To: Matthew Auld <matthew.auld@intel.com>, intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH 08/21] drm/i915: align the vma start to the largest gtt page size
Date: Fri, 06 Oct 2017 23:10:16 +0100	[thread overview]
Message-ID: <150732781667.10438.10123092706858406859@mail.alporthouse.com> (raw)
In-Reply-To: <20171006145041.21673-9-matthew.auld@intel.com>

Quoting Matthew Auld (2017-10-06 15:50:28)
> For the 48b PPGTT try to align the vma start address to the required
> page size boundary to guarantee we use said page size in the gtt. If we
> are dealing with multiple page sizes, we can't guarantee anything and
> just align to the largest. For soft pinning and objects which need to be
> tightly packed into the lower 32bits we don't force any alignment.
> 
> v2: various improvements suggested by Chris
> 
> v3: use set_pages and better placement of page_sizes
> 
> v4: prefer upper_32_bits()
> 
> v5: assign vma->page_sizes = vma->obj->page_sizes directly
>     prefer sizeof(vma->page_sizes)
> 
> Signed-off-by: Matthew Auld <matthew.auld@intel.com>
> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> Cc: Chris Wilson <chris@chris-wilson.co.uk>
> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
> Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> ---
> diff --git a/drivers/gpu/drm/i915/i915_vma.c b/drivers/gpu/drm/i915/i915_vma.c
> index 49bf49571e47..5067eab27829 100644
> --- a/drivers/gpu/drm/i915/i915_vma.c
> +++ b/drivers/gpu/drm/i915/i915_vma.c
> @@ -493,6 +493,19 @@ i915_vma_insert(struct i915_vma *vma, u64 size, u64 alignment, u64 flags)
>                 if (ret)
>                         goto err_clear;
>         } else {
> +               /*
> +                * We only support huge gtt pages through the 48b PPGTT,
> +                * however we also don't want to force any alignment for
> +                * objects which need to be tightly packed into the low 32bits.
> +                */
> +               if (upper_32_bits(end) &&

Bah, this assumed PIN_ZONE_4G behaviour and forgot about 4G GGTT. :|

Insert a sly
		      !i915_vma_is_ggtt(vma) &&
here. Or use upper_32_bits(end-1). Hmm. Atm we have the pervasive
assumption that GGTT is capped at 4G, so we could use end-1 with a
comment.

The theory about not wanting to waste space in the low 4G is theory no
more!
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

  reply	other threads:[~2017-10-06 22:10 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-06 14:50 [PATCH 00/21] huge gtt pages Matthew Auld
2017-10-06 14:50 ` [PATCH 01/21] mm/shmem: introduce shmem_file_setup_with_mnt Matthew Auld
2017-10-06 14:50   ` Matthew Auld
2017-10-06 14:50 ` [PATCH 02/21] drm/i915: introduce simple gemfs Matthew Auld
2017-10-06 14:50   ` Matthew Auld
2017-10-06 14:50 ` [PATCH 03/21] drm/i915/gemfs: enable THP Matthew Auld
2017-10-06 14:50 ` [PATCH 04/21] drm/i915: introduce page_sizes field to dev_info Matthew Auld
2017-10-06 14:50 ` [PATCH 05/21] drm/i915: push set_pages down to the callers Matthew Auld
2017-10-06 14:50 ` [PATCH 06/21] drm/i915: introduce page_size members Matthew Auld
2017-10-09 10:06   ` Joonas Lahtinen
2017-10-06 14:50 ` [PATCH 07/21] drm/i915: introduce vm set_pages/clear_pages Matthew Auld
2017-10-06 14:50 ` [PATCH 08/21] drm/i915: align the vma start to the largest gtt page size Matthew Auld
2017-10-06 22:10   ` Chris Wilson [this message]
2017-10-06 14:50 ` [PATCH 09/21] drm/i915: align 64K objects to 2M Matthew Auld
2017-10-06 14:50 ` [PATCH 10/21] drm/i915: enable IPS bit for 64K pages Matthew Auld
2017-10-06 14:50 ` [PATCH 11/21] drm/i915: disable GTT cache for 2M pages Matthew Auld
2017-10-06 14:50 ` [PATCH 12/21] drm/i915: support 2M pages for the 48b PPGTT Matthew Auld
2017-10-06 14:50 ` [PATCH 13/21] drm/i915: add support for 64K scratch page Matthew Auld
2017-10-06 14:50 ` [PATCH 14/21] drm/i915: support 64K pages for the 48b PPGTT Matthew Auld
2017-10-06 14:50 ` [PATCH 15/21] drm/i915: accurate page size tracking for the ppgtt Matthew Auld
2017-10-06 14:50 ` [PATCH 16/21] drm/i915/debugfs: include some gtt page size metrics Matthew Auld
2017-10-06 14:50 ` [PATCH 17/21] drm/i915/selftests: huge page tests Matthew Auld
2017-10-06 14:50 ` [PATCH 18/21] drm/i915/selftests: mix huge pages Matthew Auld
2017-10-06 14:50 ` [PATCH 19/21] drm/i915: disable platform support for vGPU huge gtt pages Matthew Auld
2017-10-06 14:50 ` [PATCH 20/21] drm/i915: enable platform support for 64K pages Matthew Auld
2017-10-06 14:50 ` [PATCH 21/21] drm/i915: enable platform support for 2M pages Matthew Auld
2017-10-06 15:50 ` ✓ Fi.CI.BAT: success for huge gtt pages (rev13) Patchwork
2017-10-06 21:29 ` ✓ Fi.CI.IGT: " Patchwork
2017-10-06 21:44   ` Chris Wilson
  -- strict thread matches above, loose matches on Subject: below --
2017-10-05 15:18 [PATCH 00/21] huge gtt pages Matthew Auld
2017-10-05 15:19 ` [PATCH 08/21] drm/i915: align the vma start to the largest gtt page size Matthew Auld
2017-09-29 16:10 [PATCH 00/21] huge gtt pages Matthew Auld
2017-09-29 16:10 ` [PATCH 08/21] drm/i915: align the vma start to the largest gtt page size Matthew Auld
2017-10-02 12:16   ` Joonas Lahtinen
2017-09-22 17:32 [PATCH 00/21] huge gtt pages Matthew Auld
2017-09-22 17:32 ` [PATCH 08/21] drm/i915: align the vma start to the largest gtt page size Matthew Auld
2017-09-23  8:46   ` Chris Wilson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=150732781667.10438.10123092706858406859@mail.alporthouse.com \
    --to=chris@chris-wilson.co.uk \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=matthew.auld@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.