drm/i915: Silence allocation failure during sg_trim()
authorChris Wilson <chris@chris-wilson.co.uk>
Fri, 23 Dec 2016 14:57:58 +0000 (14:57 +0000)
committerJani Nikula <jani.nikula@intel.com>
Tue, 3 Jan 2017 09:41:48 +0000 (11:41 +0200)
As trimming the sg table is merely an optimisation that gracefully fails
if we cannot allocate a new table, we do not need to report the failure
either.

Fixes: 0c40ce130e38 ("drm/i915: Trim the object sg table")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20161223145804.6605-4-chris@chris-wilson.co.uk
(cherry picked from commit 8bfc478fa455b4908f745df368355b415460c60e)
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
drivers/gpu/drm/i915/i915_gem.c

index 30a1322c867757786cf6e861d5bd5b6372549205..5d146f9f4aad505ef0f591a9c84e99e191ae2290 100644 (file)
@@ -2324,7 +2324,7 @@ static void i915_sg_trim(struct sg_table *orig_st)
        if (orig_st->nents == orig_st->orig_nents)
                return;
 
-       if (sg_alloc_table(&new_st, orig_st->nents, GFP_KERNEL))
+       if (sg_alloc_table(&new_st, orig_st->nents, GFP_KERNEL | __GFP_NOWARN))
                return;
 
        new_sg = new_st.sgl;