From: Matthew Auld <matthew.william.auld@gmail.com>
To: Jason Ekstrand <jason@jlekstrand.net>
Cc: Intel Graphics Development <intel-gfx@lists.freedesktop.org>,
ML dri-devel <dri-devel@lists.freedesktop.org>
Subject: Re: [Intel-gfx] [PATCH 5/8] drm/i915/gem/ttm: Only call __i915_gem_object_set_pages if needed
Date: Mon, 26 Jul 2021 09:08:34 +0100 [thread overview]
Message-ID: <CAM0jSHOk7hiWiprdg3z_BcogpeyyaSQDqp=a8P9uJVnwLBGFHw@mail.gmail.com> (raw)
In-Reply-To: <20210723172142.3273510-6-jason@jlekstrand.net>
On Fri, 23 Jul 2021 at 18:22, Jason Ekstrand <jason@jlekstrand.net> wrote:
>
> __i915_ttm_get_pages does two things. First, it calls ttm_bo_validate()
> to check the given placement and migrate the BO if needed. Then, it
> updates the GEM object to match, in case the object was migrated. If
> no migration occured, however, we might still have pages on the GEM
> object in which case we don't need to fetch them from TTM and call
> __i915_gem_object_set_pages. This hasn't been a problem before because
> the primary user of __i915_ttm_get_pages is __i915_gem_object_get_pages
> which only calls it if the GEM object doesn't have pages.
>
> However, i915_ttm_migrate also uses __i915_ttm_get_pages to do the
> migration so this meant it was unsafe to call on an already populated
> object. This patch checks i915_gem_object_has_pages() before trying to
> __i915_gem_object_set_pages so i915_ttm_migrate is safe to call, even on
> populated objects.
>
> Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2021-07-26 8:09 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-07-23 17:21 [Intel-gfx] [PATCH 0/8] drm/i915: Migrate memory to SMEM when imported cross-device (v8) Jason Ekstrand
2021-07-23 17:21 ` [Intel-gfx] [PATCH 1/8] drm/i915/gem: Check object_can_migrate from object_migrate Jason Ekstrand
2021-07-23 17:21 ` [Intel-gfx] [PATCH 2/8] drm/i915/gem: Refactor placement setup for i915_gem_object_create* (v2) Jason Ekstrand
2021-07-23 17:21 ` [Intel-gfx] [PATCH 3/8] drm/i915/gem: Call i915_gem_flush_free_objects() in i915_gem_dumb_create() Jason Ekstrand
2021-07-23 17:21 ` [Intel-gfx] [PATCH 4/8] drm/i915/gem: Unify user object creation (v3) Jason Ekstrand
2021-07-23 17:21 ` [Intel-gfx] [PATCH 5/8] drm/i915/gem/ttm: Only call __i915_gem_object_set_pages if needed Jason Ekstrand
2021-07-26 8:08 ` Matthew Auld [this message]
2021-07-23 17:21 ` [Intel-gfx] [PATCH 6/8] drm/i915/gem: Always call obj->ops->migrate unless can_migrate fails Jason Ekstrand
2021-07-26 8:10 ` Matthew Auld
2021-07-23 17:21 ` [Intel-gfx] [PATCH 7/8] drm/i915/gem: Correct the locking and pin pattern for dma-buf (v8) Jason Ekstrand
2021-09-01 10:18 ` Thomas Hellström (Intel)
2021-07-23 17:21 ` [Intel-gfx] [PATCH 8/8] drm/i915/gem: Migrate to system at dma-buf attach time (v7) Jason Ekstrand
2021-07-23 20:47 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Migrate memory to SMEM when imported cross-device (rev4) Patchwork
2021-07-23 20:48 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork
2021-07-23 21:17 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2021-07-24 8:03 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
2021-07-26 8:12 ` [Intel-gfx] [PATCH 0/8] drm/i915: Migrate memory to SMEM when imported cross-device (v8) Matthew Auld
2021-07-26 15:11 ` Jason Ekstrand
2021-07-26 15:28 ` Matthew Auld
2021-07-26 15:32 ` Jason Ekstrand
2021-07-26 15:56 ` Matthew Auld
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='CAM0jSHOk7hiWiprdg3z_BcogpeyyaSQDqp=a8P9uJVnwLBGFHw@mail.gmail.com' \
--to=matthew.william.auld@gmail.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=intel-gfx@lists.freedesktop.org \
--cc=jason@jlekstrand.net \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).