mirror of https://gitee.com/openkylin/linux.git
drm/i915: Mark up potential allocation paths within i915_sw_fence as might_sleep
As kmalloc is allowed to block (if given the right flags), mark up the two i915_sw_fence routines that may call kmalloc as potential sleeping routines. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20171212180652.22061-1-chris@chris-wilson.co.uk
This commit is contained in:
parent
d7dc4131eb
commit
e30a7581bf
|
@ -303,6 +303,7 @@ static int __i915_sw_fence_await_sw_fence(struct i915_sw_fence *fence,
|
||||||
int pending;
|
int pending;
|
||||||
|
|
||||||
debug_fence_assert(fence);
|
debug_fence_assert(fence);
|
||||||
|
might_sleep_if(gfpflags_allow_blocking(gfp));
|
||||||
|
|
||||||
if (i915_sw_fence_done(signaler))
|
if (i915_sw_fence_done(signaler))
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -419,6 +420,7 @@ int i915_sw_fence_await_dma_fence(struct i915_sw_fence *fence,
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
debug_fence_assert(fence);
|
debug_fence_assert(fence);
|
||||||
|
might_sleep_if(gfpflags_allow_blocking(gfp));
|
||||||
|
|
||||||
if (dma_fence_is_signaled(dma))
|
if (dma_fence_is_signaled(dma))
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -465,6 +467,7 @@ int i915_sw_fence_await_reservation(struct i915_sw_fence *fence,
|
||||||
int ret = 0, pending;
|
int ret = 0, pending;
|
||||||
|
|
||||||
debug_fence_assert(fence);
|
debug_fence_assert(fence);
|
||||||
|
might_sleep_if(gfpflags_allow_blocking(gfp));
|
||||||
|
|
||||||
if (write) {
|
if (write) {
|
||||||
struct dma_fence **shared;
|
struct dma_fence **shared;
|
||||||
|
|
Loading…
Reference in New Issue