Message ID | 20190115221118.13304-1-chris@chris-wilson.co.uk (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/i915/userptr: Fix error handling of mutex_lock_killable() | expand |
Quoting Patchwork (2019-01-16 06:15:10) > #### Possible fixes #### > > * igt@gem_userptr_blits@map-fixed-invalidate-busy: > - shard-glk: INCOMPLETE [fdo#103359] / [k.org#198133] -> PASS +6 > > * igt@gem_userptr_blits@map-fixed-invalidate-busy-gup: > - shard-apl: INCOMPLETE [fdo#103927] -> PASS +6 > > * igt@gem_userptr_blits@map-fixed-invalidate-gup: > - shard-kbl: INCOMPLETE [fdo#103665] -> PASS +2 > > * igt@gem_userptr_blits@map-fixed-invalidate-overlap-gup: > - shard-iclb: INCOMPLETE -> PASS +5 > - shard-skl: INCOMPLETE -> PASS +1 > > * igt@gem_userptr_blits@sync-unmap-cycles: > - shard-snb: INCOMPLETE [fdo#105411] -> PASS +5 > - shard-hsw: INCOMPLETE [fdo#103540] -> PASS +3 Pushed with Matthew Auld's irc r-b. Thanks, and apologies for not waiting until CI managed a full run, -Chris
diff --git a/drivers/gpu/drm/i915/i915_gem_userptr.c b/drivers/gpu/drm/i915/i915_gem_userptr.c index 38e19a42e0f4..1d3f9a31ad61 100644 --- a/drivers/gpu/drm/i915/i915_gem_userptr.c +++ b/drivers/gpu/drm/i915/i915_gem_userptr.c @@ -150,7 +150,7 @@ userptr_mn_invalidate_range_start(struct mmu_notifier *_mn, switch (mutex_trylock_recursive(unlock)) { default: case MUTEX_TRYLOCK_FAILED: - if (!mutex_lock_killable_nested(unlock, I915_MM_SHRINKER)) { + if (mutex_lock_killable_nested(unlock, I915_MM_SHRINKER)) { i915_gem_object_put(obj); return -EINTR; }
mutex_lock_killable() returns -EINTR on failure, not the anticipate bool return like trylock. (Oh no, not again.) Fixes: 484d9a844d0d ("drm/i915/userptr: Avoid struct_mutex recursion for mmu_invalidate_range_start") Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> --- drivers/gpu/drm/i915/i915_gem_userptr.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)