Hi all, After merging the tip tree, today's linux-next build (x86_64 allmodconfig) failed like this: drivers/gpu/drm/i915/gt/intel_gt_pm.c: In function 'intel_gt_resume': drivers/gpu/drm/i915/gt/intel_gt_pm.c:183:54: error: macro "mutex_release" passed 3 arguments, but takes just 2 183 | mutex_release(&ce->pin_mutex.dep_map, 0, _THIS_IP_); | ^ In file included from include/linux/spinlock_types.h:18, from include/linux/spinlock.h:83, from include/linux/mmzone.h:8, from include/linux/gfp.h:6, from include/linux/slab.h:15, from include/linux/io-mapping.h:10, from drivers/gpu/drm/i915/i915_drv.h:36, from drivers/gpu/drm/i915/gt/intel_gt_pm.c:7: include/linux/lockdep.h:605: note: macro "mutex_release" defined here 605 | #define mutex_release(l, i) lock_release(l, i) | drivers/gpu/drm/i915/gt/intel_lrc.c: In function '__context_pin_release': drivers/gpu/drm/i915/gt/intel_lrc.c:245:51: error: macro "mutex_release" passed 3 arguments, but takes just 2 245 | mutex_release(&ce->pin_mutex.dep_map, 0, _RET_IP_); | ^ In file included from include/linux/hardirq.h:6, from include/linux/interrupt.h:11, from drivers/gpu/drm/i915/gt/intel_lrc.c:134: include/linux/lockdep.h:605: note: macro "mutex_release" defined here 605 | #define mutex_release(l, i) lock_release(l, i) | Caused by commit 5facae4f3549 ("locking/lockdep: Remove unused @nested argument from lock_release()") interacting with commits dffa8feb3084 ("drm/i915/perf: Assert locking for i915_init_oa_perf_state()") fcde8c7eea60 ("drm/i915/selftests: Exercise potential false lite-restore") b1e3177bd1d8 ("drm/i915: Coordinate i915_active with its own mutex") from the drm tree. I added the following merge fix patch for today: From: Stephen Rothwell Date: Thu, 10 Oct 2019 13:08:43 +1100 Subject: [PATCH] drm/i915: update for mutex_release API change Signed-off-by: Stephen Rothwell --- drivers/gpu/drm/i915/gt/intel_gt_pm.c | 2 +- drivers/gpu/drm/i915/gt/intel_lrc.c | 2 +- drivers/gpu/drm/i915/i915_active.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/i915/gt/intel_gt_pm.c b/drivers/gpu/drm/i915/gt/intel_gt_pm.c index b52e2ba3d092..d195e05a701f 100644 --- a/drivers/gpu/drm/i915/gt/intel_gt_pm.c +++ b/drivers/gpu/drm/i915/gt/intel_gt_pm.c @@ -180,7 +180,7 @@ int intel_gt_resume(struct intel_gt *gt) GEM_BUG_ON(!intel_context_is_pinned(ce)); mutex_acquire(&ce->pin_mutex.dep_map, 0, 0, _THIS_IP_); ce->ops->reset(ce); - mutex_release(&ce->pin_mutex.dep_map, 0, _THIS_IP_); + mutex_release(&ce->pin_mutex.dep_map, _THIS_IP_); } engine->serial++; /* kernel context lost */ diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c b/drivers/gpu/drm/i915/gt/intel_lrc.c index a2155d6bcdd2..aa61b0101bf8 100644 --- a/drivers/gpu/drm/i915/gt/intel_lrc.c +++ b/drivers/gpu/drm/i915/gt/intel_lrc.c @@ -242,7 +242,7 @@ static void __context_pin_acquire(struct intel_context *ce) static void __context_pin_release(struct intel_context *ce) { - mutex_release(&ce->pin_mutex.dep_map, 0, _RET_IP_); + mutex_release(&ce->pin_mutex.dep_map, _RET_IP_); } static void mark_eio(struct i915_request *rq) diff --git a/drivers/gpu/drm/i915/i915_active.c b/drivers/gpu/drm/i915/i915_active.c index aa37c07004b9..a47387174434 100644 --- a/drivers/gpu/drm/i915/i915_active.c +++ b/drivers/gpu/drm/i915/i915_active.c @@ -385,7 +385,7 @@ void i915_active_set_exclusive(struct i915_active *ref, struct dma_fence *f) mutex_acquire(&ref->mutex.dep_map, 0, 0, _THIS_IP_); if (!__i915_active_fence_set(&ref->excl, f)) atomic_inc(&ref->count); - mutex_release(&ref->mutex.dep_map, 0, _THIS_IP_); + mutex_release(&ref->mutex.dep_map, _THIS_IP_); } bool i915_active_acquire_if_busy(struct i915_active *ref) -- 2.23.0 -- Cheers, Stephen Rothwell