From: Matthew Auld <matthew.auld@intel.com>
To: intel-gfx@lists.freedesktop.org
Subject: [PATCH] drm/i915: simplify bind_to_vm init code
Date: Fri, 18 Mar 2016 13:54:50 +0000 [thread overview]
Message-ID: <1458309290-15188-1-git-send-email-matthew.auld@intel.com> (raw)
No functional change, just makes the code easier to follow.
v2:
- Remove local fence_size variable
(Tvrtko Ursulin)
- Remove redundant NULL ggtt_view check
- Reuse size variable
v3:
(Chris Wilson)
- Keep start, end computation separate
- Simplify alignment
Signed-off-by: Matthew Auld <matthew.auld@intel.com>
---
drivers/gpu/drm/i915/i915_gem.c | 52 +++++++++++------------------------------
1 file changed, 13 insertions(+), 39 deletions(-)
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index f45856d..ffb802e 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -3465,48 +3465,23 @@ i915_gem_object_bind_to_vm(struct drm_i915_gem_object *obj,
{
struct drm_device *dev = obj->base.dev;
struct drm_i915_private *dev_priv = dev->dev_private;
- u32 fence_alignment, unfenced_alignment;
+ u32 min_alignment;
u32 search_flag, alloc_flag;
u64 start, end;
- u64 size, fence_size;
+ u64 size;
struct i915_vma *vma;
int ret;
- if (i915_is_ggtt(vm)) {
- u32 view_size;
-
- if (WARN_ON(!ggtt_view))
- return ERR_PTR(-EINVAL);
-
- view_size = i915_ggtt_view_size(obj, ggtt_view);
-
- fence_size = i915_gem_get_gtt_size(dev,
- view_size,
- obj->tiling_mode);
- fence_alignment = i915_gem_get_gtt_alignment(dev,
- view_size,
- obj->tiling_mode,
- true);
- unfenced_alignment = i915_gem_get_gtt_alignment(dev,
- view_size,
- obj->tiling_mode,
- false);
- size = flags & PIN_MAPPABLE ? fence_size : view_size;
- } else {
- fence_size = i915_gem_get_gtt_size(dev,
- obj->base.size,
- obj->tiling_mode);
- fence_alignment = i915_gem_get_gtt_alignment(dev,
- obj->base.size,
- obj->tiling_mode,
- true);
- unfenced_alignment =
- i915_gem_get_gtt_alignment(dev,
- obj->base.size,
+ if (i915_is_ggtt(vm))
+ size = i915_ggtt_view_size(obj, ggtt_view);
+ else
+ size = obj->base.size;
+
+ min_alignment = i915_gem_get_gtt_alignment(dev, size,
obj->tiling_mode,
- false);
- size = flags & PIN_MAPPABLE ? fence_size : obj->base.size;
- }
+ flags & PIN_MAPPABLE);
+ if (flags & PIN_MAPPABLE)
+ size = i915_gem_get_gtt_size(dev, size, obj->tiling_mode);
start = flags & PIN_OFFSET_BIAS ? flags & PIN_OFFSET_MASK : 0;
end = vm->total;
@@ -3516,9 +3491,8 @@ i915_gem_object_bind_to_vm(struct drm_i915_gem_object *obj,
end = min_t(u64, end, (1ULL << 32) - PAGE_SIZE);
if (alignment == 0)
- alignment = flags & PIN_MAPPABLE ? fence_alignment :
- unfenced_alignment;
- if (flags & PIN_MAPPABLE && alignment & (fence_alignment - 1)) {
+ alignment = min_alignment;
+ if (flags & PIN_MAPPABLE && alignment & (min_alignment - 1)) {
DRM_DEBUG("Invalid object (view type=%u) alignment requested %u\n",
ggtt_view ? ggtt_view->type : 0,
alignment);
--
2.4.3
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
next reply other threads:[~2016-03-18 13:55 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-18 13:54 Matthew Auld [this message]
2016-03-21 9:35 ` ✗ Fi.CI.BAT: failure for drm/i915: simplify bind_to_vm init code (rev3) Patchwork
2016-03-22 10:36 ` [PATCH] drm/i915: simplify bind_to_vm init code Matthew Auld
-- strict thread matches above, loose matches on Subject: below --
2016-03-18 10:46 Matthew Auld
2016-03-18 11:10 ` Tvrtko Ursulin
2016-03-18 11:26 ` Chris Wilson
2016-03-16 17:07 Matthew Auld
2016-03-17 10:00 ` Tvrtko Ursulin
2016-03-17 13:41 ` Matthew Auld
2016-03-17 13:53 ` Chris Wilson
2016-03-17 17:36 ` Tvrtko Ursulin
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=1458309290-15188-1-git-send-email-matthew.auld@intel.com \
--to=matthew.auld@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
/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