linux-next: build failure after merge of the tip tree

From: Stephen Rothwell
Date: Wed Oct 09 2019 - 22:21:39 EST


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 <sfr@xxxxxxxxxxxxxxxx>
Date: Thu, 10 Oct 2019 13:08:43 +1100
Subject: [PATCH] drm/i915: update for mutex_release API change

Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
---
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

Attachment: pgpGzFZankayp.pgp
Description: OpenPGP digital signature