[Intel-gfx] [PATCH] drm/i915: Remove redundant get_pages call
Dave Gordon
david.s.gordon at intel.com
Tue Dec 1 10:11:16 PST 2015
On 28/10/15 12:08, ankitprasad.r.sharma at intel.com wrote:
> From: Ankitprasad Sharma <ankitprasad.r.sharma at intel.com>
>
> A call to i915_gem_obj_ggtt_pin is being made after this, which again
> calls the get_pages function. Hence removing the redundant call to
> get_pages.
>
> Signed-off-by: Ankitprasad Sharma <ankitprasad.r.sharma at intel.com>
> ---
> drivers/gpu/drm/i915/i915_guc_submission.c | 5 -----
> 1 file changed, 5 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_guc_submission.c b/drivers/gpu/drm/i915/i915_guc_submission.c
> index 792d0b9..30237e2 100644
> --- a/drivers/gpu/drm/i915/i915_guc_submission.c
> +++ b/drivers/gpu/drm/i915/i915_guc_submission.c
> @@ -649,11 +649,6 @@ static struct drm_i915_gem_object *gem_allocate_guc_obj(struct drm_device *dev,
> if (!obj)
> return NULL;
>
> - if (i915_gem_object_get_pages(obj)) {
> - drm_gem_object_unreference(&obj->base);
> - return NULL;
> - }
> -
> if (i915_gem_obj_ggtt_pin(obj, PAGE_SIZE,
> PIN_OFFSET_BIAS | GUC_WOPCM_TOP)) {
> drm_gem_object_unreference(&obj->base);
I suppose it is technically redundant, but it's actually quite difficult
to verify that the call to i915_gem_obj_ggtt_pin() *will* actually take
the path that, *six levels deeper*, includes the call to
i915_gem_object_get_pages().
Is there any advantage to calling i915_gem_object_get_pages() later (or
later)? Does it improve/worsen the chances of hitting a failure path?
Handling an error from get_pages here is simple, whereas it looks like
backing out of a failure in the middle of (six levels of) ggtt_pin might
not be?
.Dave.
More information about the Intel-gfx
mailing list